From b4f90c98168cadbdf4865c12c611aa5d8aa8732e Mon Sep 17 00:00:00 2001 From: Jeremy Long Date: Sun, 1 Dec 2013 10:05:10 -0500 Subject: [PATCH] version 1.0.6 --- css/css/apache-maven-fluido-1.3.0.min.css | 9 + css/css/print.css | 23 + css/css/site.css | 1 + .../apidocs/allclasses-frame.html | 34 + .../apidocs/allclasses-noframe.html | 34 + .../apidocs/constant-values.html | 145 + .../apidocs/deprecated-list.html | 145 + .../apidocs/help-doc.html | 216 + .../apidocs/index-all.html | 277 + css/dependency-check-ant/apidocs/index.html | 37 + .../DependencyCheckTask.ReportFormats.html | 293 + .../taskdefs/DependencyCheckTask.html | 962 +++ .../DependencyCheckTask.ReportFormats.html | 166 + .../class-use/DependencyCheckTask.html | 143 + .../taskdefs/package-frame.html | 35 + .../taskdefs/package-summary.html | 188 + .../taskdefs/package-tree.html | 156 + .../dependencycheck/taskdefs/package-use.html | 157 + .../apidocs/overview-tree.html | 158 + css/dependency-check-ant/apidocs/package-list | 1 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes .../apidocs/stylesheet.css | 29 + css/dependency-check-ant/checkstyle.html | 278 + css/dependency-check-ant/checkstyle.rss | 303 + .../cobertura/css/help.css | 22 + .../cobertura/css/main.css | 131 + .../cobertura/css/sortabletable.css | 50 + .../cobertura/css/source-viewer.css | 73 + .../cobertura/css/tooltip.css | 49 + .../cobertura/frame-packages.html | 20 + ...es-org.owasp.dependencycheck.taskdefs.html | 23 + .../cobertura/frame-sourcefiles.html | 23 + ...ry-org.owasp.dependencycheck.taskdefs.html | 43 + .../cobertura/frame-summary.html | 30 + css/dependency-check-ant/cobertura/help.html | 31 + .../cobertura/images/blank.png | Bin 0 -> 144 bytes .../cobertura/images/downsimple.png | Bin 0 -> 201 bytes .../cobertura/images/upsimple.png | Bin 0 -> 201 bytes css/dependency-check-ant/cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + .../cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + ...ncycheck.taskdefs.DependencyCheckTask.html | 1061 ++++ css/dependency-check-ant/configuration.html | 315 + css/dependency-check-ant/cpd.html | 258 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + css/dependency-check-ant/css/print.css | 23 + css/dependency-check-ant/css/site.css | 1 + .../dependency-updates-report.html | 459 ++ css/dependency-check-ant/findbugs.html | 295 + .../images/accessories-text-editor.png | Bin 0 -> 746 bytes css/dependency-check-ant/images/add.gif | Bin 0 -> 397 bytes .../images/apache-maven-project-2.png | Bin 0 -> 33442 bytes .../images/application-certificate.png | Bin 0 -> 923 bytes .../images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes css/dependency-check-ant/images/fix.gif | Bin 0 -> 366 bytes .../images/icon_error_sml.gif | Bin 0 -> 633 bytes .../images/icon_help_sml.gif | Bin 0 -> 1072 bytes .../images/icon_info_sml.gif | Bin 0 -> 638 bytes .../images/icon_success_sml.gif | Bin 0 -> 604 bytes .../images/icon_warning_sml.gif | Bin 0 -> 625 bytes .../images/image-x-generic.png | Bin 0 -> 662 bytes .../images/internet-web-browser.png | Bin 0 -> 1017 bytes .../images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../images/network-server.png | Bin 0 -> 536 bytes .../images/package-x-generic.png | Bin 0 -> 717 bytes .../images/profiles/pre-release.png | Bin 0 -> 32607 bytes .../images/profiles/retired.png | Bin 0 -> 22003 bytes .../images/profiles/sandbox.png | Bin 0 -> 33010 bytes css/dependency-check-ant/images/remove.gif | Bin 0 -> 607 bytes css/dependency-check-ant/images/rss.png | Bin 0 -> 474 bytes css/dependency-check-ant/images/update.gif | Bin 0 -> 1090 bytes .../images/window-new.png | Bin 0 -> 583 bytes .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../img/glyphicons-halflings.png | Bin 0 -> 12799 bytes css/dependency-check-ant/index.html | 192 + css/dependency-check-ant/installation.html | 170 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + css/dependency-check-ant/license.html | 871 +++ .../plugin-updates-report.html | 856 +++ css/dependency-check-ant/pmd.html | 257 + css/dependency-check-ant/project-info.html | 207 + css/dependency-check-ant/project-reports.html | 297 + css/dependency-check-ant/project-summary.html | 239 + css/dependency-check-ant/surefire-report.html | 354 ++ css/dependency-check-ant/taglist.html | 265 + css/dependency-check-ant/usage.html | 188 + .../xref-test/allclasses-frame.html | 20 + css/dependency-check-ant/xref-test/index.html | 24 + .../taskdefs/DependencyCheckTaskTest.html | 137 + .../taskdefs/package-frame.html | 24 + .../taskdefs/package-summary.html | 67 + .../xref-test/overview-frame.html | 25 + .../xref-test/overview-summary.html | 64 + .../xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 23 + css/dependency-check-ant/xref/index.html | 24 + .../taskdefs/DependencyCheckTask.html | 607 ++ .../taskdefs/package-frame.html | 27 + .../taskdefs/package-summary.html | 72 + .../xref/overview-frame.html | 25 + .../xref/overview-summary.html | 64 + css/dependency-check-ant/xref/stylesheet.css | 116 + .../apidocs/allclasses-frame.html | 36 + .../apidocs/allclasses-noframe.html | 36 + .../apidocs/constant-values.html | 361 ++ .../apidocs/deprecated-list.html | 147 + .../apidocs/help-doc.html | 224 + .../apidocs/index-all.html | 396 ++ css/dependency-check-cli/apidocs/index.html | 40 + .../org/owasp/dependencycheck/App.html | 284 + .../owasp/dependencycheck/class-use/App.html | 145 + .../cli/CliParser.ArgumentName.html | 917 +++ .../owasp/dependencycheck/cli/CliParser.html | 711 +++ .../cli/class-use/CliParser.ArgumentName.html | 145 + .../cli/class-use/CliParser.html | 145 + .../dependencycheck/cli/package-frame.html | 35 + .../dependencycheck/cli/package-summary.html | 192 + .../dependencycheck/cli/package-tree.html | 154 + .../dependencycheck/cli/package-use.html | 145 + .../owasp/dependencycheck/package-frame.html | 33 + .../dependencycheck/package-summary.html | 185 + .../owasp/dependencycheck/package-tree.html | 154 + .../owasp/dependencycheck/package-use.html | 145 + .../apidocs/overview-frame.html | 45 + .../apidocs/overview-summary.html | 173 + .../apidocs/overview-tree.html | 153 + css/dependency-check-cli/apidocs/package-list | 2 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes .../apidocs/stylesheet.css | 29 + css/dependency-check-cli/arguments.html | 370 ++ css/dependency-check-cli/checkstyle.html | 303 + css/dependency-check-cli/checkstyle.rss | 233 + .../cobertura/css/help.css | 22 + .../cobertura/css/main.css | 131 + .../cobertura/css/sortabletable.css | 50 + .../cobertura/css/source-viewer.css | 73 + .../cobertura/css/tooltip.css | 49 + .../cobertura/frame-packages.html | 23 + ...cefiles-org.owasp.dependencycheck.cli.html | 23 + ...sourcefiles-org.owasp.dependencycheck.html | 23 + .../cobertura/frame-sourcefiles.html | 26 + ...summary-org.owasp.dependencycheck.cli.html | 43 + ...ame-summary-org.owasp.dependencycheck.html | 43 + .../cobertura/frame-summary.html | 31 + css/dependency-check-cli/cobertura/help.html | 31 + .../cobertura/images/blank.png | Bin 0 -> 144 bytes .../cobertura/images/downsimple.png | Bin 0 -> 201 bytes .../cobertura/images/upsimple.png | Bin 0 -> 201 bytes css/dependency-check-cli/cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + .../cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + .../org.owasp.dependencycheck.App.html | 359 ++ ...g.owasp.dependencycheck.cli.CliParser.html | 1086 ++++ css/dependency-check-cli/cpd.html | 251 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + css/dependency-check-cli/css/print.css | 23 + css/dependency-check-cli/css/site.css | 1 + .../dependency-updates-report.html | 410 ++ css/dependency-check-cli/findbugs.html | 270 + .../images/accessories-text-editor.png | Bin 0 -> 746 bytes css/dependency-check-cli/images/add.gif | Bin 0 -> 397 bytes .../images/apache-maven-project-2.png | Bin 0 -> 33442 bytes .../images/application-certificate.png | Bin 0 -> 923 bytes .../images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes css/dependency-check-cli/images/fix.gif | Bin 0 -> 366 bytes .../images/icon_error_sml.gif | Bin 0 -> 633 bytes .../images/icon_help_sml.gif | Bin 0 -> 1072 bytes .../images/icon_info_sml.gif | Bin 0 -> 638 bytes .../images/icon_success_sml.gif | Bin 0 -> 604 bytes .../images/icon_warning_sml.gif | Bin 0 -> 625 bytes .../images/image-x-generic.png | Bin 0 -> 662 bytes .../images/internet-web-browser.png | Bin 0 -> 1017 bytes .../images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../images/network-server.png | Bin 0 -> 536 bytes .../images/package-x-generic.png | Bin 0 -> 717 bytes .../images/profiles/pre-release.png | Bin 0 -> 32607 bytes .../images/profiles/retired.png | Bin 0 -> 22003 bytes .../images/profiles/sandbox.png | Bin 0 -> 33010 bytes css/dependency-check-cli/images/remove.gif | Bin 0 -> 607 bytes css/dependency-check-cli/images/rss.png | Bin 0 -> 474 bytes css/dependency-check-cli/images/update.gif | Bin 0 -> 1090 bytes .../images/window-new.png | Bin 0 -> 583 bytes .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../img/glyphicons-halflings.png | Bin 0 -> 12799 bytes css/dependency-check-cli/index.html | 185 + css/dependency-check-cli/installation.html | 178 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + css/dependency-check-cli/license.html | 864 +++ .../plugin-updates-report.html | 852 +++ css/dependency-check-cli/pmd.html | 268 + css/dependency-check-cli/project-info.html | 200 + css/dependency-check-cli/project-reports.html | 290 + css/dependency-check-cli/project-summary.html | 232 + css/dependency-check-cli/surefire-report.html | 367 ++ css/dependency-check-cli/taglist.html | 258 + .../xref-test/allclasses-frame.html | 20 + css/dependency-check-cli/xref-test/index.html | 24 + .../dependencycheck/cli/CliParserTest.html | 285 + .../dependencycheck/cli/package-frame.html | 24 + .../dependencycheck/cli/package-summary.html | 67 + .../xref-test/overview-frame.html | 25 + .../xref-test/overview-summary.html | 64 + .../xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 26 + css/dependency-check-cli/xref/index.html | 24 + .../xref/org/owasp/dependencycheck/App.html | 219 + .../owasp/dependencycheck/cli/CliParser.html | 592 ++ .../dependencycheck/cli/package-frame.html | 27 + .../dependencycheck/cli/package-summary.html | 72 + .../owasp/dependencycheck/package-frame.html | 24 + .../dependencycheck/package-summary.html | 67 + .../xref/overview-frame.html | 28 + .../xref/overview-summary.html | 69 + css/dependency-check-cli/xref/stylesheet.css | 116 + .../apidocs/allclasses-frame.html | 394 ++ .../apidocs/allclasses-noframe.html | 394 ++ .../apidocs/constant-values.html | 637 ++ .../apidocs/deprecated-list.html | 216 + .../apidocs/help-doc.html | 224 + .../apidocs/index-all.html | 5144 +++++++++++++++++ css/dependency-check-core/apidocs/index.html | 40 + .../org/owasp/dependencycheck/Engine.html | 576 ++ .../analyzer/AbstractAnalyzer.html | 337 ++ .../analyzer/AbstractSuppressionAnalyzer.html | 383 ++ .../analyzer/AnalysisException.html | 305 + .../analyzer/AnalysisPhase.html | 461 ++ .../dependencycheck/analyzer/Analyzer.html | 382 ++ .../analyzer/AnalyzerService.html | 249 + .../analyzer/ArchiveAnalyzer.html | 444 ++ .../analyzer/ArchiveExtractionException.html | 305 + .../dependencycheck/analyzer/CPEAnalyzer.html | 579 ++ .../analyzer/CpeSuppressionAnalyzer.html | 343 ++ .../analyzer/DependencyBundlingAnalyzer.html | 403 ++ .../analyzer/FalsePositiveAnalyzer.html | 434 ++ .../analyzer/FileNameAnalyzer.html | 395 ++ .../analyzer/HintAnalyzer.html | 393 ++ .../JarAnalyzer.ClassNameInformation.html | 273 + .../dependencycheck/analyzer/JarAnalyzer.html | 605 ++ .../analyzer/JavaScriptAnalyzer.html | 443 ++ .../analyzer/NvdCveAnalyzer.html | 516 ++ .../VulnerabilitySuppressionAnalyzer.html | 343 ++ .../analyzer/class-use/AbstractAnalyzer.html | 267 + .../AbstractSuppressionAnalyzer.html | 197 + .../analyzer/class-use/AnalysisException.html | 302 + .../analyzer/class-use/AnalysisPhase.html | 326 ++ .../analyzer/class-use/Analyzer.html | 385 ++ .../analyzer/class-use/AnalyzerService.html | 187 + .../analyzer/class-use/ArchiveAnalyzer.html | 145 + .../class-use/ArchiveExtractionException.html | 145 + .../analyzer/class-use/CPEAnalyzer.html | 145 + .../class-use/CpeSuppressionAnalyzer.html | 145 + .../class-use/DependencyBundlingAnalyzer.html | 145 + .../class-use/FalsePositiveAnalyzer.html | 145 + .../analyzer/class-use/FileNameAnalyzer.html | 145 + .../analyzer/class-use/HintAnalyzer.html | 145 + .../JarAnalyzer.ClassNameInformation.html | 208 + .../analyzer/class-use/JarAnalyzer.html | 145 + .../class-use/JavaScriptAnalyzer.html | 145 + .../analyzer/class-use/NvdCveAnalyzer.html | 145 + .../VulnerabilitySuppressionAnalyzer.html | 145 + .../analyzer/package-frame.html | 96 + .../analyzer/package-summary.html | 299 + .../analyzer/package-tree.html | 187 + .../dependencycheck/analyzer/package-use.html | 268 + .../dependencycheck/class-use/Engine.html | 329 ++ .../concurrency/DirectoryLockException.html | 305 + .../concurrency/DirectorySpinLock.html | 548 ++ .../InvalidDirectoryException.html | 305 + .../class-use/DirectoryLockException.html | 229 + .../class-use/DirectorySpinLock.html | 145 + .../class-use/InvalidDirectoryException.html | 184 + .../concurrency/package-frame.html | 46 + .../concurrency/package-summary.html | 203 + .../concurrency/package-tree.html | 160 + .../concurrency/package-use.html | 182 + .../owasp/dependencycheck/data/BaseDB.html | 524 ++ .../data/CachedWebDataSource.html | 229 + .../dependencycheck/data/NoDataException.html | 306 + .../dependencycheck/data/UpdateException.html | 306 + .../dependencycheck/data/UpdateService.html | 251 + .../data/class-use/BaseDB.html | 186 + .../data/class-use/CachedWebDataSource.html | 220 + .../data/class-use/NoDataException.html | 145 + .../data/class-use/UpdateException.html | 331 ++ .../data/class-use/UpdateService.html | 186 + .../data/cpe/CpeMemoryIndex.html | 435 ++ .../dependencycheck/data/cpe/Fields.html | 312 + .../dependencycheck/data/cpe/IndexEntry.html | 550 ++ .../data/cpe/IndexException.html | 305 + .../data/cpe/class-use/CpeMemoryIndex.html | 186 + .../data/cpe/class-use/Fields.html | 145 + .../data/cpe/class-use/IndexEntry.html | 225 + .../data/cpe/class-use/IndexException.html | 186 + .../data/cpe/package-frame.html | 48 + .../data/cpe/package-summary.html | 209 + .../data/cpe/package-tree.html | 160 + .../dependencycheck/data/cpe/package-use.html | 232 + .../owasp/dependencycheck/data/cwe/CweDB.html | 227 + .../dependencycheck/data/cwe/CweHandler.html | 308 + .../data/cwe/class-use/CweDB.html | 145 + .../data/cwe/class-use/CweHandler.html | 145 + .../data/cwe/package-frame.html | 35 + .../data/cwe/package-summary.html | 189 + .../data/cwe/package-tree.html | 157 + .../dependencycheck/data/cwe/package-use.html | 145 + .../data/lucene/AbstractTokenizingFilter.html | 386 ++ .../data/lucene/AlphaNumericTokenizer.html | 367 ++ .../data/lucene/DependencySimilarity.html | 329 ++ .../data/lucene/FieldAnalyzer.html | 325 ++ .../data/lucene/LuceneUtils.html | 298 + .../data/lucene/SearchFieldAnalyzer.html | 348 ++ .../data/lucene/SearchVersionAnalyzer.html | 327 ++ .../lucene/TokenPairConcatenatingFilter.html | 411 ++ .../data/lucene/UrlTokenizingFilter.html | 352 ++ .../data/lucene/VersionAnalyzer.html | 326 ++ .../data/lucene/VersionTokenizingFilter.html | 355 ++ .../class-use/AbstractTokenizingFilter.html | 195 + .../class-use/AlphaNumericTokenizer.html | 145 + .../class-use/DependencySimilarity.html | 145 + .../data/lucene/class-use/FieldAnalyzer.html | 145 + .../data/lucene/class-use/LuceneUtils.html | 145 + .../lucene/class-use/SearchFieldAnalyzer.html | 145 + .../class-use/SearchVersionAnalyzer.html | 145 + .../TokenPairConcatenatingFilter.html | 145 + .../lucene/class-use/UrlTokenizingFilter.html | 145 + .../lucene/class-use/VersionAnalyzer.html | 145 + .../class-use/VersionTokenizingFilter.html | 145 + .../data/lucene/package-frame.html | 53 + .../data/lucene/package-summary.html | 231 + .../data/lucene/package-tree.html | 176 + .../data/lucene/package-use.html | 177 + .../dependencycheck/data/nvdcve/CveDB.html | 394 ++ .../data/nvdcve/DatabaseException.html | 289 + .../data/nvdcve/InvalidDataException.html | 272 + .../data/nvdcve/NvdCve12Handler.Element.html | 515 ++ .../data/nvdcve/NvdCve12Handler.html | 359 ++ .../data/nvdcve/NvdCve20Handler.Element.html | 935 +++ .../data/nvdcve/NvdCve20Handler.html | 449 ++ .../data/nvdcve/class-use/CveDB.html | 253 + .../nvdcve/class-use/DatabaseException.html | 313 + .../class-use/InvalidDataException.html | 145 + .../class-use/NvdCve12Handler.Element.html | 145 + .../nvdcve/class-use/NvdCve12Handler.html | 145 + .../class-use/NvdCve20Handler.Element.html | 145 + .../nvdcve/class-use/NvdCve20Handler.html | 145 + .../data/nvdcve/package-frame.html | 54 + .../data/nvdcve/package-summary.html | 222 + .../data/nvdcve/package-tree.html | 164 + .../data/nvdcve/package-use.html | 284 + .../dependencycheck/data/package-frame.html | 59 + .../dependencycheck/data/package-summary.html | 221 + .../dependencycheck/data/package-tree.html | 166 + .../dependencycheck/data/package-use.html | 241 + .../data/update/AbstractUpdateTask.html | 625 ++ .../data/update/BatchUpdateTask.html | 382 ++ .../data/update/CallableDownloadTask.html | 499 ++ .../data/update/DataStoreMetaInfo.html | 505 ++ .../data/update/DatabaseUpdater.html | 302 + .../data/update/NvdCveInfo.html | 457 ++ .../data/update/StandardUpdateTask.html | 374 ++ .../data/update/UpdateTask.html | 268 + .../data/update/UpdateTaskFactory.html | 241 + .../data/update/Updateable.html | 542 ++ .../update/class-use/AbstractUpdateTask.html | 193 + .../update/class-use/BatchUpdateTask.html | 145 + .../class-use/CallableDownloadTask.html | 185 + .../update/class-use/DataStoreMetaInfo.html | 211 + .../update/class-use/DatabaseUpdater.html | 145 + .../data/update/class-use/NvdCveInfo.html | 258 + .../update/class-use/StandardUpdateTask.html | 145 + .../data/update/class-use/UpdateTask.html | 217 + .../update/class-use/UpdateTaskFactory.html | 145 + .../data/update/class-use/Updateable.html | 209 + .../data/update/package-frame.html | 60 + .../data/update/package-summary.html | 237 + .../data/update/package-tree.html | 165 + .../data/update/package-use.html | 205 + .../dependency/Dependency.html | 1214 ++++ .../dependency/Evidence.Confidence.html | 370 ++ .../dependencycheck/dependency/Evidence.html | 635 ++ .../dependency/EvidenceCollection.html | 673 +++ .../dependency/Identifier.html | 564 ++ .../dependencycheck/dependency/Reference.html | 462 ++ .../dependency/Vulnerability.html | 1033 ++++ .../dependency/VulnerabilityComparator.html | 281 + .../dependency/VulnerableSoftware.html | 688 +++ .../dependency/class-use/Dependency.html | 508 ++ .../class-use/Evidence.Confidence.html | 265 + .../dependency/class-use/Evidence.html | 243 + .../class-use/EvidenceCollection.html | 260 + .../dependency/class-use/Identifier.html | 227 + .../dependency/class-use/Reference.html | 226 + .../dependency/class-use/Vulnerability.html | 285 + .../class-use/VulnerabilityComparator.html | 145 + .../class-use/VulnerableSoftware.html | 286 + .../dependency/package-frame.html | 58 + .../dependency/package-summary.html | 227 + .../dependency/package-tree.html | 175 + .../dependency/package-use.html | 345 ++ .../jaxb/pom/MavenNamespaceFilter.html | 377 ++ .../pom/class-use/MavenNamespaceFilter.html | 145 + .../jaxb/pom/generated/Activation.html | 641 ++ .../jaxb/pom/generated/ActivationFile.html | 423 ++ .../jaxb/pom/generated/ActivationOS.html | 568 ++ .../pom/generated/ActivationProperty.html | 423 ++ .../jaxb/pom/generated/Build.Extensions.html | 338 ++ .../jaxb/pom/generated/Build.Filters.html | 338 ++ .../jaxb/pom/generated/Build.Plugins.html | 338 ++ .../jaxb/pom/generated/Build.Resources.html | 338 ++ .../pom/generated/Build.TestResources.html | 338 ++ .../jaxb/pom/generated/Build.html | 1395 +++++ .../jaxb/pom/generated/BuildBase.Filters.html | 338 ++ .../jaxb/pom/generated/BuildBase.Plugins.html | 338 ++ .../pom/generated/BuildBase.Resources.html | 338 ++ .../generated/BuildBase.TestResources.html | 338 ++ .../jaxb/pom/generated/BuildBase.html | 939 +++ .../pom/generated/CiManagement.Notifiers.html | 338 ++ .../jaxb/pom/generated/CiManagement.html | 520 ++ .../pom/generated/Contributor.Properties.html | 338 ++ .../jaxb/pom/generated/Contributor.Roles.html | 338 ++ .../jaxb/pom/generated/Contributor.html | 906 +++ .../pom/generated/Dependency.Exclusions.html | 338 ++ .../jaxb/pom/generated/Dependency.html | 958 +++ .../DependencyManagement.Dependencies.html | 338 ++ .../pom/generated/DependencyManagement.html | 375 ++ .../pom/generated/DeploymentRepository.html | 640 ++ .../pom/generated/Developer.Properties.html | 338 ++ .../jaxb/pom/generated/Developer.Roles.html | 338 ++ .../jaxb/pom/generated/Developer.html | 977 ++++ .../pom/generated/DistributionManagement.html | 715 +++ .../jaxb/pom/generated/Exclusion.html | 420 ++ .../jaxb/pom/generated/Extension.html | 493 ++ .../jaxb/pom/generated/IssueManagement.html | 421 ++ .../jaxb/pom/generated/License.html | 569 ++ .../generated/MailingList.OtherArchives.html | 338 ++ .../jaxb/pom/generated/MailingList.html | 741 +++ .../pom/generated/Model.Contributors.html | 338 ++ .../pom/generated/Model.Dependencies.html | 338 ++ .../jaxb/pom/generated/Model.Developers.html | 338 ++ .../jaxb/pom/generated/Model.Licenses.html | 338 ++ .../pom/generated/Model.MailingLists.html | 338 ++ .../jaxb/pom/generated/Model.Modules.html | 338 ++ .../generated/Model.PluginRepositories.html | 338 ++ .../jaxb/pom/generated/Model.Profiles.html | 338 ++ .../jaxb/pom/generated/Model.Properties.html | 338 ++ .../jaxb/pom/generated/Model.Reports.html | 338 ++ .../pom/generated/Model.Repositories.html | 338 ++ .../jaxb/pom/generated/Model.html | 2673 +++++++++ .../pom/generated/Notifier.Configuration.html | 338 ++ .../jaxb/pom/generated/Notifier.html | 813 +++ .../jaxb/pom/generated/ObjectFactory.html | 2056 +++++++ .../jaxb/pom/generated/Organization.html | 420 ++ .../jaxb/pom/generated/Parent.html | 566 ++ .../pom/generated/Plugin.Configuration.html | 338 ++ .../pom/generated/Plugin.Dependencies.html | 338 ++ .../jaxb/pom/generated/Plugin.Executions.html | 338 ++ .../jaxb/pom/generated/Plugin.Goals.html | 338 ++ .../jaxb/pom/generated/Plugin.html | 1012 ++++ .../PluginExecution.Configuration.html | 338 ++ .../pom/generated/PluginExecution.Goals.html | 338 ++ .../jaxb/pom/generated/PluginExecution.html | 684 +++ .../generated/PluginManagement.Plugins.html | 338 ++ .../jaxb/pom/generated/PluginManagement.html | 375 ++ .../jaxb/pom/generated/Prerequisites.html | 347 ++ .../pom/generated/Profile.Dependencies.html | 338 ++ .../jaxb/pom/generated/Profile.Modules.html | 338 ++ .../generated/Profile.PluginRepositories.html | 338 ++ .../pom/generated/Profile.Properties.html | 338 ++ .../jaxb/pom/generated/Profile.Reports.html | 338 ++ .../pom/generated/Profile.Repositories.html | 338 ++ .../jaxb/pom/generated/Profile.html | 1268 ++++ .../jaxb/pom/generated/Relocation.html | 567 ++ .../generated/ReportPlugin.Configuration.html | 338 ++ .../generated/ReportPlugin.ReportSets.html | 338 ++ .../jaxb/pom/generated/ReportPlugin.html | 757 +++ .../generated/ReportSet.Configuration.html | 338 ++ .../jaxb/pom/generated/ReportSet.Reports.html | 338 ++ .../jaxb/pom/generated/ReportSet.html | 611 ++ .../jaxb/pom/generated/Reporting.Plugins.html | 338 ++ .../jaxb/pom/generated/Reporting.html | 520 ++ .../jaxb/pom/generated/Repository.html | 713 +++ .../jaxb/pom/generated/RepositoryPolicy.html | 493 ++ .../jaxb/pom/generated/Resource.Excludes.html | 338 ++ .../jaxb/pom/generated/Resource.Includes.html | 338 ++ .../jaxb/pom/generated/Resource.html | 686 +++ .../jaxb/pom/generated/Scm.html | 566 ++ .../jaxb/pom/generated/Site.html | 494 ++ .../pom/generated/class-use/Activation.html | 221 + .../generated/class-use/ActivationFile.html | 221 + .../pom/generated/class-use/ActivationOS.html | 221 + .../class-use/ActivationProperty.html | 221 + .../generated/class-use/Build.Extensions.html | 221 + .../generated/class-use/Build.Filters.html | 221 + .../generated/class-use/Build.Plugins.html | 221 + .../generated/class-use/Build.Resources.html | 221 + .../class-use/Build.TestResources.html | 221 + .../jaxb/pom/generated/class-use/Build.html | 221 + .../class-use/BuildBase.Filters.html | 221 + .../class-use/BuildBase.Plugins.html | 221 + .../class-use/BuildBase.Resources.html | 221 + .../class-use/BuildBase.TestResources.html | 221 + .../pom/generated/class-use/BuildBase.html | 221 + .../class-use/CiManagement.Notifiers.html | 221 + .../pom/generated/class-use/CiManagement.html | 221 + .../class-use/Contributor.Properties.html | 221 + .../class-use/Contributor.Roles.html | 221 + .../pom/generated/class-use/Contributor.html | 213 + .../class-use/Dependency.Exclusions.html | 221 + .../pom/generated/class-use/Dependency.html | 261 + .../DependencyManagement.Dependencies.html | 221 + .../class-use/DependencyManagement.html | 245 + .../class-use/DeploymentRepository.html | 245 + .../class-use/Developer.Properties.html | 221 + .../generated/class-use/Developer.Roles.html | 221 + .../pom/generated/class-use/Developer.html | 213 + .../class-use/DistributionManagement.html | 245 + .../pom/generated/class-use/Exclusion.html | 213 + .../pom/generated/class-use/Extension.html | 213 + .../generated/class-use/IssueManagement.html | 221 + .../jaxb/pom/generated/class-use/License.html | 213 + .../class-use/MailingList.OtherArchives.html | 221 + .../pom/generated/class-use/MailingList.html | 213 + .../class-use/Model.Contributors.html | 221 + .../class-use/Model.Dependencies.html | 221 + .../generated/class-use/Model.Developers.html | 221 + .../generated/class-use/Model.Licenses.html | 221 + .../class-use/Model.MailingLists.html | 221 + .../generated/class-use/Model.Modules.html | 221 + .../class-use/Model.PluginRepositories.html | 221 + .../generated/class-use/Model.Profiles.html | 221 + .../generated/class-use/Model.Properties.html | 221 + .../generated/class-use/Model.Reports.html | 221 + .../class-use/Model.Repositories.html | 221 + .../jaxb/pom/generated/class-use/Model.html | 213 + .../class-use/Notifier.Configuration.html | 221 + .../pom/generated/class-use/Notifier.html | 213 + .../generated/class-use/ObjectFactory.html | 145 + .../pom/generated/class-use/Organization.html | 221 + .../jaxb/pom/generated/class-use/Parent.html | 221 + .../class-use/Plugin.Configuration.html | 221 + .../class-use/Plugin.Dependencies.html | 221 + .../class-use/Plugin.Executions.html | 221 + .../pom/generated/class-use/Plugin.Goals.html | 221 + .../jaxb/pom/generated/class-use/Plugin.html | 245 + .../PluginExecution.Configuration.html | 221 + .../class-use/PluginExecution.Goals.html | 221 + .../generated/class-use/PluginExecution.html | 213 + .../class-use/PluginManagement.Plugins.html | 221 + .../generated/class-use/PluginManagement.html | 245 + .../generated/class-use/Prerequisites.html | 221 + .../class-use/Profile.Dependencies.html | 221 + .../generated/class-use/Profile.Modules.html | 221 + .../class-use/Profile.PluginRepositories.html | 221 + .../class-use/Profile.Properties.html | 221 + .../generated/class-use/Profile.Reports.html | 221 + .../class-use/Profile.Repositories.html | 221 + .../jaxb/pom/generated/class-use/Profile.html | 213 + .../pom/generated/class-use/Relocation.html | 221 + .../class-use/ReportPlugin.Configuration.html | 221 + .../class-use/ReportPlugin.ReportSets.html | 221 + .../pom/generated/class-use/ReportPlugin.html | 213 + .../class-use/ReportSet.Configuration.html | 221 + .../class-use/ReportSet.Reports.html | 221 + .../pom/generated/class-use/ReportSet.html | 213 + .../class-use/Reporting.Plugins.html | 221 + .../pom/generated/class-use/Reporting.html | 245 + .../pom/generated/class-use/Repository.html | 261 + .../generated/class-use/RepositoryPolicy.html | 245 + .../class-use/Resource.Excludes.html | 221 + .../class-use/Resource.Includes.html | 221 + .../pom/generated/class-use/Resource.html | 261 + .../jaxb/pom/generated/class-use/Scm.html | 221 + .../jaxb/pom/generated/class-use/Site.html | 221 + .../jaxb/pom/generated/package-frame.html | 203 + .../jaxb/pom/generated/package-summary.html | 505 ++ .../jaxb/pom/generated/package-tree.html | 154 + .../jaxb/pom/generated/package-use.html | 680 +++ .../jaxb/pom/package-frame.html | 33 + .../jaxb/pom/package-summary.html | 185 + .../jaxb/pom/package-tree.html | 157 + .../dependencycheck/jaxb/pom/package-use.html | 145 + .../owasp/dependencycheck/package-frame.html | 33 + .../dependencycheck/package-summary.html | 185 + .../owasp/dependencycheck/package-tree.html | 154 + .../owasp/dependencycheck/package-use.html | 201 + .../reporting/ReportGenerator.Format.html | 370 ++ .../reporting/ReportGenerator.html | 358 ++ .../reporting/VelocityLoggerRedirect.html | 379 ++ .../class-use/ReportGenerator.Format.html | 212 + .../reporting/class-use/ReportGenerator.html | 145 + .../class-use/VelocityLoggerRedirect.html | 145 + .../reporting/package-frame.html | 46 + .../reporting/package-summary.html | 205 + .../reporting/package-tree.html | 165 + .../reporting/package-use.html | 176 + .../suppression/PropertyType.html | 472 ++ .../suppression/SuppressionErrorHandler.html | 326 ++ .../suppression/SuppressionHandler.html | 530 ++ .../SuppressionParseException.html | 306 + .../suppression/SuppressionParser.html | 350 ++ .../suppression/SuppressionRule.html | 692 +++ .../suppression/class-use/PropertyType.html | 242 + .../class-use/SuppressionErrorHandler.html | 145 + .../class-use/SuppressionHandler.html | 145 + .../class-use/SuppressionParseException.html | 187 + .../class-use/SuppressionParser.html | 145 + .../class-use/SuppressionRule.html | 246 + .../suppression/package-frame.html | 52 + .../suppression/package-summary.html | 216 + .../suppression/package-tree.html | 165 + .../suppression/package-use.html | 214 + .../owasp/dependencycheck/utils/Checksum.html | 358 ++ .../utils/DependencyVersion.html | 501 ++ .../utils/DependencyVersionUtil.html | 240 + .../utils/DownloadFailedException.html | 306 + .../dependencycheck/utils/Downloader.html | 265 + .../utils/ExtractionException.html | 306 + .../dependencycheck/utils/FileUtils.html | 384 ++ .../owasp/dependencycheck/utils/Filter.html | 291 + .../utils/InvalidSettingException.html | 306 + .../dependencycheck/utils/LogFilter.html | 272 + .../owasp/dependencycheck/utils/LogUtils.html | 254 + .../utils/NonClosingStream.html | 304 + .../dependencycheck/utils/Settings.KEYS.html | 656 +++ .../owasp/dependencycheck/utils/Settings.html | 629 ++ .../dependencycheck/utils/UrlStringUtils.html | 281 + .../utils/class-use/Checksum.html | 145 + .../utils/class-use/DependencyVersion.html | 249 + .../class-use/DependencyVersionUtil.html | 145 + .../class-use/DownloadFailedException.html | 300 + .../utils/class-use/Downloader.html | 145 + .../utils/class-use/ExtractionException.html | 197 + .../utils/class-use/FileUtils.html | 145 + .../utils/class-use/Filter.html | 145 + .../class-use/InvalidSettingException.html | 202 + .../utils/class-use/LogFilter.html | 145 + .../utils/class-use/LogUtils.html | 145 + .../utils/class-use/NonClosingStream.html | 145 + .../utils/class-use/Settings.KEYS.html | 145 + .../utils/class-use/Settings.html | 145 + .../utils/class-use/UrlStringUtils.html | 145 + .../dependencycheck/utils/package-frame.html | 70 + .../utils/package-summary.html | 253 + .../dependencycheck/utils/package-tree.html | 168 + .../dependencycheck/utils/package-use.html | 241 + .../apidocs/overview-frame.html | 71 + .../apidocs/overview-summary.html | 283 + .../apidocs/overview-tree.html | 245 + .../apidocs/package-list | 15 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes .../apidocs/serialized-form.html | 753 +++ .../apidocs/stylesheet.css | 29 + css/dependency-check-core/checkstyle.html | 279 + css/dependency-check-core/checkstyle.rss | 2305 ++++++++ .../cobertura/css/help.css | 22 + .../cobertura/css/main.css | 131 + .../cobertura/css/sortabletable.css | 50 + .../cobertura/css/source-viewer.css | 73 + .../cobertura/css/tooltip.css | 49 + .../cobertura/frame-packages.html | 62 + ...es-org.owasp.dependencycheck.analyzer.html | 74 + ...org.owasp.dependencycheck.concurrency.html | 29 + ...es-org.owasp.dependencycheck.data.cpe.html | 32 + ...es-org.owasp.dependencycheck.data.cwe.html | 26 + ...efiles-org.owasp.dependencycheck.data.html | 35 + ...org.owasp.dependencycheck.data.lucene.html | 53 + ...org.owasp.dependencycheck.data.nvdcve.html | 38 + ...org.owasp.dependencycheck.data.update.html | 50 + ...-org.owasp.dependencycheck.dependency.html | 44 + ...sourcefiles-org.owasp.dependencycheck.html | 23 + ...sp.dependencycheck.jaxb.pom.generated.html | 134 + ...es-org.owasp.dependencycheck.jaxb.pom.html | 23 + ...s-org.owasp.dependencycheck.reporting.html | 26 + ...org.owasp.dependencycheck.suppression.html | 38 + ...files-org.owasp.dependencycheck.utils.html | 62 + .../cobertura/frame-sourcefiles.html | 407 ++ ...ry-org.owasp.dependencycheck.analyzer.html | 79 + ...org.owasp.dependencycheck.concurrency.html | 46 + ...ry-org.owasp.dependencycheck.data.cpe.html | 48 + ...ry-org.owasp.dependencycheck.data.cwe.html | 44 + ...ummary-org.owasp.dependencycheck.data.html | 55 + ...org.owasp.dependencycheck.data.lucene.html | 62 + ...org.owasp.dependencycheck.data.nvdcve.html | 54 + ...org.owasp.dependencycheck.data.update.html | 60 + ...-org.owasp.dependencycheck.dependency.html | 62 + ...ame-summary-org.owasp.dependencycheck.html | 56 + ...sp.dependencycheck.jaxb.pom.generated.html | 165 + ...ry-org.owasp.dependencycheck.jaxb.pom.html | 43 + ...y-org.owasp.dependencycheck.reporting.html | 45 + ...org.owasp.dependencycheck.suppression.html | 52 + ...mmary-org.owasp.dependencycheck.utils.html | 72 + .../cobertura/frame-summary.html | 44 + css/dependency-check-core/cobertura/help.html | 31 + .../cobertura/images/blank.png | Bin 0 -> 144 bytes .../cobertura/images/downsimple.png | Bin 0 -> 201 bytes .../cobertura/images/upsimple.png | Bin 0 -> 201 bytes .../cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + .../cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + .../org.owasp.dependencycheck.Engine.html | 753 +++ ...ndencycheck.analyzer.AbstractAnalyzer.html | 154 + ....analyzer.AbstractSuppressionAnalyzer.html | 233 + ...dencycheck.analyzer.AnalysisException.html | 150 + ...ependencycheck.analyzer.AnalysisPhase.html | 142 + ...asp.dependencycheck.analyzer.Analyzer.html | 228 + ...endencycheck.analyzer.AnalyzerService.html | 149 + ...endencycheck.analyzer.ArchiveAnalyzer.html | 666 +++ ...k.analyzer.ArchiveExtractionException.html | 150 + ....dependencycheck.analyzer.CPEAnalyzer.html | 1364 +++++ ...check.analyzer.CpeSuppressionAnalyzer.html | 167 + ...k.analyzer.DependencyBundlingAnalyzer.html | 598 ++ ...ycheck.analyzer.FalsePositiveAnalyzer.html | 651 +++ ...ndencycheck.analyzer.FileNameAnalyzer.html | 268 + ...dependencycheck.analyzer.HintAnalyzer.html | 279 + ....dependencycheck.analyzer.JarAnalyzer.html | 1843 ++++++ ...encycheck.analyzer.JavaScriptAnalyzer.html | 257 + ...pendencycheck.analyzer.NvdCveAnalyzer.html | 441 ++ ...yzer.VulnerabilitySuppressionAnalyzer.html | 167 + ...ck.concurrency.DirectoryLockException.html | 150 + ...cycheck.concurrency.DirectorySpinLock.html | 480 ++ ...concurrency.InvalidDirectoryException.html | 150 + ...org.owasp.dependencycheck.data.BaseDB.html | 440 ++ ...endencycheck.data.CachedWebDataSource.html | 100 + ....dependencycheck.data.NoDataException.html | 154 + ....dependencycheck.data.UpdateException.html | 154 + ...sp.dependencycheck.data.UpdateService.html | 151 + ...pendencycheck.data.cpe.CpeMemoryIndex.html | 584 ++ ...owasp.dependencycheck.data.cpe.Fields.html | 111 + ...p.dependencycheck.data.cpe.IndexEntry.html | 366 ++ ...pendencycheck.data.cpe.IndexException.html | 150 + ....owasp.dependencycheck.data.cwe.CweDB.html | 175 + ...p.dependencycheck.data.cwe.CweHandler.html | 128 + ....data.lucene.AbstractTokenizingFilter.html | 182 + ...eck.data.lucene.AlphaNumericTokenizer.html | 147 + ...heck.data.lucene.DependencySimilarity.html | 122 + ...ndencycheck.data.lucene.FieldAnalyzer.html | 177 + ...pendencycheck.data.lucene.LuceneUtils.html | 228 + ...check.data.lucene.SearchFieldAnalyzer.html | 205 + ...eck.data.lucene.SearchVersionAnalyzer.html | 164 + ...a.lucene.TokenPairConcatenatingFilter.html | 248 + ...check.data.lucene.UrlTokenizingFilter.html | 174 + ...encycheck.data.lucene.VersionAnalyzer.html | 161 + ...k.data.lucene.VersionTokenizingFilter.html | 202 + ....data.nvdcve.CorruptDatabaseException.html | 124 + ...asp.dependencycheck.data.nvdcve.CveDB.html | 864 +++ ...cycheck.data.nvdcve.DatabaseException.html | 138 + ...heck.data.nvdcve.InvalidDataException.html | 124 + ...encycheck.data.nvdcve.NvdCve12Handler.html | 462 ++ ...encycheck.data.nvdcve.NvdCve20Handler.html | 872 +++ ...ycheck.data.update.AbstractUpdateTask.html | 485 ++ ...encycheck.data.update.BatchUpdateTask.html | 462 ++ ...heck.data.update.CallableDownloadTask.html | 341 ++ ...cycheck.data.update.DataStoreMetaInfo.html | 433 ++ ...encycheck.data.update.DatabaseUpdater.html | 173 + ...ependencycheck.data.update.NvdCveInfo.html | 283 + ...ycheck.data.update.StandardUpdateTask.html | 703 +++ ...ependencycheck.data.update.UpdateTask.html | 126 + ...cycheck.data.update.UpdateTaskFactory.html | 139 + ...ependencycheck.data.update.Updateable.html | 357 ++ ...dependencycheck.dependency.Dependency.html | 1042 ++++ ...p.dependencycheck.dependency.Evidence.html | 507 ++ ...cycheck.dependency.EvidenceCollection.html | 701 +++ ...dependencycheck.dependency.Identifier.html | 365 ++ ....dependencycheck.dependency.Reference.html | 296 + ...endencycheck.dependency.Vulnerability.html | 752 +++ ...ck.dependency.VulnerabilityComparator.html | 114 + ...cycheck.dependency.VulnerableSoftware.html | 599 ++ ...cycheck.jaxb.pom.MavenNamespaceFilter.html | 203 + ...cycheck.jaxb.pom.generated.Activation.html | 398 ++ ...eck.jaxb.pom.generated.ActivationFile.html | 231 + ...check.jaxb.pom.generated.ActivationOS.html | 339 ++ ...jaxb.pom.generated.ActivationProperty.html | 231 + ...endencycheck.jaxb.pom.generated.Build.html | 1591 +++++ ...ncycheck.jaxb.pom.generated.BuildBase.html | 1120 ++++ ...check.jaxb.pom.generated.CiManagement.html | 422 ++ ...ycheck.jaxb.pom.generated.Contributor.html | 852 +++ ...cycheck.jaxb.pom.generated.Dependency.html | 758 +++ ...xb.pom.generated.DependencyManagement.html | 316 + ...xb.pom.generated.DeploymentRepository.html | 398 ++ ...ncycheck.jaxb.pom.generated.Developer.html | 903 +++ ....pom.generated.DistributionManagement.html | 451 ++ ...ncycheck.jaxb.pom.generated.Exclusion.html | 223 + ...ncycheck.jaxb.pom.generated.Extension.html | 278 + ...ck.jaxb.pom.generated.IssueManagement.html | 227 + ...dencycheck.jaxb.pom.generated.License.html | 341 ++ ...ycheck.jaxb.pom.generated.MailingList.html | 593 ++ ...endencycheck.jaxb.pom.generated.Model.html | 3335 +++++++++++ ...encycheck.jaxb.pom.generated.Notifier.html | 664 +++ ...heck.jaxb.pom.generated.ObjectFactory.html | 1399 +++++ ...check.jaxb.pom.generated.Organization.html | 223 + ...ndencycheck.jaxb.pom.generated.Parent.html | 337 ++ ...ndencycheck.jaxb.pom.generated.Plugin.html | 1189 ++++ ...ck.jaxb.pom.generated.PluginExecution.html | 683 +++ ...k.jaxb.pom.generated.PluginManagement.html | 316 + ...heck.jaxb.pom.generated.Prerequisites.html | 172 + ...dencycheck.jaxb.pom.generated.Profile.html | 1634 ++++++ ...cycheck.jaxb.pom.generated.Relocation.html | 335 ++ ...check.jaxb.pom.generated.ReportPlugin.html | 738 +++ ...ncycheck.jaxb.pom.generated.ReportSet.html | 628 ++ ...ncycheck.jaxb.pom.generated.Reporting.html | 426 ++ ...cycheck.jaxb.pom.generated.Repository.html | 451 ++ ...k.jaxb.pom.generated.RepositoryPolicy.html | 282 + ...encycheck.jaxb.pom.generated.Resource.html | 683 +++ ...ependencycheck.jaxb.pom.generated.Scm.html | 337 ++ ...pendencycheck.jaxb.pom.generated.Site.html | 282 + ...check.jaxb.pom.generated.package-info.html | 42 + ...ndencycheck.reporting.ReportGenerator.html | 442 ++ ...heck.reporting.VelocityLoggerRedirect.html | 226 + ...endencycheck.suppression.PropertyType.html | 356 ++ ...k.suppression.SuppressionErrorHandler.html | 194 + ...ycheck.suppression.SuppressionHandler.html | 331 ++ ...suppression.SuppressionParseException.html | 154 + ...cycheck.suppression.SuppressionParser.html | 209 + ...encycheck.suppression.SuppressionRule.html | 657 +++ ....owasp.dependencycheck.utils.Checksum.html | 213 + ...pendencycheck.utils.DependencyVersion.html | 452 ++ ...encycheck.utils.DependencyVersionUtil.html | 188 + ...cycheck.utils.DownloadFailedException.html | 154 + ...wasp.dependencycheck.utils.Downloader.html | 388 ++ ...ndencycheck.utils.ExtractionException.html | 154 + ...owasp.dependencycheck.utils.FileUtils.html | 414 ++ ...rg.owasp.dependencycheck.utils.Filter.html | 142 + ...cycheck.utils.InvalidSettingException.html | 154 + ...owasp.dependencycheck.utils.LogFilter.html | 109 + ....owasp.dependencycheck.utils.LogUtils.html | 177 + ...ependencycheck.utils.NonClosingStream.html | 119 + ....owasp.dependencycheck.utils.Settings.html | 866 +++ ....dependencycheck.utils.UrlStringUtils.html | 225 + css/dependency-check-core/cpd.html | 243 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + css/dependency-check-core/css/print.css | 23 + css/dependency-check-core/css/site.css | 1 + .../dependency-updates-report.html | 1245 ++++ .../failsafe-report.html | 423 ++ css/dependency-check-core/findbugs.html | 376 ++ .../images/accessories-text-editor.png | Bin 0 -> 746 bytes css/dependency-check-core/images/add.gif | Bin 0 -> 397 bytes .../images/apache-maven-project-2.png | Bin 0 -> 33442 bytes .../images/application-certificate.png | Bin 0 -> 923 bytes .../images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes css/dependency-check-core/images/fix.gif | Bin 0 -> 366 bytes .../images/icon_error_sml.gif | Bin 0 -> 633 bytes .../images/icon_help_sml.gif | Bin 0 -> 1072 bytes .../images/icon_info_sml.gif | Bin 0 -> 638 bytes .../images/icon_success_sml.gif | Bin 0 -> 604 bytes .../images/icon_warning_sml.gif | Bin 0 -> 625 bytes .../images/image-x-generic.png | Bin 0 -> 662 bytes .../images/internet-web-browser.png | Bin 0 -> 1017 bytes .../images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../images/network-server.png | Bin 0 -> 536 bytes .../images/package-x-generic.png | Bin 0 -> 717 bytes .../images/profiles/pre-release.png | Bin 0 -> 32607 bytes .../images/profiles/retired.png | Bin 0 -> 22003 bytes .../images/profiles/sandbox.png | Bin 0 -> 33010 bytes css/dependency-check-core/images/remove.gif | Bin 0 -> 607 bytes css/dependency-check-core/images/rss.png | Bin 0 -> 474 bytes css/dependency-check-core/images/update.gif | Bin 0 -> 1090 bytes .../images/window-new.png | Bin 0 -> 583 bytes .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../img/glyphicons-halflings.png | Bin 0 -> 12799 bytes css/dependency-check-core/index.html | 182 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + css/dependency-check-core/license.html | 849 +++ .../plugin-updates-report.html | 844 +++ css/dependency-check-core/pmd.html | 494 ++ css/dependency-check-core/project-info.html | 185 + .../project-reports.html | 285 + .../project-summary.html | 217 + .../surefire-report.html | 1563 +++++ css/dependency-check-core/taglist.html | 395 ++ .../xref-test/allclasses-frame.html | 146 + .../xref-test/index.html | 24 + .../EngineIntegrationTest.html | 83 + .../analyzer/AbstractAnalyzerTest.html | 79 + .../analyzer/AnalyzerServiceTest.html | 89 + .../analyzer/ArchiveAnalyzerTest.html | 282 + .../analyzer/CPEAnalyzerTest.html | 256 + .../analyzer/FileNameAnalyzerTest.html | 154 + .../analyzer/JarAnalyzerTest.html | 174 + .../analyzer/package-frame.html | 39 + .../analyzer/package-summary.html | 92 + .../concurrency/DirectorySpinLockTest.html | 130 + .../concurrency/SpinLockTask.html | 98 + .../concurrency/package-frame.html | 27 + .../concurrency/package-summary.html | 72 + .../data/cpe/BaseIndexTestCase.html | 68 + .../data/cpe/IndexEntryTest.html | 85 + .../data/cpe/package-frame.html | 27 + .../data/cpe/package-summary.html | 72 + .../dependencycheck/data/cwe/CweDBTest.html | 98 + .../data/cwe/package-frame.html | 24 + .../data/cwe/package-summary.html | 67 + .../data/lucene/FieldAnalyzerTest.html | 145 + .../data/lucene/LuceneUtilsTest.html | 109 + .../TokenPairConcatenatingFilterTest.html | 91 + .../data/lucene/UrlTokenizingFilterTest.html | 108 + .../data/lucene/package-frame.html | 33 + .../data/lucene/package-summary.html | 82 + .../data/nvdcve/BaseDBTestCase.html | 132 + .../data/nvdcve/CveDBTest.html | 119 + .../data/nvdcve/NvdCve_1_2_HandlerTest.html | 86 + .../data/nvdcve/NvdCve_2_0_HandlerTest.html | 92 + .../data/nvdcve/package-frame.html | 33 + .../data/nvdcve/package-summary.html | 82 + .../data/update/AbstractUpdateTaskTest.html | 154 + .../data/update/BatchUpdateTaskTest.html | 135 + .../data/update/DataStoreMetaInfoTest.html | 132 + .../DatabaseUpdaterIntegrationTest.html | 75 + .../data/update/NvdCveInfoTest.html | 127 + .../StandardUpdateTaskIntegrationTest.html | 95 + .../data/update/UpdateableTest.html | 174 + .../data/update/package-frame.html | 45 + .../data/update/package-summary.html | 102 + .../dependency/DependencyTest.html | 315 + .../dependency/VulnerableSoftwareTest.html | 106 + .../dependency/package-frame.html | 27 + .../dependency/package-summary.html | 72 + .../owasp/dependencycheck/package-frame.html | 24 + .../dependencycheck/package-summary.html | 67 + .../reporting/ReportGeneratorTest.html | 170 + .../reporting/package-frame.html | 24 + .../reporting/package-summary.html | 67 + .../suppression/PropertyTypeTest.html | 122 + .../suppression/SuppressionHandlerTest.html | 109 + .../suppression/SuppressionParserTest.html | 80 + .../suppression/SuppressionRuleTest.html | 485 ++ .../suppression/package-frame.html | 33 + .../suppression/package-summary.html | 82 + .../dependencycheck/utils/ChecksumTest.html | 164 + .../utils/DependencyVersionTest.html | 190 + .../utils/DependencyVersionUtilTest.html | 95 + .../utils/DownloaderIntegrationTest.html | 92 + .../dependencycheck/utils/DownloaderTest.html | 74 + .../dependencycheck/utils/FileUtilsTest.html | 95 + .../dependencycheck/utils/FilterTest.html | 108 + .../dependencycheck/utils/SettingsTest.html | 196 + .../dependencycheck/utils/package-frame.html | 45 + .../utils/package-summary.html | 102 + .../xref-test/overview-frame.html | 58 + .../xref-test/overview-summary.html | 119 + .../xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 500 ++ css/dependency-check-core/xref/index.html | 24 + .../org/owasp/dependencycheck/Engine.html | 462 ++ .../analyzer/AbstractAnalyzer.html | 82 + .../analyzer/AbstractSuppressionAnalyzer.html | 129 + .../analyzer/AnalysisException.html | 81 + .../analyzer/AnalysisPhase.html | 78 + .../dependencycheck/analyzer/Analyzer.html | 116 + .../analyzer/AnalyzerService.html | 80 + .../analyzer/ArchiveAnalyzer.html | 410 ++ .../analyzer/ArchiveExtractionException.html | 81 + .../dependencycheck/analyzer/CPEAnalyzer.html | 801 +++ .../analyzer/CpeSuppressionAnalyzer.html | 90 + .../analyzer/DependencyBundlingAnalyzer.html | 357 ++ .../analyzer/FalsePositiveAnalyzer.html | 385 ++ .../analyzer/FileNameAnalyzer.html | 147 + .../analyzer/HintAnalyzer.html | 158 + .../dependencycheck/analyzer/JarAnalyzer.html | 1135 ++++ .../analyzer/JavaScriptAnalyzer.html | 136 + .../analyzer/NvdCveAnalyzer.html | 236 + .../VulnerabilitySuppressionAnalyzer.html | 90 + .../analyzer/package-frame.html | 84 + .../analyzer/package-summary.html | 167 + .../concurrency/DirectoryLockException.html | 81 + .../concurrency/DirectorySpinLock.html | 281 + .../InvalidDirectoryException.html | 81 + .../concurrency/package-frame.html | 30 + .../concurrency/package-summary.html | 77 + .../owasp/dependencycheck/data/BaseDB.html | 259 + .../data/CachedWebDataSource.html | 52 + .../dependencycheck/data/NoDataException.html | 83 + .../dependencycheck/data/UpdateException.html | 83 + .../dependencycheck/data/UpdateService.html | 81 + .../data/cpe/CpeMemoryIndex.html | 342 ++ .../dependencycheck/data/cpe/Fields.html | 58 + .../dependencycheck/data/cpe/IndexEntry.html | 203 + .../data/cpe/IndexException.html | 81 + .../data/cpe/package-frame.html | 33 + .../data/cpe/package-summary.html | 82 + .../owasp/dependencycheck/data/cwe/CweDB.html | 101 + .../dependencycheck/data/cwe/CweHandler.html | 70 + .../data/cwe/package-frame.html | 27 + .../data/cwe/package-summary.html | 72 + .../data/lucene/AbstractTokenizingFilter.html | 99 + .../data/lucene/AlphaNumericTokenizer.html | 78 + .../data/lucene/DependencySimilarity.html | 64 + .../data/lucene/FieldAnalyzer.html | 95 + .../data/lucene/LuceneUtils.html | 125 + .../data/lucene/SearchFieldAnalyzer.html | 112 + .../data/lucene/SearchVersionAnalyzer.html | 88 + .../lucene/TokenPairConcatenatingFilter.html | 139 + .../data/lucene/UrlTokenizingFilter.html | 99 + .../data/lucene/VersionAnalyzer.html | 86 + .../data/lucene/VersionTokenizingFilter.html | 114 + .../data/lucene/package-frame.html | 54 + .../data/lucene/package-summary.html | 117 + .../data/nvdcve/CorruptDatabaseException.html | 66 + .../dependencycheck/data/nvdcve/CveDB.html | 564 ++ .../data/nvdcve/DatabaseException.html | 74 + .../data/nvdcve/InvalidDataException.html | 66 + .../data/nvdcve/NvdCve12Handler.html | 261 + .../data/nvdcve/NvdCve20Handler.html | 508 ++ .../data/nvdcve/package-frame.html | 42 + .../data/nvdcve/package-summary.html | 97 + .../dependencycheck/data/package-frame.html | 36 + .../dependencycheck/data/package-summary.html | 87 + .../data/update/AbstractUpdateTask.html | 274 + .../data/update/BatchUpdateTask.html | 286 + .../data/update/CallableDownloadTask.html | 193 + .../data/update/DataStoreMetaInfo.html | 255 + .../data/update/DatabaseUpdater.html | 101 + .../data/update/NvdCveInfo.html | 152 + .../data/update/StandardUpdateTask.html | 418 ++ .../data/update/UpdateTask.html | 65 + .../data/update/UpdateTaskFactory.html | 74 + .../data/update/Updateable.html | 195 + .../data/update/package-frame.html | 51 + .../data/update/package-summary.html | 112 + .../dependency/Dependency.html | 593 ++ .../dependencycheck/dependency/Evidence.html | 282 + .../dependency/EvidenceCollection.html | 398 ++ .../dependency/Identifier.html | 204 + .../dependencycheck/dependency/Reference.html | 167 + .../dependency/Vulnerability.html | 412 ++ .../dependency/VulnerabilityComparator.html | 60 + .../dependency/VulnerableSoftware.html | 347 ++ .../dependency/package-frame.html | 48 + .../dependency/package-summary.html | 107 + .../jaxb/pom/MavenNamespaceFilter.html | 110 + .../jaxb/pom/generated/Activation.html | 209 + .../jaxb/pom/generated/ActivationFile.html | 121 + .../jaxb/pom/generated/ActivationOS.html | 178 + .../pom/generated/ActivationProperty.html | 121 + .../jaxb/pom/generated/Build.html | 827 +++ .../jaxb/pom/generated/BuildBase.html | 581 ++ .../jaxb/pom/generated/CiManagement.html | 220 + .../jaxb/pom/generated/Contributor.html | 444 ++ .../jaxb/pom/generated/Dependency.html | 397 ++ .../pom/generated/DependencyManagement.html | 164 + .../pom/generated/DeploymentRepository.html | 209 + .../jaxb/pom/generated/Developer.html | 471 ++ .../pom/generated/DistributionManagement.html | 237 + .../jaxb/pom/generated/Exclusion.html | 117 + .../jaxb/pom/generated/Extension.html | 146 + .../jaxb/pom/generated/IssueManagement.html | 119 + .../jaxb/pom/generated/License.html | 179 + .../jaxb/pom/generated/MailingList.html | 310 + .../jaxb/pom/generated/Model.html | 1732 ++++++ .../jaxb/pom/generated/Notifier.html | 347 ++ .../jaxb/pom/generated/ObjectFactory.html | 746 +++ .../jaxb/pom/generated/Organization.html | 117 + .../jaxb/pom/generated/Parent.html | 177 + .../jaxb/pom/generated/Plugin.html | 617 ++ .../jaxb/pom/generated/PluginExecution.html | 355 ++ .../jaxb/pom/generated/PluginManagement.html | 164 + .../jaxb/pom/generated/Prerequisites.html | 90 + .../jaxb/pom/generated/Profile.html | 847 +++ .../jaxb/pom/generated/Relocation.html | 176 + .../jaxb/pom/generated/ReportPlugin.html | 384 ++ .../jaxb/pom/generated/ReportSet.html | 326 ++ .../jaxb/pom/generated/Reporting.html | 222 + .../jaxb/pom/generated/Repository.html | 237 + .../jaxb/pom/generated/RepositoryPolicy.html | 148 + .../jaxb/pom/generated/Resource.html | 355 ++ .../jaxb/pom/generated/Scm.html | 177 + .../jaxb/pom/generated/Site.html | 148 + .../jaxb/pom/generated/package-frame.html | 210 + .../jaxb/pom/generated/package-summary.html | 377 ++ .../jaxb/pom/package-frame.html | 24 + .../jaxb/pom/package-summary.html | 67 + .../owasp/dependencycheck/package-frame.html | 24 + .../dependencycheck/package-summary.html | 67 + .../reporting/ReportGenerator.html | 266 + .../reporting/VelocityLoggerRedirect.html | 122 + .../reporting/package-frame.html | 30 + .../reporting/package-summary.html | 77 + .../suppression/PropertyType.html | 200 + .../suppression/SuppressionErrorHandler.html | 107 + .../suppression/SuppressionHandler.html | 188 + .../SuppressionParseException.html | 83 + .../suppression/SuppressionParser.html | 121 + .../suppression/SuppressionRule.html | 379 ++ .../suppression/package-frame.html | 39 + .../suppression/package-summary.html | 92 + .../owasp/dependencycheck/utils/Checksum.html | 121 + .../utils/DependencyVersion.html | 269 + .../utils/DependencyVersionUtil.html | 109 + .../utils/DownloadFailedException.html | 83 + .../dependencycheck/utils/Downloader.html | 241 + .../utils/ExtractionException.html | 83 + .../dependencycheck/utils/FileUtils.html | 247 + .../owasp/dependencycheck/utils/Filter.html | 84 + .../utils/InvalidSettingException.html | 83 + .../dependencycheck/utils/LogFilter.html | 58 + .../owasp/dependencycheck/utils/LogUtils.html | 103 + .../utils/NonClosingStream.html | 63 + .../owasp/dependencycheck/utils/Settings.html | 478 ++ .../dependencycheck/utils/UrlStringUtils.html | 126 + .../dependencycheck/utils/package-frame.html | 69 + .../utils/package-summary.html | 142 + .../xref/overview-frame.html | 67 + .../xref/overview-summary.html | 134 + css/dependency-check-core/xref/stylesheet.css | 116 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + css/dependency-check-jenkins/css/print.css | 23 + css/dependency-check-jenkins/css/site.css | 1 + .../images/accessories-text-editor.png | Bin 0 -> 746 bytes css/dependency-check-jenkins/images/add.gif | Bin 0 -> 397 bytes .../images/apache-maven-project-2.png | Bin 0 -> 33442 bytes .../images/application-certificate.png | Bin 0 -> 923 bytes .../images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes css/dependency-check-jenkins/images/fix.gif | Bin 0 -> 366 bytes .../images/icon_error_sml.gif | Bin 0 -> 633 bytes .../images/icon_help_sml.gif | Bin 0 -> 1072 bytes .../images/icon_info_sml.gif | Bin 0 -> 638 bytes .../images/icon_success_sml.gif | Bin 0 -> 604 bytes .../images/icon_warning_sml.gif | Bin 0 -> 625 bytes .../images/image-x-generic.png | Bin 0 -> 662 bytes .../images/internet-web-browser.png | Bin 0 -> 1017 bytes .../images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../images/network-server.png | Bin 0 -> 536 bytes .../images/package-x-generic.png | Bin 0 -> 717 bytes .../images/profiles/pre-release.png | Bin 0 -> 32607 bytes .../images/profiles/retired.png | Bin 0 -> 22003 bytes .../images/profiles/sandbox.png | Bin 0 -> 33010 bytes .../images/remove.gif | Bin 0 -> 607 bytes css/dependency-check-jenkins/images/rss.png | Bin 0 -> 474 bytes .../images/update.gif | Bin 0 -> 1090 bytes .../images/window-new.png | Bin 0 -> 583 bytes .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../img/glyphicons-halflings.png | Bin 0 -> 12799 bytes css/dependency-check-jenkins/index.html | 173 + css/dependency-check-jenkins/license.html | 771 +++ .../project-info.html | 178 + .../project-summary.html | 207 + css/images/accessories-text-editor.png | Bin 0 -> 746 bytes css/images/add.gif | Bin 0 -> 397 bytes css/images/apache-maven-project-2.png | Bin 0 -> 33442 bytes css/images/application-certificate.png | Bin 0 -> 923 bytes css/images/contact-new.png | Bin 0 -> 736 bytes css/images/document-properties.png | Bin 0 -> 577 bytes css/images/drive-harddisk.png | Bin 0 -> 700 bytes css/images/fix.gif | Bin 0 -> 366 bytes css/images/icon_error_sml.gif | Bin 0 -> 633 bytes css/images/icon_help_sml.gif | Bin 0 -> 1072 bytes css/images/icon_info_sml.gif | Bin 0 -> 638 bytes css/images/icon_success_sml.gif | Bin 0 -> 604 bytes css/images/icon_warning_sml.gif | Bin 0 -> 625 bytes css/images/image-x-generic.png | Bin 0 -> 662 bytes css/images/internet-web-browser.png | Bin 0 -> 1017 bytes css/images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes css/images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes css/images/logos/maven-feather.png | Bin 0 -> 3330 bytes css/images/network-server.png | Bin 0 -> 536 bytes css/images/package-x-generic.png | Bin 0 -> 717 bytes css/images/profiles/pre-release.png | Bin 0 -> 32607 bytes css/images/profiles/retired.png | Bin 0 -> 22003 bytes css/images/profiles/sandbox.png | Bin 0 -> 33010 bytes css/images/remove.gif | Bin 0 -> 607 bytes css/images/rss.png | Bin 0 -> 474 bytes css/images/update.gif | Bin 0 -> 1090 bytes css/images/window-new.png | Bin 0 -> 583 bytes css/img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes css/img/glyphicons-halflings.png | Bin 0 -> 12799 bytes css/index.html | 243 + css/issue-tracking.html | 234 + css/js/apache-maven-fluido-1.3.0.min.js | 21 + css/license.html | 908 +++ css/mail-lists.html | 242 + css/modules.html | 248 + css/project-info.html | 259 + css/project-summary.html | 273 + css/source-repository.html | 247 + css/team-list.html | 279 + dependency-check-cli/arguments.html | 370 ++ .../analyzer/AbstractSuppressionAnalyzer.html | 383 ++ .../analyzer/CpeSuppressionAnalyzer.html | 343 ++ .../VulnerabilitySuppressionAnalyzer.html | 343 ++ .../AbstractSuppressionAnalyzer.html | 197 + .../class-use/CpeSuppressionAnalyzer.html | 145 + .../VulnerabilitySuppressionAnalyzer.html | 145 + .../owasp/dependencycheck/data/BaseDB.html | 524 ++ .../data/class-use/BaseDB.html | 186 + .../data/cpe/CpeMemoryIndex.html | 435 ++ .../data/cpe/IndexException.html | 305 + .../data/cpe/class-use/CpeMemoryIndex.html | 186 + .../data/cpe/class-use/IndexException.html | 186 + .../data/update/CallableDownloadTask.html | 499 ++ .../class-use/CallableDownloadTask.html | 185 + .../suppression/PropertyType.html | 472 ++ .../suppression/SuppressionErrorHandler.html | 326 ++ .../suppression/SuppressionHandler.html | 530 ++ .../SuppressionParseException.html | 306 + .../suppression/SuppressionParser.html | 350 ++ .../suppression/SuppressionRule.html | 692 +++ .../suppression/class-use/PropertyType.html | 242 + .../class-use/SuppressionErrorHandler.html | 145 + .../class-use/SuppressionHandler.html | 145 + .../class-use/SuppressionParseException.html | 187 + .../class-use/SuppressionParser.html | 145 + .../class-use/SuppressionRule.html | 246 + .../suppression/package-frame.html | 52 + .../suppression/package-summary.html | 216 + .../suppression/package-tree.html | 165 + .../suppression/package-use.html | 214 + ...org.owasp.dependencycheck.suppression.html | 38 + ...org.owasp.dependencycheck.suppression.html | 52 + ....analyzer.AbstractSuppressionAnalyzer.html | 233 + ...check.analyzer.CpeSuppressionAnalyzer.html | 167 + ...yzer.VulnerabilitySuppressionAnalyzer.html | 167 + ...org.owasp.dependencycheck.data.BaseDB.html | 440 ++ ...pendencycheck.data.cpe.CpeMemoryIndex.html | 584 ++ ...pendencycheck.data.cpe.IndexException.html | 150 + ...heck.data.update.CallableDownloadTask.html | 341 ++ ...endencycheck.suppression.PropertyType.html | 356 ++ ...k.suppression.SuppressionErrorHandler.html | 194 + ...ycheck.suppression.SuppressionHandler.html | 331 ++ ...suppression.SuppressionParseException.html | 154 + ...cycheck.suppression.SuppressionParser.html | 209 + ...encycheck.suppression.SuppressionRule.html | 657 +++ .../suppression/PropertyTypeTest.html | 122 + .../suppression/SuppressionHandlerTest.html | 109 + .../suppression/SuppressionParserTest.html | 80 + .../suppression/SuppressionRuleTest.html | 485 ++ .../suppression/package-frame.html | 33 + .../suppression/package-summary.html | 82 + .../analyzer/AbstractSuppressionAnalyzer.html | 129 + .../analyzer/CpeSuppressionAnalyzer.html | 90 + .../VulnerabilitySuppressionAnalyzer.html | 90 + .../owasp/dependencycheck/data/BaseDB.html | 259 + .../data/cpe/CpeMemoryIndex.html | 342 ++ .../data/cpe/IndexException.html | 81 + .../data/update/CallableDownloadTask.html | 193 + .../suppression/PropertyType.html | 200 + .../suppression/SuppressionErrorHandler.html | 107 + .../suppression/SuppressionHandler.html | 188 + .../SuppressionParseException.html | 83 + .../suppression/SuppressionParser.html | 121 + .../suppression/SuppressionRule.html | 379 ++ .../suppression/package-frame.html | 39 + .../suppression/package-summary.html | 92 + 1264 files changed, 297862 insertions(+) create mode 100644 css/css/apache-maven-fluido-1.3.0.min.css create mode 100644 css/css/print.css create mode 100644 css/css/site.css create mode 100644 css/dependency-check-ant/apidocs/allclasses-frame.html create mode 100644 css/dependency-check-ant/apidocs/allclasses-noframe.html create mode 100644 css/dependency-check-ant/apidocs/constant-values.html create mode 100644 css/dependency-check-ant/apidocs/deprecated-list.html create mode 100644 css/dependency-check-ant/apidocs/help-doc.html create mode 100644 css/dependency-check-ant/apidocs/index-all.html create mode 100644 css/dependency-check-ant/apidocs/index.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html create mode 100644 css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html create mode 100644 css/dependency-check-ant/apidocs/overview-tree.html create mode 100644 css/dependency-check-ant/apidocs/package-list create mode 100644 css/dependency-check-ant/apidocs/resources/inherit.gif create mode 100644 css/dependency-check-ant/apidocs/stylesheet.css create mode 100644 css/dependency-check-ant/checkstyle.html create mode 100644 css/dependency-check-ant/checkstyle.rss create mode 100644 css/dependency-check-ant/cobertura/css/help.css create mode 100644 css/dependency-check-ant/cobertura/css/main.css create mode 100644 css/dependency-check-ant/cobertura/css/sortabletable.css create mode 100644 css/dependency-check-ant/cobertura/css/source-viewer.css create mode 100644 css/dependency-check-ant/cobertura/css/tooltip.css create mode 100644 css/dependency-check-ant/cobertura/frame-packages.html create mode 100644 css/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html create mode 100644 css/dependency-check-ant/cobertura/frame-sourcefiles.html create mode 100644 css/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html create mode 100644 css/dependency-check-ant/cobertura/frame-summary.html create mode 100644 css/dependency-check-ant/cobertura/help.html create mode 100644 css/dependency-check-ant/cobertura/images/blank.png create mode 100644 css/dependency-check-ant/cobertura/images/downsimple.png create mode 100644 css/dependency-check-ant/cobertura/images/upsimple.png create mode 100644 css/dependency-check-ant/cobertura/index.html create mode 100644 css/dependency-check-ant/cobertura/js/customsorttypes.js create mode 100644 css/dependency-check-ant/cobertura/js/popup.js create mode 100644 css/dependency-check-ant/cobertura/js/sortabletable.js create mode 100644 css/dependency-check-ant/cobertura/js/stringbuilder.js create mode 100644 css/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html create mode 100644 css/dependency-check-ant/configuration.html create mode 100644 css/dependency-check-ant/cpd.html create mode 100644 css/dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css create mode 100644 css/dependency-check-ant/css/print.css create mode 100644 css/dependency-check-ant/css/site.css create mode 100644 css/dependency-check-ant/dependency-updates-report.html create mode 100644 css/dependency-check-ant/findbugs.html create mode 100644 css/dependency-check-ant/images/accessories-text-editor.png create mode 100644 css/dependency-check-ant/images/add.gif create mode 100644 css/dependency-check-ant/images/apache-maven-project-2.png create mode 100644 css/dependency-check-ant/images/application-certificate.png create mode 100644 css/dependency-check-ant/images/contact-new.png create mode 100644 css/dependency-check-ant/images/document-properties.png create mode 100644 css/dependency-check-ant/images/drive-harddisk.png create mode 100644 css/dependency-check-ant/images/fix.gif create mode 100644 css/dependency-check-ant/images/icon_error_sml.gif create mode 100644 css/dependency-check-ant/images/icon_help_sml.gif create mode 100644 css/dependency-check-ant/images/icon_info_sml.gif create mode 100644 css/dependency-check-ant/images/icon_success_sml.gif create mode 100644 css/dependency-check-ant/images/icon_warning_sml.gif create mode 100644 css/dependency-check-ant/images/image-x-generic.png create mode 100644 css/dependency-check-ant/images/internet-web-browser.png create mode 100644 css/dependency-check-ant/images/logos/build-by-maven-black.png create mode 100644 css/dependency-check-ant/images/logos/build-by-maven-white.png create mode 100644 css/dependency-check-ant/images/logos/maven-feather.png create mode 100644 css/dependency-check-ant/images/network-server.png create mode 100644 css/dependency-check-ant/images/package-x-generic.png create mode 100644 css/dependency-check-ant/images/profiles/pre-release.png create mode 100644 css/dependency-check-ant/images/profiles/retired.png create mode 100644 css/dependency-check-ant/images/profiles/sandbox.png create mode 100644 css/dependency-check-ant/images/remove.gif create mode 100644 css/dependency-check-ant/images/rss.png create mode 100644 css/dependency-check-ant/images/update.gif create mode 100644 css/dependency-check-ant/images/window-new.png create mode 100644 css/dependency-check-ant/img/glyphicons-halflings-white.png create mode 100644 css/dependency-check-ant/img/glyphicons-halflings.png create mode 100644 css/dependency-check-ant/index.html create mode 100644 css/dependency-check-ant/installation.html create mode 100644 css/dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js create mode 100644 css/dependency-check-ant/license.html create mode 100644 css/dependency-check-ant/plugin-updates-report.html create mode 100644 css/dependency-check-ant/pmd.html create mode 100644 css/dependency-check-ant/project-info.html create mode 100644 css/dependency-check-ant/project-reports.html create mode 100644 css/dependency-check-ant/project-summary.html create mode 100644 css/dependency-check-ant/surefire-report.html create mode 100644 css/dependency-check-ant/taglist.html create mode 100644 css/dependency-check-ant/usage.html create mode 100644 css/dependency-check-ant/xref-test/allclasses-frame.html create mode 100644 css/dependency-check-ant/xref-test/index.html create mode 100644 css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html create mode 100644 css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html create mode 100644 css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html create mode 100644 css/dependency-check-ant/xref-test/overview-frame.html create mode 100644 css/dependency-check-ant/xref-test/overview-summary.html create mode 100644 css/dependency-check-ant/xref-test/stylesheet.css create mode 100644 css/dependency-check-ant/xref/allclasses-frame.html create mode 100644 css/dependency-check-ant/xref/index.html create mode 100644 css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html create mode 100644 css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html create mode 100644 css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html create mode 100644 css/dependency-check-ant/xref/overview-frame.html create mode 100644 css/dependency-check-ant/xref/overview-summary.html create mode 100644 css/dependency-check-ant/xref/stylesheet.css create mode 100644 css/dependency-check-cli/apidocs/allclasses-frame.html create mode 100644 css/dependency-check-cli/apidocs/allclasses-noframe.html create mode 100644 css/dependency-check-cli/apidocs/constant-values.html create mode 100644 css/dependency-check-cli/apidocs/deprecated-list.html create mode 100644 css/dependency-check-cli/apidocs/help-doc.html create mode 100644 css/dependency-check-cli/apidocs/index-all.html create mode 100644 css/dependency-check-cli/apidocs/index.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html create mode 100644 css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html create mode 100644 css/dependency-check-cli/apidocs/overview-frame.html create mode 100644 css/dependency-check-cli/apidocs/overview-summary.html create mode 100644 css/dependency-check-cli/apidocs/overview-tree.html create mode 100644 css/dependency-check-cli/apidocs/package-list create mode 100644 css/dependency-check-cli/apidocs/resources/inherit.gif create mode 100644 css/dependency-check-cli/apidocs/stylesheet.css create mode 100644 css/dependency-check-cli/arguments.html create mode 100644 css/dependency-check-cli/checkstyle.html create mode 100644 css/dependency-check-cli/checkstyle.rss create mode 100644 css/dependency-check-cli/cobertura/css/help.css create mode 100644 css/dependency-check-cli/cobertura/css/main.css create mode 100644 css/dependency-check-cli/cobertura/css/sortabletable.css create mode 100644 css/dependency-check-cli/cobertura/css/source-viewer.css create mode 100644 css/dependency-check-cli/cobertura/css/tooltip.css create mode 100644 css/dependency-check-cli/cobertura/frame-packages.html create mode 100644 css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html create mode 100644 css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html create mode 100644 css/dependency-check-cli/cobertura/frame-sourcefiles.html create mode 100644 css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html create mode 100644 css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html create mode 100644 css/dependency-check-cli/cobertura/frame-summary.html create mode 100644 css/dependency-check-cli/cobertura/help.html create mode 100644 css/dependency-check-cli/cobertura/images/blank.png create mode 100644 css/dependency-check-cli/cobertura/images/downsimple.png create mode 100644 css/dependency-check-cli/cobertura/images/upsimple.png create mode 100644 css/dependency-check-cli/cobertura/index.html create mode 100644 css/dependency-check-cli/cobertura/js/customsorttypes.js create mode 100644 css/dependency-check-cli/cobertura/js/popup.js create mode 100644 css/dependency-check-cli/cobertura/js/sortabletable.js create mode 100644 css/dependency-check-cli/cobertura/js/stringbuilder.js create mode 100644 css/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html create mode 100644 css/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html create mode 100644 css/dependency-check-cli/cpd.html create mode 100644 css/dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css create mode 100644 css/dependency-check-cli/css/print.css create mode 100644 css/dependency-check-cli/css/site.css create mode 100644 css/dependency-check-cli/dependency-updates-report.html create mode 100644 css/dependency-check-cli/findbugs.html create mode 100644 css/dependency-check-cli/images/accessories-text-editor.png create mode 100644 css/dependency-check-cli/images/add.gif create mode 100644 css/dependency-check-cli/images/apache-maven-project-2.png create mode 100644 css/dependency-check-cli/images/application-certificate.png create mode 100644 css/dependency-check-cli/images/contact-new.png create mode 100644 css/dependency-check-cli/images/document-properties.png create mode 100644 css/dependency-check-cli/images/drive-harddisk.png create mode 100644 css/dependency-check-cli/images/fix.gif create mode 100644 css/dependency-check-cli/images/icon_error_sml.gif create mode 100644 css/dependency-check-cli/images/icon_help_sml.gif create mode 100644 css/dependency-check-cli/images/icon_info_sml.gif create mode 100644 css/dependency-check-cli/images/icon_success_sml.gif create mode 100644 css/dependency-check-cli/images/icon_warning_sml.gif create mode 100644 css/dependency-check-cli/images/image-x-generic.png create mode 100644 css/dependency-check-cli/images/internet-web-browser.png create mode 100644 css/dependency-check-cli/images/logos/build-by-maven-black.png create mode 100644 css/dependency-check-cli/images/logos/build-by-maven-white.png create mode 100644 css/dependency-check-cli/images/logos/maven-feather.png create mode 100644 css/dependency-check-cli/images/network-server.png create mode 100644 css/dependency-check-cli/images/package-x-generic.png create mode 100644 css/dependency-check-cli/images/profiles/pre-release.png create mode 100644 css/dependency-check-cli/images/profiles/retired.png create mode 100644 css/dependency-check-cli/images/profiles/sandbox.png create mode 100644 css/dependency-check-cli/images/remove.gif create mode 100644 css/dependency-check-cli/images/rss.png create mode 100644 css/dependency-check-cli/images/update.gif create mode 100644 css/dependency-check-cli/images/window-new.png create mode 100644 css/dependency-check-cli/img/glyphicons-halflings-white.png create mode 100644 css/dependency-check-cli/img/glyphicons-halflings.png create mode 100644 css/dependency-check-cli/index.html create mode 100644 css/dependency-check-cli/installation.html create mode 100644 css/dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js create mode 100644 css/dependency-check-cli/license.html create mode 100644 css/dependency-check-cli/plugin-updates-report.html create mode 100644 css/dependency-check-cli/pmd.html create mode 100644 css/dependency-check-cli/project-info.html create mode 100644 css/dependency-check-cli/project-reports.html create mode 100644 css/dependency-check-cli/project-summary.html create mode 100644 css/dependency-check-cli/surefire-report.html create mode 100644 css/dependency-check-cli/taglist.html create mode 100644 css/dependency-check-cli/xref-test/allclasses-frame.html create mode 100644 css/dependency-check-cli/xref-test/index.html create mode 100644 css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html create mode 100644 css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html create mode 100644 css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html create mode 100644 css/dependency-check-cli/xref-test/overview-frame.html create mode 100644 css/dependency-check-cli/xref-test/overview-summary.html create mode 100644 css/dependency-check-cli/xref-test/stylesheet.css create mode 100644 css/dependency-check-cli/xref/allclasses-frame.html create mode 100644 css/dependency-check-cli/xref/index.html create mode 100644 css/dependency-check-cli/xref/org/owasp/dependencycheck/App.html create mode 100644 css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html create mode 100644 css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html create mode 100644 css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html create mode 100644 css/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html create mode 100644 css/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html create mode 100644 css/dependency-check-cli/xref/overview-frame.html create mode 100644 css/dependency-check-cli/xref/overview-summary.html create mode 100644 css/dependency-check-cli/xref/stylesheet.css create mode 100644 css/dependency-check-core/apidocs/allclasses-frame.html create mode 100644 css/dependency-check-core/apidocs/allclasses-noframe.html create mode 100644 css/dependency-check-core/apidocs/constant-values.html create mode 100644 css/dependency-check-core/apidocs/deprecated-list.html create mode 100644 css/dependency-check-core/apidocs/help-doc.html create mode 100644 css/dependency-check-core/apidocs/index-all.html create mode 100644 css/dependency-check-core/apidocs/index.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveExtractionException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/NoDataException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/NoDataException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html create mode 100644 css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html create mode 100644 css/dependency-check-core/apidocs/overview-frame.html create mode 100644 css/dependency-check-core/apidocs/overview-summary.html create mode 100644 css/dependency-check-core/apidocs/overview-tree.html create mode 100644 css/dependency-check-core/apidocs/package-list create mode 100644 css/dependency-check-core/apidocs/resources/inherit.gif create mode 100644 css/dependency-check-core/apidocs/serialized-form.html create mode 100644 css/dependency-check-core/apidocs/stylesheet.css create mode 100644 css/dependency-check-core/checkstyle.html create mode 100644 css/dependency-check-core/checkstyle.rss create mode 100644 css/dependency-check-core/cobertura/css/help.css create mode 100644 css/dependency-check-core/cobertura/css/main.css create mode 100644 css/dependency-check-core/cobertura/css/sortabletable.css create mode 100644 css/dependency-check-core/cobertura/css/source-viewer.css create mode 100644 css/dependency-check-core/cobertura/css/tooltip.css create mode 100644 css/dependency-check-core/cobertura/frame-packages.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.concurrency.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.update.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html create mode 100644 css/dependency-check-core/cobertura/frame-sourcefiles.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html create mode 100644 css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html create mode 100644 css/dependency-check-core/cobertura/frame-summary.html create mode 100644 css/dependency-check-core/cobertura/help.html create mode 100644 css/dependency-check-core/cobertura/images/blank.png create mode 100644 css/dependency-check-core/cobertura/images/downsimple.png create mode 100644 css/dependency-check-core/cobertura/images/upsimple.png create mode 100644 css/dependency-check-core/cobertura/index.html create mode 100644 css/dependency-check-core/cobertura/js/customsorttypes.js create mode 100644 css/dependency-check-core/cobertura/js/popup.js create mode 100644 css/dependency-check-core/cobertura/js/sortabletable.js create mode 100644 css/dependency-check-core/cobertura/js/stringbuilder.js create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.NoDataException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html create mode 100644 css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html create mode 100644 css/dependency-check-core/cpd.html create mode 100644 css/dependency-check-core/css/apache-maven-fluido-1.3.0.min.css create mode 100644 css/dependency-check-core/css/print.css create mode 100644 css/dependency-check-core/css/site.css create mode 100644 css/dependency-check-core/dependency-updates-report.html create mode 100644 css/dependency-check-core/failsafe-report.html create mode 100644 css/dependency-check-core/findbugs.html create mode 100644 css/dependency-check-core/images/accessories-text-editor.png create mode 100644 css/dependency-check-core/images/add.gif create mode 100644 css/dependency-check-core/images/apache-maven-project-2.png create mode 100644 css/dependency-check-core/images/application-certificate.png create mode 100644 css/dependency-check-core/images/contact-new.png create mode 100644 css/dependency-check-core/images/document-properties.png create mode 100644 css/dependency-check-core/images/drive-harddisk.png create mode 100644 css/dependency-check-core/images/fix.gif create mode 100644 css/dependency-check-core/images/icon_error_sml.gif create mode 100644 css/dependency-check-core/images/icon_help_sml.gif create mode 100644 css/dependency-check-core/images/icon_info_sml.gif create mode 100644 css/dependency-check-core/images/icon_success_sml.gif create mode 100644 css/dependency-check-core/images/icon_warning_sml.gif create mode 100644 css/dependency-check-core/images/image-x-generic.png create mode 100644 css/dependency-check-core/images/internet-web-browser.png create mode 100644 css/dependency-check-core/images/logos/build-by-maven-black.png create mode 100644 css/dependency-check-core/images/logos/build-by-maven-white.png create mode 100644 css/dependency-check-core/images/logos/maven-feather.png create mode 100644 css/dependency-check-core/images/network-server.png create mode 100644 css/dependency-check-core/images/package-x-generic.png create mode 100644 css/dependency-check-core/images/profiles/pre-release.png create mode 100644 css/dependency-check-core/images/profiles/retired.png create mode 100644 css/dependency-check-core/images/profiles/sandbox.png create mode 100644 css/dependency-check-core/images/remove.gif create mode 100644 css/dependency-check-core/images/rss.png create mode 100644 css/dependency-check-core/images/update.gif create mode 100644 css/dependency-check-core/images/window-new.png create mode 100644 css/dependency-check-core/img/glyphicons-halflings-white.png create mode 100644 css/dependency-check-core/img/glyphicons-halflings.png create mode 100644 css/dependency-check-core/index.html create mode 100644 css/dependency-check-core/js/apache-maven-fluido-1.3.0.min.js create mode 100644 css/dependency-check-core/license.html create mode 100644 css/dependency-check-core/plugin-updates-report.html create mode 100644 css/dependency-check-core/pmd.html create mode 100644 css/dependency-check-core/project-info.html create mode 100644 css/dependency-check-core/project-reports.html create mode 100644 css/dependency-check-core/project-summary.html create mode 100644 css/dependency-check-core/surefire-report.html create mode 100644 css/dependency-check-core/taglist.html create mode 100644 css/dependency-check-core/xref-test/allclasses-frame.html create mode 100644 css/dependency-check-core/xref-test/index.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/CPEAnalyzerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/DirectorySpinLockTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/SpinLockTask.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_1_2_HandlerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_2_0_HandlerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/AbstractUpdateTaskTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/BatchUpdateTaskTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DataStoreMetaInfoTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DatabaseUpdaterIntegrationTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/NvdCveInfoTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/StandardUpdateTaskIntegrationTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/UpdateableTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html create mode 100644 css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html create mode 100644 css/dependency-check-core/xref-test/overview-frame.html create mode 100644 css/dependency-check-core/xref-test/overview-summary.html create mode 100644 css/dependency-check-core/xref-test/stylesheet.css create mode 100644 css/dependency-check-core/xref/allclasses-frame.html create mode 100644 css/dependency-check-core/xref/index.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectoryLockException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/NoDataException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/BatchUpdateTask.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DatabaseUpdater.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/NvdCveInfo.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/StandardUpdateTask.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTask.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/Updateable.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/ExtractionException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogFilter.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html create mode 100644 css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html create mode 100644 css/dependency-check-core/xref/overview-frame.html create mode 100644 css/dependency-check-core/xref/overview-summary.html create mode 100644 css/dependency-check-core/xref/stylesheet.css create mode 100644 css/dependency-check-jenkins/css/apache-maven-fluido-1.3.0.min.css create mode 100644 css/dependency-check-jenkins/css/print.css create mode 100644 css/dependency-check-jenkins/css/site.css create mode 100644 css/dependency-check-jenkins/images/accessories-text-editor.png create mode 100644 css/dependency-check-jenkins/images/add.gif create mode 100644 css/dependency-check-jenkins/images/apache-maven-project-2.png create mode 100644 css/dependency-check-jenkins/images/application-certificate.png create mode 100644 css/dependency-check-jenkins/images/contact-new.png create mode 100644 css/dependency-check-jenkins/images/document-properties.png create mode 100644 css/dependency-check-jenkins/images/drive-harddisk.png create mode 100644 css/dependency-check-jenkins/images/fix.gif create mode 100644 css/dependency-check-jenkins/images/icon_error_sml.gif create mode 100644 css/dependency-check-jenkins/images/icon_help_sml.gif create mode 100644 css/dependency-check-jenkins/images/icon_info_sml.gif create mode 100644 css/dependency-check-jenkins/images/icon_success_sml.gif create mode 100644 css/dependency-check-jenkins/images/icon_warning_sml.gif create mode 100644 css/dependency-check-jenkins/images/image-x-generic.png create mode 100644 css/dependency-check-jenkins/images/internet-web-browser.png create mode 100644 css/dependency-check-jenkins/images/logos/build-by-maven-black.png create mode 100644 css/dependency-check-jenkins/images/logos/build-by-maven-white.png create mode 100644 css/dependency-check-jenkins/images/logos/maven-feather.png create mode 100644 css/dependency-check-jenkins/images/network-server.png create mode 100644 css/dependency-check-jenkins/images/package-x-generic.png create mode 100644 css/dependency-check-jenkins/images/profiles/pre-release.png create mode 100644 css/dependency-check-jenkins/images/profiles/retired.png create mode 100644 css/dependency-check-jenkins/images/profiles/sandbox.png create mode 100644 css/dependency-check-jenkins/images/remove.gif create mode 100644 css/dependency-check-jenkins/images/rss.png create mode 100644 css/dependency-check-jenkins/images/update.gif create mode 100644 css/dependency-check-jenkins/images/window-new.png create mode 100644 css/dependency-check-jenkins/img/glyphicons-halflings-white.png create mode 100644 css/dependency-check-jenkins/img/glyphicons-halflings.png create mode 100644 css/dependency-check-jenkins/index.html create mode 100644 css/dependency-check-jenkins/license.html create mode 100644 css/dependency-check-jenkins/project-info.html create mode 100644 css/dependency-check-jenkins/project-summary.html create mode 100644 css/images/accessories-text-editor.png create mode 100644 css/images/add.gif create mode 100644 css/images/apache-maven-project-2.png create mode 100644 css/images/application-certificate.png create mode 100644 css/images/contact-new.png create mode 100644 css/images/document-properties.png create mode 100644 css/images/drive-harddisk.png create mode 100644 css/images/fix.gif create mode 100644 css/images/icon_error_sml.gif create mode 100644 css/images/icon_help_sml.gif create mode 100644 css/images/icon_info_sml.gif create mode 100644 css/images/icon_success_sml.gif create mode 100644 css/images/icon_warning_sml.gif create mode 100644 css/images/image-x-generic.png create mode 100644 css/images/internet-web-browser.png create mode 100644 css/images/logos/build-by-maven-black.png create mode 100644 css/images/logos/build-by-maven-white.png create mode 100644 css/images/logos/maven-feather.png create mode 100644 css/images/network-server.png create mode 100644 css/images/package-x-generic.png create mode 100644 css/images/profiles/pre-release.png create mode 100644 css/images/profiles/retired.png create mode 100644 css/images/profiles/sandbox.png create mode 100644 css/images/remove.gif create mode 100644 css/images/rss.png create mode 100644 css/images/update.gif create mode 100644 css/images/window-new.png create mode 100644 css/img/glyphicons-halflings-white.png create mode 100644 css/img/glyphicons-halflings.png create mode 100644 css/index.html create mode 100644 css/issue-tracking.html create mode 100644 css/js/apache-maven-fluido-1.3.0.min.js create mode 100644 css/license.html create mode 100644 css/mail-lists.html create mode 100644 css/modules.html create mode 100644 css/project-info.html create mode 100644 css/project-summary.html create mode 100644 css/source-repository.html create mode 100644 css/team-list.html create mode 100644 dependency-check-cli/arguments.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html diff --git a/css/css/apache-maven-fluido-1.3.0.min.css b/css/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/css/css/apache-maven-fluido-1.3.0.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.1.0 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:20px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:1;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1{font-size:36px;line-height:40px}h2{font-size:30px;line-height:40px}h3{font-size:24px;line-height:40px}h4{font-size:18px;line-height:20px}h5{font-size:14px;line-height:20px}h6{font-size:12px;line-height:20px}h1 small{font-size:24px}h2 small{font-size:18px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal dt{float:left;width:120px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:130px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:9px;font-size:14px;line-height:20px;color:#555;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}input,textarea{width:210px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #bbb}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:18px;padding-left:18px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-18px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"]{float:left}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;font-size:14px;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{margin-left:-1px;vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:160px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:160px}.form-horizontal .help-block{margin-top:10px;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-right-topleft:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table [class*=span],.row-fluid table [class*=span]{display:table-cell;float:none;margin-left:0}table .span1{float:none;width:44px;margin-left:0}table .span2{float:none;width:124px;margin-left:0}table .span3{float:none;width:204px;margin-left:0}table .span4{float:none;width:284px;margin-left:0}table .span5{float:none;width:364px;margin-left:0}table .span6{float:none;width:444px;margin-left:0}table .span7{float:none;width:524px;margin-left:0}table .span8{float:none;width:604px;margin-left:0}table .span9{float:none;width:684px;margin-left:0}table .span10{float:none;width:764px;margin-left:0}table .span11{float:none;width:844px;margin-left:0}table .span12{float:none;width:924px;margin-left:0}table .span13{float:none;width:1004px;margin-left:0}table .span14{float:none;width:1084px;margin-left:0}table .span15{float:none;width:1164px;margin-left:0}table .span16{float:none;width:1244px;margin-left:0}table .span17{float:none;width:1324px;margin-left:0}table .span18{float:none;width:1404px;margin-left:0}table .span19{float:none;width:1484px;margin-left:0}table .span20{float:none;width:1564px;margin-left:0}table .span21{float:none;width:1644px;margin-left:0}table .span22{float:none;width:1724px;margin-left:0}table .span23{float:none;width:1804px;margin-left:0}table .span24{float:none;width:1884px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.info td{background-color:#d9edf7}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav>.active>a>[class^="icon-"],.nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:linear-gradient(to bottom,#08c,#0077b3);background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover .dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;overflow:visible \9;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 14px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:9px 14px;font-size:16px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.btn-large [class^="icon-"]{margin-top:2px}.btn-small{padding:3px 9px;font-size:12px;line-height:18px}.btn-small [class^="icon-"]{margin-top:0}.btn-mini{padding:2px 6px;font-size:11px;line-height:16px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-image:-moz-linear-gradient(top,#08c,#04c);background-repeat:repeat-x;border-color:#04c #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-image:-moz-linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-image:-moz-linear-gradient(top,#444,#222);background-repeat:repeat-x;border-color:#222 #222222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-group{position:relative;*margin-left:.3em;font-size:0;white-space:nowrap}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn-group{display:inline-block;*display:inline;*zoom:1}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-top:0;border-bottom:5px solid #000}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eeeeee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #dddddd #eee #eeeeee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eeeeee #eee #dddddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#555}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar .container{width:auto}.nav-collapse.collapse{height:auto}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#555;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#555}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:6px}.navbar .btn-group .btn{margin:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;width:100%;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner,.navbar-static-top .navbar-inner{border:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#555;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-image:-moz-linear-gradient(top,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{height:40px;margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination li{display:inline}.pagination a,.pagination span{float:left;padding:0 14px;line-height:38px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination a:hover,.pagination .active a,.pagination .active span{background-color:#f5f5f5}.pagination .active a,.pagination .active span{color:#999;cursor:default}.pagination .disabled span,.pagination .disabled a,.pagination .disabled a:hover{color:#999;cursor:default;background-color:transparent}.pagination li:first-child a,.pagination li:first-child span{border-left-width:1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.pagination li:last-child a,.pagination li:last-child span{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager a{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next a{float:right}.pager .previous a{float:left}.pager .disabled a,.pager .disabled a:hover{color:#999;cursor:default;background-color:#fff}.modal-open .dropdown-menu{z-index:2050}.modal-open .dropdown.open{*z-index:2050}.modal-open .popover{z-index:2060}.modal-open .tooltip{z-index:2080}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;overflow:auto;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-bottom:10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-right:10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.label,.badge{font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{padding:1px 4px 2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding:1px 9px 2px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit p{font-size:18px;font-weight:200;line-height:30px;color:inherit}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}.clear{clear:both;visibility:hidden}.clear hr{display:none}.section p,.section p,.section dt,.section dt{margin-right:7px;margin-left:7px}#ohloh{margin-bottom:10px}#poweredBy{text-align:center}a.externalLink{background:url('../images/external.png') right center no-repeat;padding-right:18px}a.newWindow{background:url('../images/window-new.png') right center no-repeat;padding-right:18px}a.externalLink[href^=http]{background:url('../images/internet-web-browser.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".asc"]{background:url('../images/accessories-text-editor.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".jpg"],a.externalLink[href$=".jpeg"],a.externalLink[href$=".gif"],a.externalLink[href$=".png"]{background:url('../images/image-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".tar.gz"],a.externalLink[href$=".zip"]{background:url('../images/package-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".md5"],a.externalLink[href$=".sha1"]{background:url('../images/document-properties.png') right center no-repeat;padding-right:18px}a.externalLink[href^=https]{background:url('../images/application-certificate.png') right center no-repeat;padding-right:18px}a.externalLink[href^=file]{background:url('../images/drive-harddisk.png') right center no-repeat;padding-right:18px}a.externalLink[href^=ftp]{background:url('../images/network-server.png') right center no-repeat;padding-right:18px}a.externalLink[href^=mailto]{background:url('../images/contact-new.png') right center no-repeat;padding-right:18px}li.none{list-style:none}.search-query{background-image:url(http://www.google.com/cse/intl/en/images/google_custom_search_watermark.gif);background-attachment:initial;background-origin:initial;background-clip:initial;background-color:#fff;background-position:0 50%;background-repeat:no-repeat no-repeat;width:95%}body.topBarEnabled{padding-top:60px}body.topBarDisabled{padding-top:20px}.builtBy{display:block}img.builtBy{margin:10px auto}#search-form{margin-left:9px;margin-right:9px}.hero-unit h2{font-size:60px}tt{padding:0 3px 2px;font-family:Monaco,Andale Mono,Courier New,monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#fee9cc;color:rgba(0,0,0,0.75);padding:1px 3px}li{color:#404040}table.zebra-striped{background-color:#FFF}.footer{background-color:#EEE}.sidebar-nav{padding-left:0;padding-right:0}.sidebar-nav .icon-chevron-right,.sidebar-nav .icon-chevron-down{margin-top:2px;margin-right:-6px;float:right;opacity:.25}.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0;padding-left:15px}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/css/css/print.css b/css/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/css/css/print.css @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/* $Id: print.css 1201871 2011-11-14 20:18:24Z simonetripodi $ */ + +#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/css/css/site.css b/css/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/css/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/css/dependency-check-ant/apidocs/allclasses-frame.html b/css/dependency-check-ant/apidocs/allclasses-frame.html new file mode 100644 index 000000000..9422565ef --- /dev/null +++ b/css/dependency-check-ant/apidocs/allclasses-frame.html @@ -0,0 +1,34 @@ + + + + + + + +All Classes (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + +All Classes +
+ + + + + +
DependencyCheckTask +
+DependencyCheckTask.ReportFormats +
+
+ + + diff --git a/css/dependency-check-ant/apidocs/allclasses-noframe.html b/css/dependency-check-ant/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..f00af7f92 --- /dev/null +++ b/css/dependency-check-ant/apidocs/allclasses-noframe.html @@ -0,0 +1,34 @@ + + + + + + + +All Classes (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + +All Classes +
+ + + + + +
DependencyCheckTask +
+DependencyCheckTask.ReportFormats +
+
+ + + diff --git a/css/dependency-check-ant/apidocs/constant-values.html b/css/dependency-check-ant/apidocs/constant-values.html new file mode 100644 index 000000000..653424119 --- /dev/null +++ b/css/dependency-check-ant/apidocs/constant-values.html @@ -0,0 +1,145 @@ + + + + + + + +Constant Field Values (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Constant Field Values

+
+
+Contents + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/deprecated-list.html b/css/dependency-check-ant/apidocs/deprecated-list.html new file mode 100644 index 000000000..da1793be4 --- /dev/null +++ b/css/dependency-check-ant/apidocs/deprecated-list.html @@ -0,0 +1,145 @@ + + + + + + + +Deprecated List (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Deprecated API

+
+
+Contents + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/help-doc.html b/css/dependency-check-ant/apidocs/help-doc.html new file mode 100644 index 000000000..b44903155 --- /dev/null +++ b/css/dependency-check-ant/apidocs/help-doc.html @@ -0,0 +1,216 @@ + + + + + + + +API Help (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+How This API Document Is Organized

+
+This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

+Package

+
+ +

+Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

+
+

+Class/Interface

+
+ +

+Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

+Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
+ +

+Annotation Type

+
+ +

+Each annotation type has its own separate page with the following sections:

+
+ +

+Enum

+
+ +

+Each enum has its own separate page with the following sections:

+
+

+Use

+
+Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
+

+Tree (Class Hierarchy)

+
+There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object. +
+

+Deprecated API

+
+The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
+

+Index

+
+The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
+

+Prev/Next

+These links take you to the next or previous class, interface, package, or related page.

+Frames/No Frames

+These links show and hide the HTML frames. All pages are available with or without frames. +

+

+Serialized Form

+Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

+

+Constant Field Values

+The Constant Field Values page lists the static final fields and their values. +

+ + +This help file applies to API documentation generated using the standard doclet. + +
+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/index-all.html b/css/dependency-check-ant/apidocs/index-all.html new file mode 100644 index 000000000..44a9274f0 --- /dev/null +++ b/css/dependency-check-ant/apidocs/index-all.html @@ -0,0 +1,277 @@ + + + + + + + +Index (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A D E G I O S
+

+A

+
+
add(ResourceCollection) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Add an arbitrary ResourceCollection. +
+
+

+D

+
+
DependencyCheckTask - Class in org.owasp.dependencycheck.taskdefs
An Ant task definition to execute dependency-check during an Ant build.
DependencyCheckTask() - +Constructor for class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Construct a new DependencyCheckTask. +
DependencyCheckTask.ReportFormats - Class in org.owasp.dependencycheck.taskdefs
An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", + etc..
DependencyCheckTask.ReportFormats() - +Constructor for class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats +
  +
+
+

+E

+
+
execute() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
  +
+
+

+G

+
+
getApplicationName() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of applicationName. +
getConnectionTimeout() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of connectionTimeout. +
getDataDirectory() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of dataDirectory. +
getFailBuildOnCVSS() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of failBuildOnCVSS. +
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. +
getReportOutputDirectory() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of reportOutputDirectory. +
getSuppressionFile() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of suppressionFile. +
getValues() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats +
Returns the list of values for the report format. +
+
+

+I

+
+
isAutoUpdate() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of autoUpdate. +
isReference() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Learn whether the refid attribute of this element been set. +
+
+

+O

+
+
org.owasp.dependencycheck.taskdefs - package org.owasp.dependencycheck.taskdefs
+ + org.owasp.dependencycheck.taskdefs + + + This package includes the Ant task definitions.
+
+

+S

+
+
setApplicationName(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of applicationName. +
setAutoUpdate(boolean) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of autoUpdate. +
setConnectionTimeout(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of connectionTimeout. +
setDataDirectory(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of dataDirectory. +
setFailBuildOnCVSS(float) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of failBuildOnCVSS. +
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 + elsewhere. +
setReportFormat(DependencyCheckTask.ReportFormats) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of reportFormat. +
setReportOutputDirectory(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of reportOutputDirectory. +
setSuppressionFile(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of suppressionFile. +
+
+A D E G I O S + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/index.html b/css/dependency-check-ant/apidocs/index.html new file mode 100644 index 000000000..82753e608 --- /dev/null +++ b/css/dependency-check-ant/apidocs/index.html @@ -0,0 +1,37 @@ + + + + + + + +Dependency-Check Ant Task 1.0.6 API + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="org/owasp/dependencycheck/taskdefs/package-summary.html">Non-frame version.</A> + + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html new file mode 100644 index 000000000..412d01a64 --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html @@ -0,0 +1,293 @@ + + + + + + + +DependencyCheckTask.ReportFormats (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +org.owasp.dependencycheck.taskdefs +
+Class DependencyCheckTask.ReportFormats

+
+java.lang.Object
+  extended by org.apache.tools.ant.types.EnumeratedAttribute
+      extended by org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats
+
+
+
Enclosing class:
DependencyCheckTask
+
+
+
+
public static class DependencyCheckTask.ReportFormats
extends org.apache.tools.ant.types.EnumeratedAttribute
+ + +

+An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", + etc.. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class org.apache.tools.ant.types.EnumeratedAttribute
value
+  + + + + + + + + + + +
+Constructor Summary
DependencyCheckTask.ReportFormats() + +
+           
+  + + + + + + + + + + + +
+Method Summary
+ String[]getValues() + +
+          Returns the list of values for the report format.
+ + + + + + + +
Methods inherited from class org.apache.tools.ant.types.EnumeratedAttribute
containsValue, getIndex, getInstance, getValue, indexOfValue, setValue, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+DependencyCheckTask.ReportFormats

+
+public DependencyCheckTask.ReportFormats()
+
+
+ + + + + + + + +
+Method Detail
+ +

+getValues

+
+public String[] getValues()
+
+
Returns the list of values for the report format. +

+

+
Specified by:
getValues in class org.apache.tools.ant.types.EnumeratedAttribute
+
+
+ +
Returns:
the list of values for the report format
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html new file mode 100644 index 000000000..3b2a693e6 --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html @@ -0,0 +1,962 @@ + + + + + + + +DependencyCheckTask (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +org.owasp.dependencycheck.taskdefs +
+Class DependencyCheckTask

+
+java.lang.Object
+  extended by org.apache.tools.ant.ProjectComponent
+      extended by org.apache.tools.ant.Task
+          extended by org.owasp.dependencycheck.taskdefs.DependencyCheckTask
+
+
+
All Implemented Interfaces:
Cloneable
+
+
+
+
public class DependencyCheckTask
extends org.apache.tools.ant.Task
+ + +

+An Ant task definition to execute dependency-check during an Ant build. +

+ +

+

+
Author:
+
Jeremy Long (jeremy.long@owasp.org)
+
+
+ +

+ + + + + + + + + + + +
+Nested Class Summary
+static classDependencyCheckTask.ReportFormats + +
+          An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", + etc..
+ + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
+ + + + + + + +
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
+  + + + + + + + + + + +
+Constructor Summary
DependencyCheckTask() + +
+          Construct a new DependencyCheckTask.
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidadd(org.apache.tools.ant.types.ResourceCollection rc) + +
+          Add an arbitrary ResourceCollection.
+ voidexecute() + +
+           
+ StringgetApplicationName() + +
+          Get the value of applicationName.
+ StringgetConnectionTimeout() + +
+          Get the value of connectionTimeout.
+ StringgetDataDirectory() + +
+          Get the value of dataDirectory.
+ floatgetFailBuildOnCVSS() + +
+          Get the value of failBuildOnCVSS.
+ StringgetLogFile() + +
+          Get the value of logFile.
+ StringgetProxyPassword() + +
+          Get the value of proxyPassword.
+ StringgetProxyPort() + +
+          Get the value of proxyPort.
+ StringgetProxyUrl() + +
+          Get the value of proxyUrl.
+ StringgetProxyUsername() + +
+          Get the value of proxyUsername.
+ StringgetReportFormat() + +
+          Get the value of reportFormat.
+ StringgetReportOutputDirectory() + +
+          Get the value of reportOutputDirectory.
+ StringgetSuppressionFile() + +
+          Get the value of suppressionFile.
+ booleanisAutoUpdate() + +
+          Get the value of autoUpdate.
+ booleanisReference() + +
+          Learn whether the refid attribute of this element been set.
+ voidsetApplicationName(String applicationName) + +
+          Set the value of applicationName.
+ voidsetAutoUpdate(boolean autoUpdate) + +
+          Set the value of autoUpdate.
+ voidsetConnectionTimeout(String connectionTimeout) + +
+          Set the value of connectionTimeout.
+ voidsetDataDirectory(String dataDirectory) + +
+          Set the value of dataDirectory.
+ voidsetFailBuildOnCVSS(float failBuildOnCVSS) + +
+          Set the value of failBuildOnCVSS.
+ voidsetLogFile(String logFile) + +
+          Set the value of logFile.
+ voidsetProxyPassword(String proxyPassword) + +
+          Set the value of proxyPassword.
+ voidsetProxyPort(String proxyPort) + +
+          Set the value of proxyPort.
+ voidsetProxyUrl(String proxyUrl) + +
+          Set the value of proxyUrl.
+ voidsetProxyUsername(String proxyUsername) + +
+          Set the value of proxyUsername.
+ voidsetRefid(org.apache.tools.ant.types.Reference r) + +
+          Add a reference to a Path, FileSet, DirSet, or FileList defined + elsewhere.
+ voidsetReportFormat(DependencyCheckTask.ReportFormats reportFormat) + +
+          Set the value of reportFormat.
+ voidsetReportOutputDirectory(String reportOutputDirectory) + +
+          Set the value of reportOutputDirectory.
+ voidsetSuppressionFile(String suppressionFile) + +
+          Set the value of suppressionFile.
+ + + + + + + +
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
+ + + + + + + +
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+DependencyCheckTask

+
+public DependencyCheckTask()
+
+
Construct a new DependencyCheckTask. +

+

+ + + + + + + + +
+Method Detail
+ +

+add

+
+public void add(org.apache.tools.ant.types.ResourceCollection rc)
+
+
Add an arbitrary ResourceCollection. +

+

+
Parameters:
rc - the ResourceCollection to add.
Since:
+
Ant 1.7
+
+
+
+
+ +

+isReference

+
+public boolean isReference()
+
+
Learn whether the refid attribute of this element been set. +

+

+ +
Returns:
true if refid is valid.
+
+
+
+ +

+setRefid

+
+public void setRefid(org.apache.tools.ant.types.Reference r)
+
+
Add a reference to a Path, FileSet, DirSet, or FileList defined + elsewhere. +

+

+
Parameters:
r - the reference to a path, fileset, dirset or filelist.
+
+
+
+ +

+getApplicationName

+
+public String getApplicationName()
+
+
Get the value of applicationName. +

+

+ +
Returns:
the value of applicationName
+
+
+
+ +

+setApplicationName

+
+public void setApplicationName(String applicationName)
+
+
Set the value of applicationName. +

+

+
Parameters:
applicationName - new value of applicationName
+
+
+
+ +

+getDataDirectory

+
+public String getDataDirectory()
+
+
Get the value of dataDirectory. +

+

+ +
Returns:
the value of dataDirectory
+
+
+
+ +

+setDataDirectory

+
+public void setDataDirectory(String dataDirectory)
+
+
Set the value of dataDirectory. +

+

+
Parameters:
dataDirectory - new value of dataDirectory
+
+
+
+ +

+getReportOutputDirectory

+
+public String getReportOutputDirectory()
+
+
Get the value of reportOutputDirectory. +

+

+ +
Returns:
the value of reportOutputDirectory
+
+
+
+ +

+setReportOutputDirectory

+
+public void setReportOutputDirectory(String reportOutputDirectory)
+
+
Set the value of reportOutputDirectory. +

+

+
Parameters:
reportOutputDirectory - new value of reportOutputDirectory
+
+
+
+ +

+getFailBuildOnCVSS

+
+public float getFailBuildOnCVSS()
+
+
Get the value of failBuildOnCVSS. +

+

+ +
Returns:
the value of failBuildOnCVSS
+
+
+
+ +

+setFailBuildOnCVSS

+
+public void setFailBuildOnCVSS(float failBuildOnCVSS)
+
+
Set the value of failBuildOnCVSS. +

+

+
Parameters:
failBuildOnCVSS - new value of failBuildOnCVSS
+
+
+
+ +

+isAutoUpdate

+
+public boolean isAutoUpdate()
+
+
Get the value of autoUpdate. +

+

+ +
Returns:
the value of autoUpdate
+
+
+
+ +

+setAutoUpdate

+
+public void setAutoUpdate(boolean autoUpdate)
+
+
Set the value of autoUpdate. +

+

+
Parameters:
autoUpdate - new value of autoUpdate
+
+
+
+ +

+getReportFormat

+
+public String getReportFormat()
+
+
Get the value of reportFormat. +

+

+ +
Returns:
the value of reportFormat
+
+
+
+ +

+setReportFormat

+
+public void setReportFormat(DependencyCheckTask.ReportFormats reportFormat)
+
+
Set the value of reportFormat. +

+

+
Parameters:
reportFormat - new value of reportFormat
+
+
+
+ +

+getProxyUrl

+
+public String getProxyUrl()
+
+
Get the value of proxyUrl. +

+

+ +
Returns:
the value of proxyUrl
+
+
+
+ +

+setProxyUrl

+
+public void setProxyUrl(String proxyUrl)
+
+
Set the value of proxyUrl. +

+

+
Parameters:
proxyUrl - new value of proxyUrl
+
+
+
+ +

+getProxyPort

+
+public String getProxyPort()
+
+
Get the value of proxyPort. +

+

+ +
Returns:
the value of proxyPort
+
+
+
+ +

+setProxyPort

+
+public void setProxyPort(String proxyPort)
+
+
Set the value of proxyPort. +

+

+
Parameters:
proxyPort - new value of proxyPort
+
+
+
+ +

+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

+
+public String getConnectionTimeout()
+
+
Get the value of connectionTimeout. +

+

+ +
Returns:
the value of connectionTimeout
+
+
+
+ +

+setConnectionTimeout

+
+public void setConnectionTimeout(String connectionTimeout)
+
+
Set the value of connectionTimeout. +

+

+
Parameters:
connectionTimeout - new value of connectionTimeout
+
+
+
+ +

+getLogFile

+
+public String getLogFile()
+
+
Get the value of logFile. +

+

+ +
Returns:
the value of logFile
+
+
+
+ +

+setLogFile

+
+public void setLogFile(String logFile)
+
+
Set the value of logFile. +

+

+
Parameters:
logFile - new value of logFile
+
+
+
+ +

+getSuppressionFile

+
+public String getSuppressionFile()
+
+
Get the value of suppressionFile. +

+

+ +
Returns:
the value of suppressionFile
+
+
+
+ +

+setSuppressionFile

+
+public void setSuppressionFile(String suppressionFile)
+
+
Set the value of suppressionFile. +

+

+
Parameters:
suppressionFile - new value of suppressionFile
+
+
+
+ +

+execute

+
+public void execute()
+             throws org.apache.tools.ant.BuildException
+
+
+
Overrides:
execute in class org.apache.tools.ant.Task
+
+
+ +
Throws: +
org.apache.tools.ant.BuildException
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html new file mode 100644 index 000000000..0bfaf0635 --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html @@ -0,0 +1,166 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats

+
+ + + + + +
+Uses of DependencyCheckTask.ReportFormats in org.owasp.dependencycheck.taskdefs
+  +

+ + + + + + + + + +
Methods in org.owasp.dependencycheck.taskdefs with parameters of type DependencyCheckTask.ReportFormats
+ voidDependencyCheckTask.setReportFormat(DependencyCheckTask.ReportFormats reportFormat) + +
+          Set the value of reportFormat.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html new file mode 100644 index 000000000..6e644c874 --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html @@ -0,0 +1,143 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
org.owasp.dependencycheck.taskdefs.DependencyCheckTask

+
+No usage of org.owasp.dependencycheck.taskdefs.DependencyCheckTask +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html new file mode 100644 index 000000000..c1242dd71 --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -0,0 +1,35 @@ + + + + + + + +org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.taskdefs + + + + +
+Classes  + +
+DependencyCheckTask +
+DependencyCheckTask.ReportFormats
+ + + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html new file mode 100644 index 000000000..d24c7ea7b --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -0,0 +1,188 @@ + + + + + + + +org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package org.owasp.dependencycheck.taskdefs +

+ + + org.owasp.dependencycheck.taskdefs + + + This package includes the Ant task definitions. +

+See: +
+          Description +

+ + + + + + + + + + + + + +
+Class Summary
DependencyCheckTaskAn Ant task definition to execute dependency-check during an Ant build.
DependencyCheckTask.ReportFormatsAn enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", + etc..
+  + +

+

+Package org.owasp.dependencycheck.taskdefs Description +

+ +

+ + + org.owasp.dependencycheck.taskdefs + + + This package includes the Ant task definitions. + + +

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html new file mode 100644 index 000000000..2e30783ef --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html @@ -0,0 +1,156 @@ + + + + + + + +org.owasp.dependencycheck.taskdefs Class Hierarchy (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package org.owasp.dependencycheck.taskdefs +

+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html new file mode 100644 index 000000000..b3dff47a8 --- /dev/null +++ b/css/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html @@ -0,0 +1,157 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
org.owasp.dependencycheck.taskdefs

+
+ + + + + + + + +
+Classes in org.owasp.dependencycheck.taskdefs used by org.owasp.dependencycheck.taskdefs
DependencyCheckTask.ReportFormats + +
+          An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", + etc..
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/overview-tree.html b/css/dependency-check-ant/apidocs/overview-tree.html new file mode 100644 index 000000000..1127097cf --- /dev/null +++ b/css/dependency-check-ant/apidocs/overview-tree.html @@ -0,0 +1,158 @@ + + + + + + + +Class Hierarchy (Dependency-Check Ant Task 1.0.6 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For All Packages

+
+
+
Package Hierarchies:
org.owasp.dependencycheck.taskdefs
+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-ant/apidocs/package-list b/css/dependency-check-ant/apidocs/package-list new file mode 100644 index 000000000..06d7c854a --- /dev/null +++ b/css/dependency-check-ant/apidocs/package-list @@ -0,0 +1 @@ +org.owasp.dependencycheck.taskdefs diff --git a/css/dependency-check-ant/apidocs/resources/inherit.gif b/css/dependency-check-ant/apidocs/resources/inherit.gif new file mode 100644 index 0000000000000000000000000000000000000000..c814867a13deb0ca7ea2156c6ca1d5a03372af7e GIT binary patch literal 57 zcmZ?wbhEHbIIT!9-C*e{wE9>Kx3D)-;0v)C; KYxQGgum%9JOA&7X literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/apidocs/stylesheet.css b/css/dependency-check-ant/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/css/dependency-check-ant/apidocs/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF; color:#000000 } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */ +.TableRowColor { background: #FFFFFF; color:#000000 } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} + diff --git a/css/dependency-check-ant/checkstyle.html b/css/dependency-check-ant/checkstyle.html new file mode 100644 index 000000000..0e13d18b5 --- /dev/null +++ b/css/dependency-check-ant/checkstyle.html @@ -0,0 +1,278 @@ + + + + + + + + + dependency-check-ant - Checkstyle Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

Checkstyle Results

+

The following document contains the results of Checkstylerss feed

+
+

Summary

+ + + + + + + + + + +
FilesInfos InfosWarnings WarningsErrors Errors
19000
+
+

Files

+ + + + + +
FilesInfosWarningsErrors
+
+

Details

+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/checkstyle.rss b/css/dependency-check-ant/checkstyle.rss new file mode 100644 index 000000000..d901dca64 --- /dev/null +++ b/css/dependency-check-ant/checkstyle.rss @@ -0,0 +1,303 @@ + + + + + Dependency-Check Ant Task - Checkstyle report + https://github.com/jeremylong/DependencyCheck.git/dependency-check-ant + Dependency-Check Ant Task - Checkstyle report + en-us + ©2012 - 2013 OWASP + + File: 19, + Errors: 0, + Warnings: 0, + Infos: 0 + + https://github.com/jeremylong/DependencyCheck.git/dependency-check-ant/checkstyle.html + +

Click here for the full Checkstyle report.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FilesIWE
+ org/owasp/dependencycheck/taskdefs/DependencyCheckTask.java + + 0 + + 0 + + 0 +
+ target/classes/log.properties + + 0 + + 0 + + 0 +
+ src/main/resources/taskdefs.properties + + 0 + + 0 + + 0 +
+ target/dependency-check-data/data.properties + + 0 + + 0 + + 0 +
+ target/maven-archiver/pom.properties + + 0 + + 0 + + 0 +
+ src/main/resources/task.properties + + 0 + + 0 + + 0 +
+ taskdefs.properties + + 0 + + 0 + + 0 +
+ src/main/resources/log.properties + + 0 + + 0 + + 0 +
+ target/generated-classes/cobertura/cobertura.properties + + 0 + + 0 + + 0 +
+ src/main/java/org/owasp/dependencycheck/taskdefs/package-info.java + + 0 + + 0 + + 0 +
+ src/main/java/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.java + + 0 + + 0 + + 0 +
+ task.properties + + 0 + + 0 + + 0 +
+ target/generated-classes/cobertura/task.properties + + 0 + + 0 + + 0 +
+ target/generated-classes/cobertura/log.properties + + 0 + + 0 + + 0 +
+ log.properties + + 0 + + 0 + + 0 +
+ target/classes/taskdefs.properties + + 0 + + 0 + + 0 +
+ target/generated-classes/cobertura/taskdefs.properties + + 0 + + 0 + + 0 +
+ target/classes/task.properties + + 0 + + 0 + + 0 +
+ org/owasp/dependencycheck/taskdefs/package-info.java + + 0 + + 0 + + 0 +
+ +
+
+
+
+ diff --git a/css/dependency-check-ant/cobertura/css/help.css b/css/dependency-check-ant/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/css/dependency-check-ant/cobertura/css/help.css @@ -0,0 +1,22 @@ +dl { + float: left; + width: 100%; +} + +dt { + border-top: 1px solid #808080; + float: left; + font-weight: bold; + margin: 0; + padding: 1em; + width: 20%; +} + +dd { + border-top: 1px solid #808080; + float: left; + font-style: italic; + margin: 0; + padding: 1em; + width: 60%; +} diff --git a/css/dependency-check-ant/cobertura/css/main.css b/css/dependency-check-ant/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/css/dependency-check-ant/cobertura/css/main.css @@ -0,0 +1,131 @@ +@import url("help.css"); +@import url("source-viewer.css"); +@import url("tooltip.css"); + +.hidden { + display: none; +} + +a.dfn { + border-bottom: 1px dotted #00aa00; + cursor: help; +} + +a.dfn:active, a.dfn:link, a.dfn:visited { + color: #000000; + text-decoration: none; +} + +a.dfn:hover { + color: #0000ff; + text-decoration: none; +} + +body { + font-family: verdana, arial, helvetica; +} + +h1, h2, h3, h4, h5, h6 { + margin-bottom: 0.5em; +} + +h5 { + margin-top: 0.5em; +} + +div.footer { + font-size: 68%; + margin-top: 1.5em; +} + +div.percentgraph +{ + background-color: #f02020; + border: #808080 1px solid; + height: 1.3em; + margin: 0px; + padding: 0px; + width: 100px; +} + +div.percentgraph div.greenbar +{ + background-color: #00f000; + height: 1.3em; + margin: 0px; + padding: 0px; +} + +div.percentgraph div.na +{ + background-color: #eaeaea; + height: 1.3em; + margin: 0px; + padding: 0px; +} + +div.percentgraph span.text +{ + display: block; + position: absolute; + text-align: center; + width: 100px; +} + +div.separator { + height: 10px; +} + +table tr td, table tr th { + font-size: 68%; +} + +td.value table tr td { + font-size: 11px; +} + +table.percentgraph { + border: 0px; + font-size: 130%; + margin: 0px; + margin-left: auto; + margin-right: 0px; + padding: 0px; +} + +table.percentgraph tr.percentgraph { + border: 0px; + margin: 0px; + padding: 0px; +} + +table.percentgraph td.percentgraph { + border: 0px; + margin: 0px; + padding: 0px; + padding-left: 4px; +} + +table.report { + border-collapse: collapse; + width: 100%; +} + +table.report td { + border: #d0d0d0 1px solid; +} + +table.report td.heading { + background: #dcecff; + font-weight: bold; + text-align: center; +} + +table.report td.heading:hover { + background: #c0ffc0; + cursor: pointer; +} + +table.report td.value { + text-align: right; +} diff --git a/css/dependency-check-ant/cobertura/css/sortabletable.css b/css/dependency-check-ant/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/css/dependency-check-ant/cobertura/css/sortabletable.css @@ -0,0 +1,50 @@ +.sort-table { + font: Icon; + border: 1px Solid ThreeDShadow; + background: Window; + color: WindowText; +} + +.sort-table thead { + background: ButtonFace; +} + +.sort-table td { + padding: 2px 5px; +} + +.sort-table thead td { + border: 1px solid; + border-color: ButtonHighlight ButtonShadow + ButtonShadow ButtonHighlight; + cursor: default; +} + +.sort-table thead td:active { + border-color: ButtonShadow ButtonHighlight + ButtonHighlight ButtonShadow; + padding: 3px 4px 1px 6px; +} + +.sort-table thead td[_sortType=None]:active { + border-color: ButtonHighlight ButtonShadow + ButtonShadow ButtonHighlight; + padding: 2px 5px; +} + +.sort-arrow { + width: 11px; + height: 11px; + background-position: center center; + background-repeat: no-repeat; + margin: 0 2px; +} + +.sort-arrow.descending { + background-image: url("../images/downsimple.png"); + +} + +.sort-arrow.ascending { + background-image: url("../images/upsimple.png"); +} \ No newline at end of file diff --git a/css/dependency-check-ant/cobertura/css/source-viewer.css b/css/dependency-check-ant/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/css/dependency-check-ant/cobertura/css/source-viewer.css @@ -0,0 +1,73 @@ +pre.src { + background: #ffffff; + margin-top: 0px; + margin-bottom: 0px; +} + +table.src { + border: #dcdcdc 1px solid; + font-size: 16px; +} + +td.numLine { + background: #f0f0f0; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.numLineCover { + background: #80ff80; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHits { + background: #f0f0f0; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHitsCovered { + background: #80ff80; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHitsUncovered { + background: #ff9090; + border-right: #dcdcdc 1px solid; + font-weight: bold; + padding-right: 3px; + text-align: right; +} + +td.src { + width: 100%; +} + +span.comment { + color: #b22222; + font-style: italic; +} + +span.keyword { + color: #2020bf; + font-weight: bold; +} + +span.srcUncovered { + background: #ff9090; +} + +span.string { + color: #2a00ff; +} + +span.text_italic { + font-size: 12px; + font-style: italic; +} diff --git a/css/dependency-check-ant/cobertura/css/tooltip.css b/css/dependency-check-ant/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/css/dependency-check-ant/cobertura/css/tooltip.css @@ -0,0 +1,49 @@ +a.hastooltip { + border-bottom: 1px dotted #00aa00; + color: #000000; + cursor: help; + font-style: normal; + position: relative; /* This is the key */ + text-decoration: none; + z-index: 24; /* What does this do? */ +} + +a.hastooltip:active { + color: #000000; + text-decoration: none; +} + +a.hastooltip:link { + color: #000000; + text-decoration: none; +} + +a.hastooltip:hover { + background-color: #a0b8ff; + color: #000000; + text-decoration: none; + z-index: 25; +} + +a.hastooltip:visited { + color: #000000; + text-decoration: none; +} + +a.hastooltip span { + display: none; +} + +a.hastooltip:hover span { + background-color: #eeeeee; + border: 1px solid #000000; + color: #000000; + display: block; + padding: 5px; + left: -15.2em; + position: absolute; + text-align: center; + text-decoration: none; + top: 2em; + width: 20em; +} diff --git a/css/dependency-check-ant/cobertura/frame-packages.html b/css/dependency-check-ant/cobertura/frame-packages.html new file mode 100644 index 000000000..f6f24f05d --- /dev/null +++ b/css/dependency-check-ant/cobertura/frame-packages.html @@ -0,0 +1,20 @@ + + + + +Coverage Report + + + +
Packages
+ + + + + + + +
All
org.owasp.dependencycheck.taskdefs
+ + diff --git a/css/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html b/css/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html new file mode 100644 index 000000000..1fa3510f1 --- /dev/null +++ b/css/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
+org.owasp.dependencycheck.taskdefs +
+
 
+
Classes
+ + + + + + +
DependencyCheckTask (54%)
+ + diff --git a/css/dependency-check-ant/cobertura/frame-sourcefiles.html b/css/dependency-check-ant/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..18211c2dd --- /dev/null +++ b/css/dependency-check-ant/cobertura/frame-sourcefiles.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
+All Packages +
+
 
+
Classes
+ + + + + + +
DependencyCheckTask (54%)
+ + diff --git a/css/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html b/css/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html new file mode 100644 index 000000000..411eeedba --- /dev/null +++ b/css/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html @@ -0,0 +1,43 @@ + + + + +Coverage Report + + + + + + + +
Coverage Report - org.owasp.dependencycheck.taskdefs
+
 
+ + + + + +
Package # Classes Line Coverage Branch Coverage Complexity
org.owasp.dependencycheck.taskdefs2
54%
81/150
38%
26/68
2.216
+ +
 
+ + + + + + + +
Classes in this Package Line Coverage Branch Coverage Complexity
DependencyCheckTask
51%
74/143
36%
24/66
2.216
DependencyCheckTask$ReportFormats
100%
7/7
100%
2/2
2.216
+ + + + diff --git a/css/dependency-check-ant/cobertura/frame-summary.html b/css/dependency-check-ant/cobertura/frame-summary.html new file mode 100644 index 000000000..330339eaa --- /dev/null +++ b/css/dependency-check-ant/cobertura/frame-summary.html @@ -0,0 +1,30 @@ + + + + +Coverage Report + + + + + + + +
Coverage Report - All Packages
+
 
+ + + + + + +
Package # Classes Line Coverage Branch Coverage Complexity
All Packages2
54%
81/150
38%
26/68
2.216
org.owasp.dependencycheck.taskdefs2
54%
81/150
38%
26/68
2.216
+ + + + diff --git a/css/dependency-check-ant/cobertura/help.html b/css/dependency-check-ant/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/css/dependency-check-ant/cobertura/help.html @@ -0,0 +1,31 @@ + + + + + + +Coverage Report - Help + + + + +
+ +
Line Coverage
+
The percent of lines executed by this test run.
+ +
Branch Coverage
+
The percent of branches executed by this test run.
+ +
Complexity
+
Average McCabe's cyclomatic code complexity for all methods. This is basically a count of the number of different code paths in a method (incremented by 1 for each if statement, while loop, etc.)
+ +
N/A
+
Line coverage and branch coverage will appear as "Not Applicable" when Cobertura can not find line number information in the .class file. This happens for stub and skeleton classes, interfaces, or when the class was not compiled with "debug=true."
+ +
+ + + + diff --git a/css/dependency-check-ant/cobertura/images/blank.png b/css/dependency-check-ant/cobertura/images/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..cee9cd37a10ebe8d7fe6a6ed0d8d74a2889f6e9f GIT binary patch literal 144 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*$P6UUaa~gcQtTz3zOL*Scz7A*wL3%Pb^(Pr z3p^r=85p=efH0%e8j~47LAC&&5LY1m|NsA`H|O64vY1MO{DS{8Jl$^K1?2I2x;TbZ j+)DoO|34!$s|3ToYTbu_uiJV9r5HS2{an^LB{Ts5Dp4nx literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/cobertura/images/downsimple.png b/css/dependency-check-ant/cobertura/images/downsimple.png new file mode 100644 index 0000000000000000000000000000000000000000..4accf927bed9f998040ada65a35695bb758c78f1 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^96-#@!3-ps+W+JLDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5XI0Jk_T>t<7-_p_onv&0MrCXRCq913h|0^A-< nECO>F1soiX9N|!6VB%rmQep^;zw7l7Xas|&tDnm{r-UW|t_U_c literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/cobertura/images/upsimple.png b/css/dependency-check-ant/cobertura/images/upsimple.png new file mode 100644 index 0000000000000000000000000000000000000000..c82b76ffe2c9d41a2f38a1c1115013cc0852f522 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^96-#@!3-ps+W+JLDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5XI0Jk_Tw7XN{{R0EFVdQ&MBb@01yl}4*&oF literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/cobertura/index.html b/css/dependency-check-ant/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/css/dependency-check-ant/cobertura/index.html @@ -0,0 +1,25 @@ + + + + + +Coverage Report + + + + + + + + + + + <body> + <p>This document is designed to be viewed using the frames feature. If you see this message, you are using a frame-incapable web client.</p> + <p><a href="frame-summary.html">Click here to view a non-frame version.</a></p> + </body> + + + + diff --git a/css/dependency-check-ant/cobertura/js/customsorttypes.js b/css/dependency-check-ant/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/css/dependency-check-ant/cobertura/js/customsorttypes.js @@ -0,0 +1,65 @@ +/* + * Cobertura - http://cobertura.sourceforge.net/ + * + * Copyright (C) 2005 Mark Doliner + * Copyright (C) 2005 Olivier Parent + * + * Cobertura is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, + * or (at your option) any later version. + * + * Cobertura is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Cobertura; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +function percentageSortType( s ) +{ + var ret; + var i = s.indexOf( "%" ); + + if (i != -1) { + s = s.substr( 0, i ); + } + ret = parseFloat(s); + if (isNaN(ret)) { + ret = -1; + } + + return ret; +} + +SortableTable.prototype.addSortType( "Percentage", percentageSortType ); + + + +// This is needed for correctly sorting numbers in different +// locales. The stock number converter only expects to sort +// numbers which use a period as a separator instead of a +// comma (like French). +function formattedNumberSortType( s ) +{ + var ret; + var i = s.indexOf(';'); + + if (i != -1) { + s = s.substring(0, i); + } + ret = parseFloat(s); + if (isNaN(ret)) { + return -1; + } + + return ret; +} + +SortableTable.prototype.addSortType( "FormattedNumber", formattedNumberSortType ); diff --git a/css/dependency-check-ant/cobertura/js/popup.js b/css/dependency-check-ant/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/css/dependency-check-ant/cobertura/js/popup.js @@ -0,0 +1,8 @@ +var newwindow; +function popupwindow(url) +{ + newwindow=window.open(url,'name','height=500,width=500,resizable=yes,scrollbars=yes'); + if (window.focus) { + newwindow.focus() + } +} diff --git a/css/dependency-check-ant/cobertura/js/sortabletable.js b/css/dependency-check-ant/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/css/dependency-check-ant/cobertura/js/sortabletable.js @@ -0,0 +1,455 @@ + +/*----------------------------------------------------------------------------\ +| Sortable Table 1.12 | +|-----------------------------------------------------------------------------| +| Created by Erik Arvidsson | +| (http://webfx.eae.net/contact.html#erik) | +| For WebFX (http://webfx.eae.net/) | +|-----------------------------------------------------------------------------| +| A DOM 1 based script that allows an ordinary HTML table to be sortable. | +|-----------------------------------------------------------------------------| +| Copyright (c) 1998 - 2004 Erik Arvidsson | +|-----------------------------------------------------------------------------| +| This software is provided "as is", without warranty of any kind, express or | +| implied, including but not limited to the warranties of merchantability, | +| fitness for a particular purpose and noninfringement. In no event shall the | +| authors or copyright holders be liable for any claim, damages or other | +| liability, whether in an action of contract, tort or otherwise, arising | +| from, out of or in connection with the software or the use or other | +| dealings in the software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| This software is available under the three different licenses mentioned | +| below. To use this software you must chose, and qualify, for one of those. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Non-Commercial License http://webfx.eae.net/license.html | +| Permits anyone the right to use the software in a non-commercial context | +| free of charge. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Commercial license http://webfx.eae.net/commercial.html | +| Permits the license holder the right to use the software in a commercial | +| context. Such license must be specifically obtained, however it's valid for | +| any number of implementations of the licensed software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| GPL - The GNU General Public License http://www.gnu.org/licenses/gpl.txt | +| Permits anyone the right to use and modify the software without limitations | +| as long as proper credits are given and the original and modified source | +| code are included. Requires that the final product, software derivate from | +| the original source or any software utilizing a GPL component, such as | +| this, is also licensed under the GPL license. | +|-----------------------------------------------------------------------------| +| 2003-01-10 | First version | +| 2003-01-19 | Minor changes to the date parsing | +| 2003-01-28 | JScript 5.0 fixes (no support for 'in' operator) | +| 2003-02-01 | Sloppy typo like error fixed in getInnerText | +| 2003-07-04 | Added workaround for IE cellIndex bug. | +| 2003-11-09 | The bDescending argument to sort was not correctly working | +| | Using onclick DOM0 event if no support for addEventListener | +| | or attachEvent | +| 2004-01-13 | Adding addSortType and removeSortType which makes it a lot | +| | easier to add new, custom sort types. | +| 2004-01-27 | Switch to use descending = false as the default sort order. | +| | Change defaultDescending to suit your needs. | +| 2004-03-14 | Improved sort type None look and feel a bit | +| 2004-08-26 | Made the handling of tBody and tHead more flexible. Now you | +| | can use another tHead or no tHead, and you can chose some | +| | other tBody. | +|-----------------------------------------------------------------------------| +| Created 2003-01-10 | All changes are in the log above. | Updated 2004-08-26 | +\----------------------------------------------------------------------------*/ + + +function SortableTable(oTable, oSortTypes) { + + this.sortTypes = oSortTypes || []; + + this.sortColumn = null; + this.descending = null; + + var oThis = this; + this._headerOnclick = function (e) { + oThis.headerOnclick(e); + }; + + if (oTable) { + this.setTable( oTable ); + this.document = oTable.ownerDocument || oTable.document; + } + else { + this.document = document; + } + + + // only IE needs this + var win = this.document.defaultView || this.document.parentWindow; + this._onunload = function () { + oThis.destroy(); + }; + if (win && typeof win.attachEvent != "undefined") { + win.attachEvent("onunload", this._onunload); + } +} + +SortableTable.gecko = navigator.product == "Gecko"; +SortableTable.msie = /msie/i.test(navigator.userAgent); +// Mozilla is faster when doing the DOM manipulations on +// an orphaned element. MSIE is not +SortableTable.removeBeforeSort = SortableTable.gecko; + +SortableTable.prototype.onsort = function () {}; + +// default sort order. true -> descending, false -> ascending +SortableTable.prototype.defaultDescending = false; + +// shared between all instances. This is intentional to allow external files +// to modify the prototype +SortableTable.prototype._sortTypeInfo = {}; + +SortableTable.prototype.setTable = function (oTable) { + if ( this.tHead ) + this.uninitHeader(); + this.element = oTable; + this.setTHead( oTable.tHead ); + this.setTBody( oTable.tBodies[0] ); +}; + +SortableTable.prototype.setTHead = function (oTHead) { + if (this.tHead && this.tHead != oTHead ) + this.uninitHeader(); + this.tHead = oTHead; + this.initHeader( this.sortTypes ); +}; + +SortableTable.prototype.setTBody = function (oTBody) { + this.tBody = oTBody; +}; + +SortableTable.prototype.setSortTypes = function ( oSortTypes ) { + if ( this.tHead ) + this.uninitHeader(); + this.sortTypes = oSortTypes || []; + if ( this.tHead ) + this.initHeader( this.sortTypes ); +}; + +// adds arrow containers and events +// also binds sort type to the header cells so that reordering columns does +// not break the sort types +SortableTable.prototype.initHeader = function (oSortTypes) { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var doc = this.tHead.ownerDocument || this.tHead.document; + this.sortTypes = oSortTypes || []; + var l = cells.length; + var img, c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (this.sortTypes[i] != null && this.sortTypes[i] != "None") { + img = doc.createElement("IMG"); + img.src = "images/blank.png"; + c.appendChild(img); + if (this.sortTypes[i] != null) + c._sortType = this.sortTypes[i]; + if (typeof c.addEventListener != "undefined") + c.addEventListener("click", this._headerOnclick, false); + else if (typeof c.attachEvent != "undefined") + c.attachEvent("onclick", this._headerOnclick); + else + c.onclick = this._headerOnclick; + } + else + { + c.setAttribute( "_sortType", oSortTypes[i] ); + c._sortType = "None"; + } + } + this.updateHeaderArrows(); +}; + +// remove arrows and events +SortableTable.prototype.uninitHeader = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (c._sortType != null && c._sortType != "None") { + c.removeChild(c.lastChild); + if (typeof c.removeEventListener != "undefined") + c.removeEventListener("click", this._headerOnclick, false); + else if (typeof c.detachEvent != "undefined") + c.detachEvent("onclick", this._headerOnclick); + c._sortType = null; + c.removeAttribute( "_sortType" ); + } + } +}; + +SortableTable.prototype.updateHeaderArrows = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var img; + for (var i = 0; i < l; i++) { + if (cells[i]._sortType != null && cells[i]._sortType != "None") { + img = cells[i].lastChild; + if (i == this.sortColumn) + img.className = "sort-arrow " + (this.descending ? "descending" : "ascending"); + else + img.className = "sort-arrow"; + } + } +}; + +SortableTable.prototype.headerOnclick = function (e) { + // find TD element + var el = e.target || e.srcElement; + while (el.tagName != "TD") + el = el.parentNode; + + this.sort(SortableTable.msie ? SortableTable.getCellIndex(el) : el.cellIndex); +}; + +// IE returns wrong cellIndex when columns are hidden +SortableTable.getCellIndex = function (oTd) { + var cells = oTd.parentNode.childNodes + var l = cells.length; + var i; + for (i = 0; cells[i] != oTd && i < l; i++) + ; + return i; +}; + +SortableTable.prototype.getSortType = function (nColumn) { + return this.sortTypes[nColumn] || "String"; +}; + +// only nColumn is required +// if bDescending is left out the old value is taken into account +// if sSortType is left out the sort type is found from the sortTypes array + +SortableTable.prototype.sort = function (nColumn, bDescending, sSortType) { + if (!this.tBody) return; + if (sSortType == null) + sSortType = this.getSortType(nColumn); + + // exit if None + if (sSortType == "None") + return; + + if (bDescending == null) { + if (this.sortColumn != nColumn) + this.descending = this.defaultDescending; + else + this.descending = !this.descending; + } + else + this.descending = bDescending; + + this.sortColumn = nColumn; + + if (typeof this.onbeforesort == "function") + this.onbeforesort(); + + var f = this.getSortFunction(sSortType, nColumn); + var a = this.getCache(sSortType, nColumn); + var tBody = this.tBody; + + a.sort(f); + + if (this.descending) + a.reverse(); + + if (SortableTable.removeBeforeSort) { + // remove from doc + var nextSibling = tBody.nextSibling; + var p = tBody.parentNode; + p.removeChild(tBody); + } + + // insert in the new order + var l = a.length; + for (var i = 0; i < l; i++) + tBody.appendChild(a[i].element); + + if (SortableTable.removeBeforeSort) { + // insert into doc + p.insertBefore(tBody, nextSibling); + } + + this.updateHeaderArrows(); + + this.destroyCache(a); + + if (typeof this.onsort == "function") + this.onsort(); +}; + +SortableTable.prototype.asyncSort = function (nColumn, bDescending, sSortType) { + var oThis = this; + this._asyncsort = function () { + oThis.sort(nColumn, bDescending, sSortType); + }; + window.setTimeout(this._asyncsort, 1); +}; + +SortableTable.prototype.getCache = function (sType, nColumn) { + if (!this.tBody) return []; + var rows = this.tBody.rows; + var l = rows.length; + var a = new Array(l); + var r; + for (var i = 0; i < l; i++) { + r = rows[i]; + a[i] = { + value: this.getRowValue(r, sType, nColumn), + element: r + }; + }; + return a; +}; + +SortableTable.prototype.destroyCache = function (oArray) { + var l = oArray.length; + for (var i = 0; i < l; i++) { + oArray[i].value = null; + oArray[i].element = null; + oArray[i] = null; + } +}; + +SortableTable.prototype.getRowValue = function (oRow, sType, nColumn) { + // if we have defined a custom getRowValue use that + if (this._sortTypeInfo[sType] && this._sortTypeInfo[sType].getRowValue) + return this._sortTypeInfo[sType].getRowValue(oRow, nColumn); + + var s; + var c = oRow.cells[nColumn]; + if (typeof c.innerText != "undefined") + s = c.innerText; + else + s = SortableTable.getInnerText(c); + return this.getValueFromString(s, sType); +}; + +SortableTable.getInnerText = function (oNode) { + var s = ""; + var cs = oNode.childNodes; + var l = cs.length; + for (var i = 0; i < l; i++) { + switch (cs[i].nodeType) { + case 1: //ELEMENT_NODE + s += SortableTable.getInnerText(cs[i]); + break; + case 3: //TEXT_NODE + s += cs[i].nodeValue; + break; + } + } + return s; +}; + +SortableTable.prototype.getValueFromString = function (sText, sType) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].getValueFromString( sText ); + return sText; + /* + switch (sType) { + case "Number": + return Number(sText); + case "CaseInsensitiveString": + return sText.toUpperCase(); + case "Date": + var parts = sText.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); + } + return sText; + */ + }; + +SortableTable.prototype.getSortFunction = function (sType, nColumn) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].compare; + return SortableTable.basicCompare; +}; + +SortableTable.prototype.destroy = function () { + this.uninitHeader(); + var win = this.document.parentWindow; + if (win && typeof win.detachEvent != "undefined") { // only IE needs this + win.detachEvent("onunload", this._onunload); + } + this._onunload = null; + this.element = null; + this.tHead = null; + this.tBody = null; + this.document = null; + this._headerOnclick = null; + this.sortTypes = null; + this._asyncsort = null; + this.onsort = null; +}; + +// Adds a sort type to all instance of SortableTable +// sType : String - the identifier of the sort type +// fGetValueFromString : function ( s : string ) : T - A function that takes a +// string and casts it to a desired format. If left out the string is just +// returned +// fCompareFunction : function ( n1 : T, n2 : T ) : Number - A normal JS sort +// compare function. Takes two values and compares them. If left out less than, +// <, compare is used +// fGetRowValue : function( oRow : HTMLTRElement, nColumn : int ) : T - A function +// that takes the row and the column index and returns the value used to compare. +// If left out then the innerText is first taken for the cell and then the +// fGetValueFromString is used to convert that string the desired value and type + +SortableTable.prototype.addSortType = function (sType, fGetValueFromString, fCompareFunction, fGetRowValue) { + this._sortTypeInfo[sType] = { + type: sType, + getValueFromString: fGetValueFromString || SortableTable.idFunction, + compare: fCompareFunction || SortableTable.basicCompare, + getRowValue: fGetRowValue + }; +}; + +// this removes the sort type from all instances of SortableTable +SortableTable.prototype.removeSortType = function (sType) { + delete this._sortTypeInfo[sType]; +}; + +SortableTable.basicCompare = function compare(n1, n2) { + if (n1.value < n2.value) + return -1; + if (n2.value < n1.value) + return 1; + return 0; +}; + +SortableTable.idFunction = function (x) { + return x; +}; + +SortableTable.toUpperCase = function (s) { + return s.toUpperCase(); +}; + +SortableTable.toDate = function (s) { + var parts = s.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); +}; + + +// add sort types +SortableTable.prototype.addSortType("Number", Number); +SortableTable.prototype.addSortType("CaseInsensitiveString", SortableTable.toUpperCase); +SortableTable.prototype.addSortType("Date", SortableTable.toDate); +SortableTable.prototype.addSortType("String"); +// None is a special case diff --git a/css/dependency-check-ant/cobertura/js/stringbuilder.js b/css/dependency-check-ant/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/css/dependency-check-ant/cobertura/js/stringbuilder.js @@ -0,0 +1,79 @@ +/*----------------------------------------------------------------------------\ +| String Builder 1.02 | +|-----------------------------------------------------------------------------| +| Created by Erik Arvidsson | +| (http://webfx.eae.net/contact.html#erik) | +| For WebFX (http://webfx.eae.net/) | +|-----------------------------------------------------------------------------| +| A class that allows more efficient building of strings than concatenation. | +|-----------------------------------------------------------------------------| +| Copyright (c) 1999 - 2002 Erik Arvidsson | +|-----------------------------------------------------------------------------| +| This software is provided "as is", without warranty of any kind, express or | +| implied, including but not limited to the warranties of merchantability, | +| fitness for a particular purpose and noninfringement. In no event shall the | +| authors or copyright holders be liable for any claim, damages or other | +| liability, whether in an action of contract, tort or otherwise, arising | +| from, out of or in connection with the software or the use or other | +| dealings in the software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| This software is available under the three different licenses mentioned | +| below. To use this software you must chose, and qualify, for one of those. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Non-Commercial License http://webfx.eae.net/license.html | +| Permits anyone the right to use the software in a non-commercial context | +| free of charge. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Commercial license http://webfx.eae.net/commercial.html | +| Permits the license holder the right to use the software in a commercial | +| context. Such license must be specifically obtained, however it's valid for | +| any number of implementations of the licensed software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| GPL - The GNU General Public License http://www.gnu.org/licenses/gpl.txt | +| Permits anyone the right to use and modify the software without limitations | +| as long as proper credits are given and the original and modified source | +| code are included. Requires that the final product, software derivate from | +| the original source or any software utilizing a GPL component, such as | +| this, is also licensed under the GPL license. | +|-----------------------------------------------------------------------------| +| 2000-10-02 | First version | +| 2000-10-05 | Added a cache of the string so that it does not need to be | +| | regenerated every time in toString | +| 2002-10-03 | Added minor improvement in the toString method | +|-----------------------------------------------------------------------------| +| Created 2000-10-02 | All changes are in the log above. | Updated 2002-10-03 | +\----------------------------------------------------------------------------*/ function StringBuilder(sString) { + + // public + this.length = 0; + + this.append = function (sString) { + // append argument + this.length += (this._parts[this._current++] = String(sString)).length; + + // reset cache + this._string = null; + return this; + }; + + this.toString = function () { + if (this._string != null) + return this._string; + + var s = this._parts.join(""); + this._parts = [s]; + this._current = 1; + this.length = s.length; + + return this._string = s; + }; + + // private + this._current = 0; + this._parts = []; + this._string = null; // used to cache the string + + // init + if (sString != null) + this.append(sString); +} diff --git a/css/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html b/css/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html new file mode 100644 index 000000000..6c104fb65 --- /dev/null +++ b/css/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html @@ -0,0 +1,1061 @@ + + + + +Coverage Report + + + + +
Coverage Report - org.owasp.dependencycheck.taskdefs.DependencyCheckTask
+
 
+ + + + + +
Classes in this File Line Coverage Branch Coverage Complexity
DependencyCheckTask
51%
74/143
36%
24/66
2.216
DependencyCheckTask$ReportFormats
100%
7/7
100%
2/2
2.216
+
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 1  
 /*
 2  
  * This file is part of dependency-check-ant.
 3  
  *
 4  
  * Dependency-check-ant is free software: you can redistribute it and/or modify it
 5  
  * under the terms of the GNU General Public License as published by the Free
 6  
  * Software Foundation, either version 3 of the License, or (at your option) any
 7  
  * later version.
 8  
  *
 9  
  * Dependency-check-ant is distributed in the hope that it will be useful, but
 10  
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 11  
  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 12  
  * details.
 13  
  *
 14  
  * You should have received a copy of the GNU General Public License along with
 15  
  * dependency-check-ant. If not, see http://www.gnu.org/licenses/.
 16  
  *
 17  
  * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
 18  
  */
 19  
 package org.owasp.dependencycheck.taskdefs;
 20  
 
 21  
 import java.io.File;
 22  
 import java.io.IOException;
 23  
 import java.io.InputStream;
 24  
 import java.util.List;
 25  
 import java.util.logging.Level;
 26  
 import java.util.logging.Logger;
 27  
 import org.apache.tools.ant.BuildException;
 28  
 import org.apache.tools.ant.Task;
 29  
 import org.apache.tools.ant.types.EnumeratedAttribute;
 30  
 import org.apache.tools.ant.types.Reference;
 31  
 import org.apache.tools.ant.types.Resource;
 32  
 import org.apache.tools.ant.types.ResourceCollection;
 33  
 import org.apache.tools.ant.types.resources.FileProvider;
 34  
 import org.apache.tools.ant.types.resources.Resources;
 35  
 import org.owasp.dependencycheck.Engine;
 36  
 import org.owasp.dependencycheck.dependency.Dependency;
 37  
 import org.owasp.dependencycheck.dependency.Vulnerability;
 38  
 import org.owasp.dependencycheck.reporting.ReportGenerator;
 39  
 import org.owasp.dependencycheck.reporting.ReportGenerator.Format;
 40  
 import org.owasp.dependencycheck.utils.LogUtils;
 41  
 import org.owasp.dependencycheck.utils.Settings;
 42  
 
 43  
 /**
 44  
  * An Ant task definition to execute dependency-check during an Ant build.
 45  
  *
 46  
  * @author Jeremy Long (jeremy.long@owasp.org)
 47  
  */
 48  
 public class DependencyCheckTask extends Task {
 49  
 
 50  
     /**
 51  
      * The properties file location.
 52  
      */
 53  
     private static final String PROPERTIES_FILE = "task.properties";
 54  
     /**
 55  
      * Name of the logging properties file.
 56  
      */
 57  
     private static final String LOG_PROPERTIES_FILE = "log.properties";
 58  
 
 59  
     /**
 60  
      * Construct a new DependencyCheckTask.
 61  
      */
 62  
     public DependencyCheckTask() {
 63  4
         super();
 64  4
     }
 65  
     //The following code was copied Apache Ant PathConvert
 66  
     //BEGIN COPY from org.apache.tools.ant.taskdefs.PathConvert
 67  
     /**
 68  
      * Path to be converted
 69  
      */
 70  4
     private Resources path = null;
 71  
     /**
 72  
      * Reference to path/fileset to convert
 73  
      */
 74  4
     private Reference refid = null;
 75  
 
 76  
     /**
 77  
      * Add an arbitrary ResourceCollection.
 78  
      *
 79  
      * @param rc the ResourceCollection to add.
 80  
      * @since Ant 1.7
 81  
      */
 82  
     public void add(ResourceCollection rc) {
 83  4
         if (isReference()) {
 84  0
             throw new BuildException("Nested elements are not allowed when using the refid attribute.");
 85  
         }
 86  4
         getPath().add(rc);
 87  4
     }
 88  
 
 89  
     /**
 90  
      * Returns the path. If the path has not been initialized yet, this class is
 91  
      * synchronized, and will instantiate the path object.
 92  
      *
 93  
      * @return the path
 94  
      */
 95  
     private synchronized Resources getPath() {
 96  4
         if (path == null) {
 97  3
             path = new Resources(getProject());
 98  3
             path.setCache(true);
 99  
         }
 100  4
         return path;
 101  
     }
 102  
 
 103  
     /**
 104  
      * Learn whether the refid attribute of this element been set.
 105  
      *
 106  
      * @return true if refid is valid.
 107  
      */
 108  
     public boolean isReference() {
 109  8
         return refid != null;
 110  
     }
 111  
 
 112  
     /**
 113  
      * Add a reference to a Path, FileSet, DirSet, or FileList defined
 114  
      * elsewhere.
 115  
      *
 116  
      * @param r the reference to a path, fileset, dirset or filelist.
 117  
      */
 118  
     public void setRefid(Reference r) {
 119  0
         if (path != null) {
 120  0
             throw new BuildException("Nested elements are not allowed when using the refid attribute.");
 121  
         }
 122  0
         refid = r;
 123  0
     }
 124  
 
 125  
     /**
 126  
      * If this is a reference, this method will add the referenced resource
 127  
      * collection to the collection of paths.
 128  
      *
 129  
      * @throws BuildException if the reference is not to a resource collection
 130  
      */
 131  
     private void dealWithReferences() throws BuildException {
 132  4
         if (isReference()) {
 133  0
             final Object o = refid.getReferencedObject(getProject());
 134  0
             if (!(o instanceof ResourceCollection)) {
 135  0
                 throw new BuildException("refid '" + refid.getRefId()
 136  
                         + "' does not refer to a resource collection.");
 137  
             }
 138  0
             getPath().add((ResourceCollection) o);
 139  
         }
 140  4
     }
 141  
     // END COPY from org.apache.tools.ant.taskdefs
 142  
     /**
 143  
      * The application name for the report.
 144  
      */
 145  4
     private String applicationName = "Dependency-Check";
 146  
 
 147  
     /**
 148  
      * Get the value of applicationName.
 149  
      *
 150  
      * @return the value of applicationName
 151  
      */
 152  
     public String getApplicationName() {
 153  0
         return applicationName;
 154  
     }
 155  
 
 156  
     /**
 157  
      * Set the value of applicationName.
 158  
      *
 159  
      * @param applicationName new value of applicationName
 160  
      */
 161  
     public void setApplicationName(String applicationName) {
 162  4
         this.applicationName = applicationName;
 163  4
     }
 164  
     /**
 165  
      * The location of the data directory that contains
 166  
      */
 167  4
     private String dataDirectory = null;
 168  
 
 169  
     /**
 170  
      * Get the value of dataDirectory.
 171  
      *
 172  
      * @return the value of dataDirectory
 173  
      */
 174  
     public String getDataDirectory() {
 175  0
         return dataDirectory;
 176  
     }
 177  
 
 178  
     /**
 179  
      * Set the value of dataDirectory.
 180  
      *
 181  
      * @param dataDirectory new value of dataDirectory
 182  
      */
 183  
     public void setDataDirectory(String dataDirectory) {
 184  0
         this.dataDirectory = dataDirectory;
 185  0
     }
 186  
     /**
 187  
      * Specifies the destination directory for the generated Dependency-Check
 188  
      * report.
 189  
      */
 190  4
     private String reportOutputDirectory = ".";
 191  
 
 192  
     /**
 193  
      * Get the value of reportOutputDirectory.
 194  
      *
 195  
      * @return the value of reportOutputDirectory
 196  
      */
 197  
     public String getReportOutputDirectory() {
 198  0
         return reportOutputDirectory;
 199  
     }
 200  
 
 201  
     /**
 202  
      * Set the value of reportOutputDirectory.
 203  
      *
 204  
      * @param reportOutputDirectory new value of reportOutputDirectory
 205  
      */
 206  
     public void setReportOutputDirectory(String reportOutputDirectory) {
 207  4
         this.reportOutputDirectory = reportOutputDirectory;
 208  4
     }
 209  
     /**
 210  
      * Specifies if the build should be failed if a CVSS score above a specified
 211  
      * level is identified. The default is 11 which means since the CVSS scores
 212  
      * are 0-10, by default the build will never fail and the CVSS score is set
 213  
      * to 11. The valid range for the fail build on CVSS is 0 to 11, where
 214  
      * anything above 10 will not cause the build to fail.
 215  
      */
 216  4
     private float failBuildOnCVSS = 11;
 217  
 
 218  
     /**
 219  
      * Get the value of failBuildOnCVSS.
 220  
      *
 221  
      * @return the value of failBuildOnCVSS
 222  
      */
 223  
     public float getFailBuildOnCVSS() {
 224  0
         return failBuildOnCVSS;
 225  
     }
 226  
 
 227  
     /**
 228  
      * Set the value of failBuildOnCVSS.
 229  
      *
 230  
      * @param failBuildOnCVSS new value of failBuildOnCVSS
 231  
      */
 232  
     public void setFailBuildOnCVSS(float failBuildOnCVSS) {
 233  1
         this.failBuildOnCVSS = failBuildOnCVSS;
 234  1
     }
 235  
     /**
 236  
      * Sets whether auto-updating of the NVD CVE/CPE data is enabled. It is not
 237  
      * recommended that this be turned to false. Default is true.
 238  
      */
 239  4
     private boolean autoUpdate = true;
 240  
 
 241  
     /**
 242  
      * Get the value of autoUpdate.
 243  
      *
 244  
      * @return the value of autoUpdate
 245  
      */
 246  
     public boolean isAutoUpdate() {
 247  0
         return autoUpdate;
 248  
     }
 249  
 
 250  
     /**
 251  
      * Set the value of autoUpdate.
 252  
      *
 253  
      * @param autoUpdate new value of autoUpdate
 254  
      */
 255  
     public void setAutoUpdate(boolean autoUpdate) {
 256  4
         this.autoUpdate = autoUpdate;
 257  4
     }
 258  
     /**
 259  
      * The report format to be generated (HTML, XML, VULN, ALL). This
 260  
      * configuration option has no affect if using this within the Site plugin
 261  
      * unless the externalReport is set to true. Default is HTML.
 262  
      */
 263  4
     private String reportFormat = "HTML";
 264  
 
 265  
     /**
 266  
      * Get the value of reportFormat.
 267  
      *
 268  
      * @return the value of reportFormat
 269  
      */
 270  
     public String getReportFormat() {
 271  0
         return reportFormat;
 272  
     }
 273  
 
 274  
     /**
 275  
      * Set the value of reportFormat.
 276  
      *
 277  
      * @param reportFormat new value of reportFormat
 278  
      */
 279  
     public void setReportFormat(ReportFormats reportFormat) {
 280  4
         this.reportFormat = reportFormat.getValue();
 281  4
     }
 282  
     /**
 283  
      * The Proxy URL.
 284  
      */
 285  
     private String proxyUrl;
 286  
 
 287  
     /**
 288  
      * Get the value of proxyUrl.
 289  
      *
 290  
      * @return the value of proxyUrl
 291  
      */
 292  
     public String getProxyUrl() {
 293  0
         return proxyUrl;
 294  
     }
 295  
 
 296  
     /**
 297  
      * Set the value of proxyUrl.
 298  
      *
 299  
      * @param proxyUrl new value of proxyUrl
 300  
      */
 301  
     public void setProxyUrl(String proxyUrl) {
 302  0
         this.proxyUrl = proxyUrl;
 303  0
     }
 304  
     /**
 305  
      * The Proxy Port.
 306  
      */
 307  
     private String proxyPort;
 308  
 
 309  
     /**
 310  
      * Get the value of proxyPort.
 311  
      *
 312  
      * @return the value of proxyPort
 313  
      */
 314  
     public String getProxyPort() {
 315  0
         return proxyPort;
 316  
     }
 317  
 
 318  
     /**
 319  
      * Set the value of proxyPort.
 320  
      *
 321  
      * @param proxyPort new value of proxyPort
 322  
      */
 323  
     public void setProxyPort(String proxyPort) {
 324  0
         this.proxyPort = proxyPort;
 325  0
     }
 326  
     /**
 327  
      * The Proxy username.
 328  
      */
 329  
     private String proxyUsername;
 330  
 
 331  
     /**
 332  
      * Get the value of proxyUsername.
 333  
      *
 334  
      * @return the value of proxyUsername
 335  
      */
 336  
     public String getProxyUsername() {
 337  0
         return proxyUsername;
 338  
     }
 339  
 
 340  
     /**
 341  
      * Set the value of proxyUsername.
 342  
      *
 343  
      * @param proxyUsername new value of proxyUsername
 344  
      */
 345  
     public void setProxyUsername(String proxyUsername) {
 346  0
         this.proxyUsername = proxyUsername;
 347  0
     }
 348  
     /**
 349  
      * The Proxy password.
 350  
      */
 351  
     private String proxyPassword;
 352  
 
 353  
     /**
 354  
      * Get the value of proxyPassword.
 355  
      *
 356  
      * @return the value of proxyPassword
 357  
      */
 358  
     public String getProxyPassword() {
 359  0
         return proxyPassword;
 360  
     }
 361  
 
 362  
     /**
 363  
      * Set the value of proxyPassword.
 364  
      *
 365  
      * @param proxyPassword new value of proxyPassword
 366  
      */
 367  
     public void setProxyPassword(String proxyPassword) {
 368  0
         this.proxyPassword = proxyPassword;
 369  0
     }
 370  
     /**
 371  
      * The Connection Timeout.
 372  
      */
 373  
     private String connectionTimeout;
 374  
 
 375  
     /**
 376  
      * Get the value of connectionTimeout.
 377  
      *
 378  
      * @return the value of connectionTimeout
 379  
      */
 380  
     public String getConnectionTimeout() {
 381  0
         return connectionTimeout;
 382  
     }
 383  
 
 384  
     /**
 385  
      * Set the value of connectionTimeout.
 386  
      *
 387  
      * @param connectionTimeout new value of connectionTimeout
 388  
      */
 389  
     public void setConnectionTimeout(String connectionTimeout) {
 390  0
         this.connectionTimeout = connectionTimeout;
 391  0
     }
 392  
     /**
 393  
      * The file path used for verbose logging.
 394  
      */
 395  4
     private String logFile = null;
 396  
 
 397  
     /**
 398  
      * Get the value of logFile.
 399  
      *
 400  
      * @return the value of logFile
 401  
      */
 402  
     public String getLogFile() {
 403  0
         return logFile;
 404  
     }
 405  
 
 406  
     /**
 407  
      * Set the value of logFile.
 408  
      *
 409  
      * @param logFile new value of logFile
 410  
      */
 411  
     public void setLogFile(String logFile) {
 412  0
         this.logFile = logFile;
 413  0
     }
 414  
     /**
 415  
      * The path to the suppression file.
 416  
      */
 417  
     private String suppressionFile;
 418  
 
 419  
     /**
 420  
      * Get the value of suppressionFile.
 421  
      *
 422  
      * @return the value of suppressionFile
 423  
      */
 424  
     public String getSuppressionFile() {
 425  0
         return suppressionFile;
 426  
     }
 427  
 
 428  
     /**
 429  
      * Set the value of suppressionFile.
 430  
      *
 431  
      * @param suppressionFile new value of suppressionFile
 432  
      */
 433  
     public void setSuppressionFile(String suppressionFile) {
 434  0
         this.suppressionFile = suppressionFile;
 435  0
     }
 436  
 
 437  
     @Override
 438  
     public void execute() throws BuildException {
 439  4
         final InputStream in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
 440  4
         LogUtils.prepareLogger(in, logFile);
 441  
 
 442  4
         dealWithReferences();
 443  4
         validateConfiguration();
 444  3
         populateSettings();
 445  
 
 446  3
         final Engine engine = new Engine();
 447  3
         for (Resource resource : path) {
 448  5
             final FileProvider provider = resource.as(FileProvider.class);
 449  5
             if (provider != null) {
 450  5
                 final File file = provider.getFile();
 451  5
                 if (file != null && file.exists()) {
 452  4
                     engine.scan(file);
 453  
                 }
 454  
             }
 455  5
         }
 456  
         try {
 457  3
             engine.analyzeDependencies();
 458  3
             final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers());
 459  3
             reporter.generateReports(reportOutputDirectory, reportFormat);
 460  
 
 461  3
             if (this.failBuildOnCVSS <= 10) {
 462  0
                 checkForFailure(engine.getDependencies());
 463  
             }
 464  0
         } catch (IOException ex) {
 465  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
 466  0
             throw new BuildException("Unable to generate dependency-check report", ex);
 467  0
         } catch (Exception ex) {
 468  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
 469  0
             throw new BuildException("An exception occured; unable to continue task", ex);
 470  3
         }
 471  3
     }
 472  
 
 473  
     /**
 474  
      * Validate the configuration to ensure the parameters have been properly
 475  
      * configured/initialized.
 476  
      *
 477  
      * @throws BuildException if the task was not configured correctly.
 478  
      */
 479  
     private void validateConfiguration() throws BuildException {
 480  4
         if (path == null) {
 481  1
             throw new BuildException("No project dependencies have been defined to analyze.");
 482  
         }
 483  3
         if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) {
 484  0
             throw new BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11.");
 485  
         }
 486  3
     }
 487  
 
 488  
     /**
 489  
      * Takes the properties supplied and updates the dependency-check settings.
 490  
      * Additionally, this sets the system properties required to change the
 491  
      * proxy url, port, and connection timeout.
 492  
      */
 493  
     private void populateSettings() {
 494  3
         InputStream taskProperties = null;
 495  
         try {
 496  3
             taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
 497  3
             Settings.mergeProperties(taskProperties);
 498  0
         } catch (IOException ex) {
 499  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
 500  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
 501  
         } finally {
 502  3
             if (taskProperties != null) {
 503  
                 try {
 504  3
                     taskProperties.close();
 505  0
                 } catch (IOException ex) {
 506  0
                     Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex);
 507  3
                 }
 508  
             }
 509  
         }
 510  3
         if (dataDirectory != null) {
 511  0
             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
 512  
         } else {
 513  3
             final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath());
 514  3
             final File base = jarPath.getParentFile();
 515  3
             final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
 516  3
             final File dataDir = new File(base, sub);
 517  3
             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
 518  
         }
 519  
 
 520  3
         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
 521  
 
 522  3
         if (proxyUrl != null && !proxyUrl.isEmpty()) {
 523  0
             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
 524  
         }
 525  3
         if (proxyPort != null && !proxyPort.isEmpty()) {
 526  0
             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
 527  
         }
 528  3
         if (proxyUsername != null && !proxyUsername.isEmpty()) {
 529  0
             Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUsername);
 530  
         }
 531  3
         if (proxyPassword != null && !proxyPassword.isEmpty()) {
 532  0
             Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPassword);
 533  
         }
 534  3
         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
 535  0
             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
 536  
         }
 537  3
         if (suppressionFile != null && !suppressionFile.isEmpty()) {
 538  0
             Settings.setString(Settings.KEYS.SUPPRESSION_FILE, suppressionFile);
 539  
         }
 540  3
     }
 541  
 
 542  
     /**
 543  
      * Checks to see if a vulnerability has been identified with a CVSS score
 544  
      * that is above the threshold set in the configuration.
 545  
      *
 546  
      * @param dependencies the list of dependency objects
 547  
      * @throws BuildException thrown if a CVSS score is found that is higher
 548  
      * then the threshold set
 549  
      */
 550  
     private void checkForFailure(List<Dependency> dependencies) throws BuildException {
 551  0
         final StringBuilder ids = new StringBuilder();
 552  0
         for (Dependency d : dependencies) {
 553  0
             for (Vulnerability v : d.getVulnerabilities()) {
 554  0
                 if (v.getCvssScore() >= failBuildOnCVSS) {
 555  0
                     if (ids.length() == 0) {
 556  0
                         ids.append(v.getName());
 557  
                     } else {
 558  0
                         ids.append(", ").append(v.getName());
 559  
                     }
 560  
                 }
 561  
             }
 562  
         }
 563  0
         if (ids.length() > 0) {
 564  0
             final String msg = String.format("%n%nDependency-Check Failure:%n"
 565  
                     + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
 566  
                     + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
 567  0
             throw new BuildException(msg);
 568  
         }
 569  0
     }
 570  
 
 571  
     /**
 572  
      * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN",
 573  
      * etc..
 574  
      */
 575  4
     public static class ReportFormats extends EnumeratedAttribute {
 576  
 
 577  
         /**
 578  
          * Returns the list of values for the report format.
 579  
          *
 580  
          * @return the list of values for the report format
 581  
          */
 582  
         @Override
 583  
         public String[] getValues() {
 584  4
             int i = 0;
 585  4
             final Format[] formats = Format.values();
 586  4
             final String[] values = new String[formats.length];
 587  20
             for (Format format : formats) {
 588  16
                 values[i++] = format.name();
 589  
             }
 590  4
             return values;
 591  
         }
 592  
     }
 593  
 }
+ + + + diff --git a/css/dependency-check-ant/configuration.html b/css/dependency-check-ant/configuration.html new file mode 100644 index 000000000..11a38d6d4 --- /dev/null +++ b/css/dependency-check-ant/configuration.html @@ -0,0 +1,315 @@ + + + + + + + + + dependency-check-ant - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +

Configuration

+

To configure the dependency-check task you can add it to a target and include a file based resource collection such as a FileSet, DirSet, or FileList that includes the project’s dependencies.

+ +
+
<target name="dependency-check" description="Dependency-Check Analysis">
+    <dependency-check applicationname="Hello World"
+                      reportoutputdirectory="${basedir}"
+                      reportformat="ALL">
+
+        <fileset dir="lib">
+            <include name="**/*.jar"/>
+        </fileset>
+    </dependency-check>
+</target>
+
+

The following table lists the configurable properties:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Property Description Requirement
ApplicationName The name of the application to use in the generated report. Required
ReportFormat The format of the report to be generated. Allowed values are: HTML, XML, VULN, or ALL. The default value is HTML.Optional
ReportOutputDirectory The directory where dependency-check will store data used for analysis. Defaults to the current working directory. Optional
FailBuildOn If set and a CVE is found that is greater then the specified value the build will fail. The default value is 11 which means that the build will not fail. Valid values are 0-11. Optional
AutoUpdate If set to false the NVD CVE data is not automatically updated. Setting this to false could result in false negatives. However, this may be required in some environments. The default value is true. Optional
DataDirectory The directory where dependency-check will store data used for analysis. Defaults to a folder called, called ‘dependency-check-data’, that is in the same directory as the dependency-check-ant jar file was installed in. It is not recommended to change this. Optional
LogFile The file path to write verbose logging information. Optional
SuppressionFile An XML file conforming to the suppression schema that suppresses findings; this is used to hide false positives. Optional
ProxyUrl Defines the proxy used to connect to the Internet. 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. Optional
+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/cpd.html b/css/dependency-check-ant/cpd.html new file mode 100644 index 000000000..06a4cba09 --- /dev/null +++ b/css/dependency-check-ant/cpd.html @@ -0,0 +1,258 @@ + + + + + + + + + dependency-check-ant - CPD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

CPD Results

+

The following document contains the results of PMD's CPD 5.0.2.

+
+

Duplications

+

CPD found no problems in your source code.

+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css b/css/dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/css/dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.1.0 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:20px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:1;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1{font-size:36px;line-height:40px}h2{font-size:30px;line-height:40px}h3{font-size:24px;line-height:40px}h4{font-size:18px;line-height:20px}h5{font-size:14px;line-height:20px}h6{font-size:12px;line-height:20px}h1 small{font-size:24px}h2 small{font-size:18px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal dt{float:left;width:120px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:130px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:9px;font-size:14px;line-height:20px;color:#555;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}input,textarea{width:210px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #bbb}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:18px;padding-left:18px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-18px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"]{float:left}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;font-size:14px;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{margin-left:-1px;vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:160px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:160px}.form-horizontal .help-block{margin-top:10px;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-right-topleft:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table [class*=span],.row-fluid table [class*=span]{display:table-cell;float:none;margin-left:0}table .span1{float:none;width:44px;margin-left:0}table .span2{float:none;width:124px;margin-left:0}table .span3{float:none;width:204px;margin-left:0}table .span4{float:none;width:284px;margin-left:0}table .span5{float:none;width:364px;margin-left:0}table .span6{float:none;width:444px;margin-left:0}table .span7{float:none;width:524px;margin-left:0}table .span8{float:none;width:604px;margin-left:0}table .span9{float:none;width:684px;margin-left:0}table .span10{float:none;width:764px;margin-left:0}table .span11{float:none;width:844px;margin-left:0}table .span12{float:none;width:924px;margin-left:0}table .span13{float:none;width:1004px;margin-left:0}table .span14{float:none;width:1084px;margin-left:0}table .span15{float:none;width:1164px;margin-left:0}table .span16{float:none;width:1244px;margin-left:0}table .span17{float:none;width:1324px;margin-left:0}table .span18{float:none;width:1404px;margin-left:0}table .span19{float:none;width:1484px;margin-left:0}table .span20{float:none;width:1564px;margin-left:0}table .span21{float:none;width:1644px;margin-left:0}table .span22{float:none;width:1724px;margin-left:0}table .span23{float:none;width:1804px;margin-left:0}table .span24{float:none;width:1884px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.info td{background-color:#d9edf7}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav>.active>a>[class^="icon-"],.nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:linear-gradient(to bottom,#08c,#0077b3);background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover .dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;overflow:visible \9;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 14px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:9px 14px;font-size:16px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.btn-large [class^="icon-"]{margin-top:2px}.btn-small{padding:3px 9px;font-size:12px;line-height:18px}.btn-small [class^="icon-"]{margin-top:0}.btn-mini{padding:2px 6px;font-size:11px;line-height:16px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-image:-moz-linear-gradient(top,#08c,#04c);background-repeat:repeat-x;border-color:#04c #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-image:-moz-linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-image:-moz-linear-gradient(top,#444,#222);background-repeat:repeat-x;border-color:#222 #222222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-group{position:relative;*margin-left:.3em;font-size:0;white-space:nowrap}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn-group{display:inline-block;*display:inline;*zoom:1}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-top:0;border-bottom:5px solid #000}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eeeeee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #dddddd #eee #eeeeee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eeeeee #eee #dddddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#555}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar .container{width:auto}.nav-collapse.collapse{height:auto}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#555;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#555}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:6px}.navbar .btn-group .btn{margin:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;width:100%;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner,.navbar-static-top .navbar-inner{border:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#555;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-image:-moz-linear-gradient(top,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{height:40px;margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination li{display:inline}.pagination a,.pagination span{float:left;padding:0 14px;line-height:38px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination a:hover,.pagination .active a,.pagination .active span{background-color:#f5f5f5}.pagination .active a,.pagination .active span{color:#999;cursor:default}.pagination .disabled span,.pagination .disabled a,.pagination .disabled a:hover{color:#999;cursor:default;background-color:transparent}.pagination li:first-child a,.pagination li:first-child span{border-left-width:1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.pagination li:last-child a,.pagination li:last-child span{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager a{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next a{float:right}.pager .previous a{float:left}.pager .disabled a,.pager .disabled a:hover{color:#999;cursor:default;background-color:#fff}.modal-open .dropdown-menu{z-index:2050}.modal-open .dropdown.open{*z-index:2050}.modal-open .popover{z-index:2060}.modal-open .tooltip{z-index:2080}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;overflow:auto;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-bottom:10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-right:10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.label,.badge{font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{padding:1px 4px 2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding:1px 9px 2px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit p{font-size:18px;font-weight:200;line-height:30px;color:inherit}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}.clear{clear:both;visibility:hidden}.clear hr{display:none}.section p,.section p,.section dt,.section dt{margin-right:7px;margin-left:7px}#ohloh{margin-bottom:10px}#poweredBy{text-align:center}a.externalLink{background:url('../images/external.png') right center no-repeat;padding-right:18px}a.newWindow{background:url('../images/window-new.png') right center no-repeat;padding-right:18px}a.externalLink[href^=http]{background:url('../images/internet-web-browser.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".asc"]{background:url('../images/accessories-text-editor.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".jpg"],a.externalLink[href$=".jpeg"],a.externalLink[href$=".gif"],a.externalLink[href$=".png"]{background:url('../images/image-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".tar.gz"],a.externalLink[href$=".zip"]{background:url('../images/package-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".md5"],a.externalLink[href$=".sha1"]{background:url('../images/document-properties.png') right center no-repeat;padding-right:18px}a.externalLink[href^=https]{background:url('../images/application-certificate.png') right center no-repeat;padding-right:18px}a.externalLink[href^=file]{background:url('../images/drive-harddisk.png') right center no-repeat;padding-right:18px}a.externalLink[href^=ftp]{background:url('../images/network-server.png') right center no-repeat;padding-right:18px}a.externalLink[href^=mailto]{background:url('../images/contact-new.png') right center no-repeat;padding-right:18px}li.none{list-style:none}.search-query{background-image:url(http://www.google.com/cse/intl/en/images/google_custom_search_watermark.gif);background-attachment:initial;background-origin:initial;background-clip:initial;background-color:#fff;background-position:0 50%;background-repeat:no-repeat no-repeat;width:95%}body.topBarEnabled{padding-top:60px}body.topBarDisabled{padding-top:20px}.builtBy{display:block}img.builtBy{margin:10px auto}#search-form{margin-left:9px;margin-right:9px}.hero-unit h2{font-size:60px}tt{padding:0 3px 2px;font-family:Monaco,Andale Mono,Courier New,monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#fee9cc;color:rgba(0,0,0,0.75);padding:1px 3px}li{color:#404040}table.zebra-striped{background-color:#FFF}.footer{background-color:#EEE}.sidebar-nav{padding-left:0;padding-right:0}.sidebar-nav .icon-chevron-right,.sidebar-nav .icon-chevron-down{margin-top:2px;margin-right:-6px;float:right;opacity:.25}.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0;padding-left:15px}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/css/dependency-check-ant/css/print.css b/css/dependency-check-ant/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/css/dependency-check-ant/css/print.css @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/* $Id: print.css 1201871 2011-11-14 20:18:24Z simonetripodi $ */ + +#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/css/dependency-check-ant/css/site.css b/css/dependency-check-ant/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/css/dependency-check-ant/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/css/dependency-check-ant/dependency-updates-report.html b/css/dependency-check-ant/dependency-updates-report.html new file mode 100644 index 000000000..1f17aaebc --- /dev/null +++ b/css/dependency-check-ant/dependency-updates-report.html @@ -0,0 +1,459 @@ + + + + + + + + + dependency-check-ant - Dependency Updates Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

Overview

+

This report summarizes newer versions that may be available for your project's various dependencies.

+ + + + + + + + + + + + + + + + + + + + +
# of dependencies using the latest version available2
# of dependencies where the next version available is smaller than an incremental version update0
# of dependencies where the next version available is an incremental version update2
# of dependencies where the next version available is a minor version update0
# of dependencies where the next version available is a major version update0
+
+

Dependency Management

+

This project does not declare any dependencies in a dependencyManagement section.

+
+

Dependencies

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
junitjunit4.11testjar
org.apache.antant1.9.1compilejar1.9.2
org.apache.antant-testutil1.9.1testjar1.9.2
org.owaspdependency-check-core1.0.6compilejar
StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
+
+

Dependency Updates

+

+
+

junit:junit

+ + + + + + + + + + + + + + + + + + + + + +
Status No newer versions available.
Group Idjunit
Artifact Idjunit
Current Version4.11
Scopetest
Classifier
Typejar
+
+

org.apache.ant:ant

+ + + + + + + + + + + + + + + + + + + + + + + + +
Status There is at least one newer incremental version available. Incremental updates are typically passive.
Group Idorg.apache.ant
Artifact Idant
Current Version1.9.1
Scopecompile
Classifier
Typejar
Newer versions1.9.2 Next Incremental
+
+

org.apache.ant:ant-testutil

+ + + + + + + + + + + + + + + + + + + + + + + + +
Status There is at least one newer incremental version available. Incremental updates are typically passive.
Group Idorg.apache.ant
Artifact Idant-testutil
Current Version1.9.1
Scopetest
Classifier
Typejar
Newer versions1.9.2 Next Incremental
+
+

org.owasp:dependency-check-core

+ + + + + + + + + + + + + + + + + + + + + +
Status No newer versions available.
Group Idorg.owasp
Artifact Iddependency-check-core
Current Version1.0.6
Scopecompile
Classifier
Typejar
+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/findbugs.html b/css/dependency-check-ant/findbugs.html new file mode 100644 index 000000000..0caf4e9ba --- /dev/null +++ b/css/dependency-check-ant/findbugs.html @@ -0,0 +1,295 @@ + + + + + + + + + dependency-check-ant - FindBugs Bug Detector Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

FindBugs Bug Detector Report

+

The following document contains the results of FindBugs Report

+

FindBugs Version is 2.0.1

+

Threshold is medium

+

Effort is min

+
+

Summary

+ + + + + + + + + + +
ClassesBugsErrorsMissing Classes
2100
+ +
+

org.owasp.dependencycheck.taskdefs.DependencyCheckTask

+ + + + + + + + + + + + +
BugCategoryDetailsLinePriority
Inconsistent synchronization of org.owasp.dependencycheck.taskdefs.DependencyCheckTask.path; locked 44% of timeMT_CORRECTNESSIS2_INCONSISTENT_SYNC447Medium
+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/images/accessories-text-editor.png b/css/dependency-check-ant/images/accessories-text-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..abc3366edad864f1c06e1354c2f7cd0ee1f2a080 GIT binary patch literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z!(tV6XFWw9$CP!U~&MEL_-~2 zturUYuc~G2k7NQOAQwpPnVm8{M-46l)ZW(7+}_y&l!c=+t7L#iU0Nn~YlG3l-F|15 z@P0VoetaRz%cI#-`!i3iRywta^WbvRtIMVKukt^?RPfMZskwP_>zl3S&Y%79fJLFr)R5u{`~pcwQJ|jo!h;8_nch0Czn_4o{=~$Tdkui?!}82 zPoF-0^5jWpw9vyV8+S~Jn~|&5P#DqD)^z{={fV`486gG>yE10vs7-0jnK^T2duMA= zxOS1hU{#Kw#hCr%tWa%9@{DF+T5IJs^5$&)9i&zL%I{+xaL_HEjdBN!3HH6)q7{X9{`;59Zq8_K&a?NFvhbtJ!a#ML1s;*b3=G^r zHn%V%!>lqE9PESpH$neQx=aVO*B2%Y?K6$dU zvO@Al$kmjqrY2jrl%|w^{UQ0|3oj3EZ%?m}Pw82fGm<}abk?qEJm7ZynqNRiHh(Bgn?ad9p@g!lX0?hAY$6qZbCW z0lmYZTH+c}l9E`GYL#4+3Zxi}3=9o*fylrz#K6+Z#K6kbLfgR5%D~`Tz=gvo8glbf ZGSez?YiQ@qs0V6b@O1TaS?83{1OS^WRoMUl literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/add.gif b/css/dependency-check-ant/images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..1cb3dbf936e38b5c5efdc3e247a042eb1b1d23e9 GIT binary patch literal 397 zcmV;80doFFNk%w1VGsZi0Hrwqfq{XHjC_`scb}hfo}Qksu4?V%HuUQ#_Ut72?;iT^ zBKq(m_wPpc?_K-yJooTv`tnWp@M`+UP{`_CX>@2HM@dakAa8CUVIWOmV*nxf1OW;FKL9KM0000G01yBG z28=)gU`QMW1_i@!3CKC0&ddYCI52ah&u7HtL@q0qBk^l$xg^p?lB(HEigIo{N|QVi z)(zKM$kAyhAQ&1iFcb)XbtESzDjgOT6Af33jV>-IB_SdLSAi#(F{3g$0H2JZE~KTW ra*U!eGBdQMSC^|Yvokcda+j>Uy{=7A#!jw6Max43OV7~J&_Mt@cAw$D literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/apache-maven-project-2.png b/css/dependency-check-ant/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c096ec0c7d50ecca14e76dd49b1fcb9382c3d07 GIT binary patch literal 33442 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 AyZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/contact-new.png b/css/dependency-check-ant/images/contact-new.png new file mode 100644 index 0000000000000000000000000000000000000000..ebc4316d844dea7c644b636a768348a4a105fefe GIT binary patch literal 736 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z~~#`6XFWw{(0&D=T+#RHwAw` z&Hnpo&YySH^B2wT=xUuXq4DDJ;vXMY{rmmm?~n68U)N8b+W+is-}IT2Cr_OKQ8Rn) zjLlm%?%28R-u1=5z8w7b_w%10wGpKB`?6U6pFe*dJ9ccrf(7f>ue)&m)R!-BCQRynbY{!R9*ZYy+@7p-UY@S-`Sa%w zA3nT)|NhsnUlS(vzIpp-Vt+(alI*llmi}Ot{8X*wt1GWuxpMjPD8G_FtAwYlM(@+7PjBA5dHwqJt5>i7{Q0y0(1MB6!uuu%PnZ(1WB07bk00N^ zfB)XSdp~~s0NV5M7AY?6_YmX)lQk*=z#qM@b= z;jzxa-qG&i{`U`D;5cDwW@u`>eZ!Vb+cs`xE_y2~Gk1<|Ow8SwyS5T3HhcHf*8Kf* zmx-x4rs2+m2^The=s2c1x z@?`Pi#gUPb%a$!mPfyRv%4%q+zjyD}h7B7sGBPqVGdnvwA3b_>`}XY_GiFp&ROIC3 zBqk>2=H`C-^y%l%pKss3eemGH!-o&gojcdo*4Ee8cjwNX^XJbmU%q_Jnl)d(e3_rK zQ5)znu96_XUAfnlM+?I*J`vNB)4cy(~cFE%!y3*C+dtm|AkbLP(0rAtI-WalPl zXQ#h^a3Yue>8TkOmX^DBoNC%>bIn0P>y;XJk*Kt_xlBQUk->(IhZxnF8MX%rzU~pe z)edx+YKdz^NlIc#s#S7PDv)9@GB7mM1tJ5>5Ccmq69X$#3vB~KD+7aX0T&LVXvob^ Z$xN%nt)ZPaqaLV%!PC{xWt~$(69B9}1)l%_ literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/drive-harddisk.png b/css/dependency-check-ant/images/drive-harddisk.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ce475f83900cfe56bc5374932b5bf2ca4dbc8d GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zC&II^`xaJjPLr`yjcXv-mMOEp) zfB$~|{Q2qgr}E0uH*ep*0fM(c8pHz9pFVy1{{8!_SFc~e@M|D=_4?z-kMG~VfBN+4 z=g*&?JbCir!-ub5zrK9=^4G6l&z?Q|^5x6(=g-S4OG?X&9zTA3@7}!^FJ6?E7oReKBW~hUcb538A@(YtL-+^H_dcdDlJpJ=Y$-@O`Fz zG@0+R=gebQ3|6LQE_?ex(qMMck(v6_v=g$+AOFmI(3&Wse&EvEy!Sf~KCI~aV|0G{ zk1FrS2B$YEFiv@18F*(Wd((ez|EgADxttge3!oF5szM@4obz*YQ}ap~7&xwf_C2e8 zRrlN)FW64!{5l*E!$tK_0oAjM#0U}&fdLejY7 zI~FXQH)-jvha*6u#Df8X9ChYuY)a%k^~E2mDLxODNt zmCKi|T)zC|@uR1YAH8|~^39u9@7}$6_wMcc_wPP@0HXIFK79E6`SZ7LU%!9<{_EGT z|C9m6e^Smxsfi`2DGKG8B^e6tp1uJJ`FRS73ciWS42nNl7`Yhi8FUzc0OVr^w%h~r z3p{khINcN{dHm3sxp?^`71bH@yqi{KNeBh-JDpc0PP#ir~m)} literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/icon_error_sml.gif b/css/dependency-check-ant/images/icon_error_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..12e9a01a930c8dfa20992254a9c2b19272d1d491 GIT binary patch literal 633 zcmZ?wbhEHb6krfwIF`;38Xg=L5fUB=M4=H;VNo&RafvaB$?-`k33&xMO~v8m6{R(` zl?_dGEv=0$ZA~rhO>G^`?Hw)coj}yu(b?MG)!Nb3($Ur0+1)m2a{u;z-^o)aPMJDs z`t(UNXHAo#m!w{g?@=WBc~Zm8X~W#g8u zo3?D*v~~ODZQHl}UT^n%gZ1x?R=+k`T;JBTW7oDFySD${^*eoz@Oc*hmRckzCZ2A(L+a%9{G7V>Fe>N z^XJe0KGXR7Y}4;^^*`^=|M7h0?^~=l4^&mpY`6;P-`9HR5qr6O1d8TwsR`3>b@UzlT;FtFnna2=nZ#cumG*CCfUXh`R z+r!d5z(O-R)XZE>lB1r*D>%&0R$Il*Mn_6Qf{%sS(JIbXUpX=*NJ;FP;1pg}V|6*} zv?MJFQE_3;iOj5Q?9#Ex;l6qz5+~F=Ii~BU9y&2WMUzuPiAOcCQYbJ`P)$^n_v8t~ IKm`VC0O`0&yZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/icon_help_sml.gif b/css/dependency-check-ant/images/icon_help_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..aaf20e6eea4148fe8fbb09bdf4595eb98334fff6 GIT binary patch literal 1072 zcmZ?wbhEHb6krfwcs`v$!K+=-yF&?xd^(hUI+cApRs6bC{eh@k&A(ecpj#`rPbZ{T zHx!8a^g{b}!zSp5_v=SYG>n*N6g|Zlh+?Lg#7s4dnQRg})go?+MZ$E8gc;Te)2xza zS|`u4Ntxx4KG!L8zI)~z=dAgzISbu#7kcN-_sn1Ho4>%jXsJ)pQs3fbfo02sDpp2R zERC#K7E-k)vT8+i)$*{KwK3JpV{2AK)o)0wTb10nI<9$BO4FK@rnRX}Ym!%=V3`o!hfJHsy3|$nM;n-n}!oduvYb_N=~Lg}qy|`*#=hZ!es< zJAcyNg30?!r|d17cCdKb!IJ3*D`y_8n0>Tq?!mT&hdUP@>REWOXVJm#rN<{MJ>0+I z#FUlCrmQ_Pd;RIzn=UTca(=iaqXVV+mGGa zb@J}slehPtx^v*n-9zW@9lP}K#FZzfu01_{?di$u&(B2A zoI?4BMCM#(ZeZdNx5?S*;=#(TTgt)U(ejX?g-3ph&!#D=Y`v;IOgUFKENEgEY}K2& zbK&FTQ{0&t&PXaHI(LYby<^~<)WRug%f?Vsn9S(HDV}gdq)=(8*E}P}f0hC+DlA;` z)Ad{zHa+cG#KBxFQ?<#-BSSmll8aH3zyUtzf;|p9o6`Ijt8uE?Ni?%hQnAZc^O50L PaG-&a!$_HjgTWdA|E#c| literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/icon_info_sml.gif b/css/dependency-check-ant/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..b776326703c341ce559f98f028bb92fe4c332a83 GIT binary patch literal 638 zcmZ?wbhEHb6krfwI99}9U|?WrY3AnUX5m?3;Z0M>*4P;bV`&8Ka zl-c-J*!q^)`BgduR5=D#I|r7#hSa%**1Lx{c!gJaL^OLwwt7Xic}F+L#o2`7dnmC(1Rt2?c3!lt^38_VY&t(beHXZDWXIXh-7+1tM2%&evRR;+4S zwr0k}b!V5aoiTgei6v_fuiiLg?#^pV_uW{w@5aglH&-3Jx&6@9oky;1J$7sB@!MNZ zJveyg`hg3N4_$b0@Y0i`mmVIv{N(WECzr2oIC}Nz@oP^{UVDDw>Vp&4U!1=A;>^t# zmu@{ecl+ht`>QY9eSP`<>nji5TzT;J+QYXu9=*N!_}$}YyB<7!`{3D|d(S`KfBxyw z^Y`~(e0uQm)1z0PU%x&0;{BHw@4vo%|K;_EudhFRd-L)8=Wi$9eg5(O^Y^bmPJRCV z>&y3FUw{1i{`2>*-+zDo`TOV3-~U7d#ecdQ$(jmA1_mYyUWwVINeaOwshN4HMO<9Y zMX8A;sVNHOnI#ztAsML(?w-B@42nNl7`Yhg8FUzc02GM~?5i5;o0>S;m|56)n!B60 zjgkxVVs!X>ns_~P6XU}IL#+gR_>6Khb5di2o!vBrx&@MxvJ29p102vbQyButm$y)r=@GSbQ7fuf zG&hu(RxhgI;Nx!Xk#a$OMKhbYL0W}^MFz8kslSGfx4@b6vWfA)m`-W&brNWq_@1%Hm^{yEe1`?BYsvn_wmHvhTm`R8WJ@7psnMoCG5mA-y?dAS}$C^BFZzMd3&ORu3u6b1u&a%gnW4I(EOT#*fRVX@ zj=Hjv*wR)(6J1pWB^l0kHf~;N6*);RcGfnA&uq+0JK1LSU+Ld<{2%8ZVGags09itc As{jB1 literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/icon_warning_sml.gif b/css/dependency-check-ant/images/icon_warning_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac6ad6ada39ea693ac0500810196fe551833b2d0 GIT binary patch literal 625 zcmZ?wbhEHb6krfwI99~a)zjYH+tJh8+1uaM2SgLPCr;{|FsXOac1bJ1)uHC+K>&~59ckkZ5d-v|2$A0(j-F^3{>(7(0`}gnuc^UfX z@x#ZDA3c8Z_|NN&Cy&7yo%%@b}sNzt0Z-eYxt-yV^f*C;fTf`1eES z-w!>1J}>_JdEuYWOa6Xd^!Lk}zhBn<{kq}rw|)P9oc;IX{NEo}|Ngl7@B5>FKhOXB zdEwvh=l_1c{P*YWzd!H({eA!M@Av;i1I2$*&PAz-C8;S2<(VZJ3hti10Sftf3W*B7 ziOCF#KUo;L80r~x7=Qp2V+`yY8tR*xTUy(i#HHHXrMkN7MWySl%=MJ(rA6DMjY2bX z(u0-cWZJ_D^HP)IBjwwzGV=?v5~Cw*Wm|eJbJMa@;-dULC8WeVqzp2WlM-S=yxk;w zTU5hiJ%ZG^dBjB8Rrm$j6kTluIQSS_WQ2shECQX()EphTT0}XuoqXM`9onu0Tx4Ka w$mp{`;N!m2?G#bv7+&QNR_PU4c>CU?Yd7!v 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/logos/build-by-maven-white.png b/css/dependency-check-ant/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/logos/maven-feather.png b/css/dependency-check-ant/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/network-server.png b/css/dependency-check-ant/images/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d12e1938ac4d8817701a555a97b36a42413ff7f GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh0wlLOK8*rWOiAAEE({6J?VYlKJkA1-$YKTt zZXpn6ymYtj4+8_EfTxRNh{R>v^Lzb75+zt4q?_IE(UC6ToMFIeXrjjU_Pbcl8wEu* zmFNogJ4~&tCL!OBSWj@$7M9kE%GC+rI&-8+^}#zUfge$ z%95%FVq)d@YWpHh0*~9IeYCDS=DEjWT6&NB;?38!S{%Af^K0ULzq^XpMf{AfPW9%` z{By-F@#G`{r|bn{ZSl6`PhU_~!26>8WB9W7wxA3jxWq>uP}{$dFi` z{%E$YFs9ZZ#)XBd3yahj7HcdhP@0i0c5-Fei4|q1R+pb%U2$f0$(hxq%c@PLC-F^7 z;+vfzx~NcTNs0RMD#LrH*W5ZZ>(GMCN2iutSY3E&UD>s*_1Cu4-#;|z!_Cdtc6J?G zUUG6}>4z(;KU`e+;r#6P=Vrb?Gxgo+Deq2AczdGv?eU&>7nf}8_Wf{u{fF!8K3rS- z;o6$_*H*v3y88XKb$9o403A6wmUUi^)Rkq4C;QDWElr%4Ewvz5_U@*FYx8|>Z^)aU zBeO7H?&+SoN9z+G?W$goC%33j@%7nxua0&%tapcEij439aV6bJZW8_q7iNx>mKsHKHUXu_VbP0l+XkKAq+)H literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/profiles/pre-release.png b/css/dependency-check-ant/images/profiles/pre-release.png new file mode 100644 index 0000000000000000000000000000000000000000..d448e850cd3f885844d0c28da7dddf4457e25300 GIT binary patch literal 32607 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 IO1}yIe}jHRegFUf literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/profiles/retired.png b/css/dependency-check-ant/images/profiles/retired.png new file mode 100644 index 0000000000000000000000000000000000000000..f89f6a29c6b61beafd8d2f729085fbf1d17b0e86 GIT binary patch literal 22003 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/images/profiles/sandbox.png b/css/dependency-check-ant/images/profiles/sandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..f88b3626761f591fefcb7408ff290b4f48ebe0d9 GIT binary patch literal 33010 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 OGkCiCxvXLW=UkO8ip# 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 B7G?kd literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/img/glyphicons-halflings.png b/css/dependency-check-ant/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-ant/index.html b/css/dependency-check-ant/index.html new file mode 100644 index 000000000..1df80f620 --- /dev/null +++ b/css/dependency-check-ant/index.html @@ -0,0 +1,192 @@ + + + + + + + + + dependency-check-ant - About + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

About Dependency-Check Ant Task

+

Dependency-check is a utility 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.

+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/installation.html b/css/dependency-check-ant/installation.html new file mode 100644 index 000000000..d848e93ee --- /dev/null +++ b/css/dependency-check-ant/installation.html @@ -0,0 +1,170 @@ + + + + + + + + + dependency-check-ant - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +

Installation

+

Download dependency-check-ant from bintray here. To install dependency-check-ant place the dependency-check-ant-1.0.6.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.

+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/css/dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js b/css/dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/css/dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js @@ -0,0 +1,21 @@ +/*! + * jQuery JavaScript Library v1.8.0 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: Thu Aug 09 2012 16:24:48 GMT-0400 (Eastern Daylight Time) + */ +(function(a2,aB){var x,af,o=a2.document,aI=a2.location,d=a2.navigator,bg=a2.jQuery,I=a2.$,am=Array.prototype.push,a4=Array.prototype.slice,aK=Array.prototype.indexOf,A=Object.prototype.toString,V=Object.prototype.hasOwnProperty,aN=String.prototype.trim,bG=function(e,bZ){return new bG.fn.init(e,bZ,x)},bx=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,aa=/\S/,aV=/\s+/,D=aa.test("\xA0")?(/^[\s\xA0]+|[\s\xA0]+$/g):/^\s+|\s+$/g,bo=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,a=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,bf=/^[\],:{}\s]*$/,bi=/(?:^|:|,)(?:\s*\[)+/g,bD=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,a0=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,bP=/^-ms-/,aU=/-([\da-z])/gi,N=function(e,bZ){return(bZ+"").toUpperCase()},aF=function(){if(o.addEventListener){o.removeEventListener("DOMContentLoaded",aF,false);bG.ready()}else{if(o.readyState==="complete"){o.detachEvent("onreadystatechange",aF);bG.ready()}}},Z={};bG.fn=bG.prototype={constructor:bG,init:function(e,b2,b1){var b0,b3,bZ,b4;if(!e){return this}if(e.nodeType){this.context=this[0]=e;this.length=1;return this}if(typeof e==="string"){if(e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3){b0=[null,e,null]}else{b0=bo.exec(e)}if(b0&&(b0[1]||!b2)){if(b0[1]){b2=b2 instanceof bG?b2[0]:b2;b4=(b2&&b2.nodeType?b2.ownerDocument||b2:o);e=bG.parseHTML(b0[1],b4,true);if(a.test(b0[1])&&bG.isPlainObject(b2)){this.attr.call(e,b2,true)}return bG.merge(this,e)}else{b3=o.getElementById(b0[2]);if(b3&&b3.parentNode){if(b3.id!==b0[2]){return b1.find(e)}this.length=1;this[0]=b3}this.context=o;this.selector=e;return this}}else{if(!b2||b2.jquery){return(b2||b1).find(e)}else{return this.constructor(b2).find(e)}}}else{if(bG.isFunction(e)){return b1.ready(e)}}if(e.selector!==aB){this.selector=e.selector;this.context=e.context}return bG.makeArray(e,this)},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return a4.call(this)},get:function(e){return e==null?this.toArray():(e<0?this[this.length+e]:this[e])},pushStack:function(bZ,b1,e){var b0=bG.merge(this.constructor(),bZ);b0.prevObject=this;b0.context=this.context;if(b1==="find"){b0.selector=this.selector+(this.selector?" ":"")+e}else{if(b1){b0.selector=this.selector+"."+b1+"("+e+")"}}return b0},each:function(bZ,e){return bG.each(this,bZ,e)},ready:function(e){bG.ready.promise().done(e);return this},eq:function(e){e=+e;return e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(a4.apply(this,arguments),"slice",a4.call(arguments).join(","))},map:function(e){return this.pushStack(bG.map(this,function(b0,bZ){return e.call(b0,bZ,b0)}))},end:function(){return this.prevObject||this.constructor(null)},push:am,sort:[].sort,splice:[].splice};bG.fn.init.prototype=bG.fn;bG.extend=bG.fn.extend=function(){var b7,b0,e,bZ,b4,b5,b3=arguments[0]||{},b2=1,b1=arguments.length,b6=false;if(typeof b3==="boolean"){b6=b3;b3=arguments[1]||{};b2=2}if(typeof b3!=="object"&&!bG.isFunction(b3)){b3={}}if(b1===b2){b3=this;--b2}for(;b20){return}af.resolveWith(o,[bG]);if(bG.fn.trigger){bG(o).trigger("ready").off("ready")}},isFunction:function(e){return bG.type(e)==="function"},isArray:Array.isArray||function(e){return bG.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return !isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):Z[A.call(e)]||"object"},isPlainObject:function(b1){if(!b1||bG.type(b1)!=="object"||b1.nodeType||bG.isWindow(b1)){return false}try{if(b1.constructor&&!V.call(b1,"constructor")&&!V.call(b1.constructor.prototype,"isPrototypeOf")){return false}}catch(b0){return false}var bZ;for(bZ in b1){}return bZ===aB||V.call(b1,bZ)},isEmptyObject:function(bZ){var e;for(e in bZ){return false}return true},error:function(e){throw new Error(e)},parseHTML:function(b1,b0,e){var bZ;if(!b1||typeof b1!=="string"){return null}if(typeof b0==="boolean"){e=b0;b0=0}b0=b0||o;if((bZ=a.exec(b1))){return[b0.createElement(bZ[1])]}bZ=bG.buildFragment([b1],b0,e?null:[]);return bG.merge([],(bZ.cacheable?bG.clone(bZ.fragment):bZ.fragment).childNodes)},parseJSON:function(e){if(!e||typeof e!=="string"){return null}e=bG.trim(e);if(a2.JSON&&a2.JSON.parse){return a2.JSON.parse(e)}if(bf.test(e.replace(bD,"@").replace(a0,"]").replace(bi,""))){return(new Function("return "+e))()}bG.error("Invalid JSON: "+e)},parseXML:function(b1){var bZ,b0;if(!b1||typeof b1!=="string"){return null}try{if(a2.DOMParser){b0=new DOMParser();bZ=b0.parseFromString(b1,"text/xml")}else{bZ=new ActiveXObject("Microsoft.XMLDOM");bZ.async="false";bZ.loadXML(b1)}}catch(b2){bZ=aB}if(!bZ||!bZ.documentElement||bZ.getElementsByTagName("parsererror").length){bG.error("Invalid XML: "+b1)}return bZ},noop:function(){},globalEval:function(e){if(e&&aa.test(e)){(a2.execScript||function(bZ){a2["eval"].call(a2,bZ)})(e)}},camelCase:function(e){return e.replace(bP,"ms-").replace(aU,N)},nodeName:function(bZ,e){return bZ.nodeName&&bZ.nodeName.toUpperCase()===e.toUpperCase()},each:function(b3,b4,b0){var bZ,b1=0,b2=b3.length,e=b2===aB||bG.isFunction(b3);if(b0){if(e){for(bZ in b3){if(b4.apply(b3[bZ],b0)===false){break}}}else{for(;b10&&e[0]&&e[bZ-1])||bZ===0||bG.isArray(e));if(b1){for(;b0-1){b5.splice(ca,1);if(b2){if(ca<=b3){b3--}if(ca<=b4){b4--}}}})}return this},has:function(b9){return bG.inArray(b9,b5)>-1},empty:function(){b5=[];return this},disable:function(){b5=b6=b1=aB;return this},disabled:function(){return !b5},lock:function(){b6=aB;if(!b1){b7.disable()}return this},locked:function(){return !b6},fireWith:function(ca,b9){b9=b9||[];b9=[ca,b9.slice?b9.slice():b9];if(b5&&(!e||b6)){if(b2){b6.push(b9)}else{bZ(b9)}}return this},fire:function(){b7.fireWith(this,arguments);return this},fired:function(){return !!e}};return b7};bG.extend({Deferred:function(b0){var bZ=[["resolve","done",bG.Callbacks("once memory"),"resolved"],["reject","fail",bG.Callbacks("once memory"),"rejected"],["notify","progress",bG.Callbacks("memory")]],b1="pending",b2={state:function(){return b1},always:function(){e.done(arguments).fail(arguments);return this},then:function(){var b3=arguments;return bG.Deferred(function(b4){bG.each(bZ,function(b6,b5){var b8=b5[0],b7=b3[b6];e[b5[1]](bG.isFunction(b7)?function(){var b9=b7.apply(this,arguments);if(b9&&bG.isFunction(b9.promise)){b9.promise().done(b4.resolve).fail(b4.reject).progress(b4.notify)}else{b4[b8+"With"](this===e?b4:this,[b9])}}:b4[b8])});b3=null}).promise()},promise:function(b3){return typeof b3==="object"?bG.extend(b3,b2):b2}},e={};b2.pipe=b2.then;bG.each(bZ,function(b4,b3){var b6=b3[2],b5=b3[3];b2[b3[1]]=b6.add;if(b5){b6.add(function(){b1=b5},bZ[b4^1][2].disable,bZ[2][2].lock)}e[b3[0]]=b6.fire;e[b3[0]+"With"]=b6.fireWith});b2.promise(e);if(b0){b0.call(e,e)}return e},when:function(b2){var b0=0,b4=a4.call(arguments),e=b4.length,bZ=e!==1||(b2&&bG.isFunction(b2.promise))?e:0,b7=bZ===1?b2:bG.Deferred(),b1=function(b9,ca,b8){return function(cb){ca[b9]=this;b8[b9]=arguments.length>1?a4.call(arguments):cb;if(b8===b6){b7.notifyWith(ca,b8)}else{if(!(--bZ)){b7.resolveWith(ca,b8)}}}},b6,b3,b5;if(e>1){b6=new Array(e);b3=new Array(e);b5=new Array(e);for(;b0
a";ca=b0.getElementsByTagName("*");b8=b0.getElementsByTagName("a")[0];b8.style.cssText="top:1px;float:left;opacity:.5";if(!ca||!ca.length||!b8){return{}}b9=o.createElement("select");b2=b9.appendChild(o.createElement("option"));b7=b0.getElementsByTagName("input")[0];cb={leadingWhitespace:(b0.firstChild.nodeType===3),tbody:!b0.getElementsByTagName("tbody").length,htmlSerialize:!!b0.getElementsByTagName("link").length,style:/top/.test(b8.getAttribute("style")),hrefNormalized:(b8.getAttribute("href")==="/a"),opacity:/^0.5/.test(b8.style.opacity),cssFloat:!!b8.style.cssFloat,checkOn:(b7.value==="on"),optSelected:b2.selected,getSetAttribute:b0.className!=="t",enctype:!!o.createElement("form").enctype,html5Clone:o.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",boxModel:(o.compatMode==="CSS1Compat"),submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true,boxSizingReliable:true,pixelPosition:false};b7.checked=true;cb.noCloneChecked=b7.cloneNode(true).checked;b9.disabled=true;cb.optDisabled=!b2.disabled;try{delete b0.test}catch(b5){cb.deleteExpando=false}if(!b0.addEventListener&&b0.attachEvent&&b0.fireEvent){b0.attachEvent("onclick",bZ=function(){cb.noCloneEvent=false});b0.cloneNode(true).fireEvent("onclick");b0.detachEvent("onclick",bZ)}b7=o.createElement("input");b7.value="t";b7.setAttribute("type","radio");cb.radioValue=b7.value==="t";b7.setAttribute("checked","checked");b7.setAttribute("name","t");b0.appendChild(b7);b6=o.createDocumentFragment();b6.appendChild(b0.lastChild);cb.checkClone=b6.cloneNode(true).cloneNode(true).lastChild.checked;cb.appendChecked=b7.checked;b6.removeChild(b7);b6.appendChild(b0);if(b0.attachEvent){for(b3 in {submit:true,change:true,focusin:true}){b4="on"+b3;b1=(b4 in b0);if(!b1){b0.setAttribute(b4,"return;");b1=(typeof b0[b4]==="function")}cb[b3+"Bubbles"]=b1}}bG(function(){var cc,cg,ce,cf,cd="padding:0;margin:0;border:0;display:block;overflow:hidden;",e=o.getElementsByTagName("body")[0];if(!e){return}cc=o.createElement("div");cc.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";e.insertBefore(cc,e.firstChild);cg=o.createElement("div");cc.appendChild(cg);cg.innerHTML="
t
";ce=cg.getElementsByTagName("td");ce[0].style.cssText="padding:0;margin:0;border:0;display:none";b1=(ce[0].offsetHeight===0);ce[0].style.display="";ce[1].style.display="none";cb.reliableHiddenOffsets=b1&&(ce[0].offsetHeight===0);cg.innerHTML="";cg.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";cb.boxSizing=(cg.offsetWidth===4);cb.doesNotIncludeMarginInBodyOffset=(e.offsetTop!==1);if(a2.getComputedStyle){cb.pixelPosition=(a2.getComputedStyle(cg,null)||{}).top!=="1%";cb.boxSizingReliable=(a2.getComputedStyle(cg,null)||{width:"4px"}).width==="4px";cf=o.createElement("div");cf.style.cssText=cg.style.cssText=cd;cf.style.marginRight=cf.style.width="0";cg.style.width="1px";cg.appendChild(cf);cb.reliableMarginRight=!parseFloat((a2.getComputedStyle(cf,null)||{}).marginRight)}if(typeof cg.style.zoom!=="undefined"){cg.innerHTML="";cg.style.cssText=cd+"width:1px;padding:1px;display:inline;zoom:1";cb.inlineBlockNeedsLayout=(cg.offsetWidth===3);cg.style.display="block";cg.style.overflow="visible";cg.innerHTML="
";cg.firstChild.style.width="5px";cb.shrinkWrapBlocks=(cg.offsetWidth!==3);cc.style.zoom=1}e.removeChild(cc);cc=cg=ce=cf=null});b6.removeChild(b0);ca=b8=b9=b2=b7=b6=b0=null;return cb})();var bt=/^(?:\{.*\}|\[.*\])$/,aL=/([A-Z])/g;bG.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(bG.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?bG.cache[e[bG.expando]]:e[bG.expando];return !!e&&!O(e)},data:function(b1,bZ,b3,b2){if(!bG.acceptData(b1)){return}var b4,b6,b7=bG.expando,b5=typeof bZ==="string",b8=b1.nodeType,e=b8?bG.cache:b1,b0=b8?b1[b7]:b1[b7]&&b7;if((!b0||!e[b0]||(!b2&&!e[b0].data))&&b5&&b3===aB){return}if(!b0){if(b8){b1[b7]=b0=bG.deletedIds.pop()||++bG.uuid}else{b0=b7}}if(!e[b0]){e[b0]={};if(!b8){e[b0].toJSON=bG.noop}}if(typeof bZ==="object"||typeof bZ==="function"){if(b2){e[b0]=bG.extend(e[b0],bZ)}else{e[b0].data=bG.extend(e[b0].data,bZ)}}b4=e[b0];if(!b2){if(!b4.data){b4.data={}}b4=b4.data}if(b3!==aB){b4[bG.camelCase(bZ)]=b3}if(b5){b6=b4[bZ];if(b6==null){b6=b4[bG.camelCase(bZ)]}}else{b6=b4}return b6},removeData:function(b1,bZ,b2){if(!bG.acceptData(b1)){return}var b5,b4,b3,b6=b1.nodeType,e=b6?bG.cache:b1,b0=b6?b1[bG.expando]:bG.expando;if(!e[b0]){return}if(bZ){b5=b2?e[b0]:e[b0].data;if(b5){if(!bG.isArray(bZ)){if(bZ in b5){bZ=[bZ]}else{bZ=bG.camelCase(bZ);if(bZ in b5){bZ=[bZ]}else{bZ=bZ.split(" ")}}}for(b4=0,b3=bZ.length;b41,null,false)},removeData:function(e){return this.each(function(){bG.removeData(this,e)})}});function bv(b1,b0,b2){if(b2===aB&&b1.nodeType===1){var bZ="data-"+b0.replace(aL,"-$1").toLowerCase();b2=b1.getAttribute(bZ);if(typeof b2==="string"){try{b2=b2==="true"?true:b2==="false"?false:b2==="null"?null:+b2+""===b2?+b2:bt.test(b2)?bG.parseJSON(b2):b2}catch(b3){}bG.data(b1,b0,b2)}else{b2=aB}}return b2}function O(bZ){var e;for(e in bZ){if(e==="data"&&bG.isEmptyObject(bZ[e])){continue}if(e!=="toJSON"){return false}}return true}bG.extend({queue:function(b0,bZ,b1){var e;if(b0){bZ=(bZ||"fx")+"queue";e=bG._data(b0,bZ);if(b1){if(!e||bG.isArray(b1)){e=bG._data(b0,bZ,bG.makeArray(b1))}else{e.push(b1)}}return e||[]}},dequeue:function(b3,b2){b2=b2||"fx";var bZ=bG.queue(b3,b2),b1=bZ.shift(),e=bG._queueHooks(b3,b2),b0=function(){bG.dequeue(b3,b2)};if(b1==="inprogress"){b1=bZ.shift()}if(b1){if(b2==="fx"){bZ.unshift("inprogress")}delete e.stop;b1.call(b3,b0,e)}if(!bZ.length&&e){e.empty.fire()}},_queueHooks:function(b0,bZ){var e=bZ+"queueHooks";return bG._data(b0,e)||bG._data(b0,e,{empty:bG.Callbacks("once memory").add(function(){bG.removeData(b0,bZ+"queue",true);bG.removeData(b0,e,true)})})}});bG.fn.extend({queue:function(e,bZ){var b0=2;if(typeof e!=="string"){bZ=e;e="fx";b0--}if(arguments.length1)},removeAttr:function(e){return this.each(function(){bG.removeAttr(this,e)})},prop:function(e,bZ){return bG.access(this,bG.prop,e,bZ,arguments.length>1)},removeProp:function(e){e=bG.propFix[e]||e;return this.each(function(){try{this[e]=aB;delete this[e]}catch(bZ){}})},addClass:function(b2){var b4,b0,bZ,b1,b3,b5,e;if(bG.isFunction(b2)){return this.each(function(b6){bG(this).addClass(b2.call(this,b6,this.className))})}if(b2&&typeof b2==="string"){b4=b2.split(aV);for(b0=0,bZ=this.length;b0-1){b2=b2.replace(" "+b1[b5]+" "," ")}}b3.className=b4?bG.trim(b2):""}}}return this},toggleClass:function(b1,bZ){var b0=typeof b1,e=typeof bZ==="boolean";if(bG.isFunction(b1)){return this.each(function(b2){bG(this).toggleClass(b1.call(this,b2,this.className,bZ),bZ)})}return this.each(function(){if(b0==="string"){var b4,b3=0,b2=bG(this),b5=bZ,b6=b1.split(aV);while((b4=b6[b3++])){b5=e?b5:!b2.hasClass(b4);b2[b5?"addClass":"removeClass"](b4)}}else{if(b0==="undefined"||b0==="boolean"){if(this.className){bG._data(this,"__className__",this.className)}this.className=this.className||b1===false?"":bG._data(this,"__className__")||""}}})},hasClass:function(e){var b1=" "+e+" ",b0=0,bZ=this.length;for(;b0-1){return true}}return false},val:function(b1){var e,bZ,b2,b0=this[0];if(!arguments.length){if(b0){e=bG.valHooks[b0.type]||bG.valHooks[b0.nodeName.toLowerCase()];if(e&&"get" in e&&(bZ=e.get(b0,"value"))!==aB){return bZ}bZ=b0.value;return typeof bZ==="string"?bZ.replace(ai,""):bZ==null?"":bZ}return}b2=bG.isFunction(b1);return this.each(function(b4){var b5,b3=bG(this);if(this.nodeType!==1){return}if(b2){b5=b1.call(this,b4,b3.val())}else{b5=b1}if(b5==null){b5=""}else{if(typeof b5==="number"){b5+=""}else{if(bG.isArray(b5)){b5=bG.map(b5,function(b6){return b6==null?"":b6+""})}}}e=bG.valHooks[this.type]||bG.valHooks[this.nodeName.toLowerCase()];if(!e||!("set" in e)||e.set(this,b5,"value")===aB){this.value=b5}})}});bG.extend({valHooks:{option:{get:function(e){var bZ=e.attributes.value;return !bZ||bZ.specified?e.value:e.text}},select:{get:function(e){var b4,bZ,b3,b1,b2=e.selectedIndex,b5=[],b6=e.options,b0=e.type==="select-one";if(b2<0){return null}bZ=b0?b2:0;b3=b0?b2+1:b6.length;for(;bZ=0});if(!e.length){bZ.selectedIndex=-1}return e}}},attrFn:{},attr:function(b4,b1,b5,b3){var b0,e,b2,bZ=b4.nodeType;if(!b4||bZ===3||bZ===8||bZ===2){return}if(b3&&bG.isFunction(bG.fn[b1])){return bG(b4)[b1](b5)}if(typeof b4.getAttribute==="undefined"){return bG.prop(b4,b1,b5)}b2=bZ!==1||!bG.isXMLDoc(b4);if(b2){b1=b1.toLowerCase();e=bG.attrHooks[b1]||(M.test(b1)?bV:a7)}if(b5!==aB){if(b5===null){bG.removeAttr(b4,b1);return}else{if(e&&"set" in e&&b2&&(b0=e.set(b4,b5,b1))!==aB){return b0}else{b4.setAttribute(b1,""+b5);return b5}}}else{if(e&&"get" in e&&b2&&(b0=e.get(b4,b1))!==null){return b0}else{b0=b4.getAttribute(b1);return b0===null?aB:b0}}},removeAttr:function(b1,b3){var b2,b4,bZ,e,b0=0;if(b3&&b1.nodeType===1){b4=b3.split(aV);for(;b0=0)}}})});var bE=/^(?:textarea|input|select)$/i,br=/^([^\.]*|)(?:\.(.+)|)$/,ba=/(?:^|\s)hover(\.\S+|)\b/,a3=/^key/,bK=/^(?:mouse|contextmenu)|click/,by=/^(?:focusinfocus|focusoutblur)$/,aq=function(e){return bG.event.special.hover?e:e.replace(ba,"mouseenter$1 mouseleave$1")};bG.event={add:function(b1,b5,cc,b3,b2){var b6,b4,cd,cb,ca,b8,e,b9,bZ,b0,b7;if(b1.nodeType===3||b1.nodeType===8||!b5||!cc||!(b6=bG._data(b1))){return}if(cc.handler){bZ=cc;cc=bZ.handler;b2=bZ.selector}if(!cc.guid){cc.guid=bG.guid++}cd=b6.events;if(!cd){b6.events=cd={}}b4=b6.handle;if(!b4){b6.handle=b4=function(ce){return typeof bG!=="undefined"&&(!ce||bG.event.triggered!==ce.type)?bG.event.dispatch.apply(b4.elem,arguments):aB};b4.elem=b1}b5=bG.trim(aq(b5)).split(" ");for(cb=0;cb=0){ca=ca.slice(0,-1);b1=true}if(ca.indexOf(".")>=0){b0=ca.split(".");ca=b0.shift();b0.sort()}if((!b4||bG.event.customEvent[ca])&&!bG.event.global[ca]){return}bZ=typeof bZ==="object"?bZ[bG.expando]?bZ:new bG.Event(ca,bZ):new bG.Event(ca);bZ.type=ca;bZ.isTrigger=true;bZ.exclusive=b1;bZ.namespace=b0.join(".");bZ.namespace_re=bZ.namespace?new RegExp("(^|\\.)"+b0.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;b2=ca.indexOf(":")<0?"on"+ca:"";if(!b4){e=bG.cache;for(b7 in e){if(e[b7].events&&e[b7].events[ca]){bG.event.trigger(bZ,b6,e[b7].handle.elem,true)}}return}bZ.result=aB;if(!bZ.target){bZ.target=b4}b6=b6!=null?bG.makeArray(b6):[];b6.unshift(bZ);b9=bG.event.special[ca]||{};if(b9.trigger&&b9.trigger.apply(b4,b6)===false){return}b5=[[b4,b9.bindType||ca]];if(!cd&&!b9.noBubble&&!bG.isWindow(b4)){cc=b9.delegateType||ca;cb=by.test(cc+ca)?b4:b4.parentNode;for(b3=b4;cb;cb=cb.parentNode){b5.push([cb,cc]);b3=cb}if(b3===(b4.ownerDocument||o)){b5.push([b3.defaultView||b3.parentWindow||a2,cc])}}for(b7=0;b7b6){bZ.push({elem:this,matches:b7.slice(b6)})}for(cd=0;cd0?this.on(e,null,b1,b0):this.trigger(e)};if(a3.test(e)){bG.event.fixHooks[e]=bG.event.keyHooks}if(bK.test(e)){bG.event.fixHooks[e]=bG.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://sizzlejs.com/ + */ +(function(cO,cg){var cT,co,cf,b2,b8,b6=cO.document,b9=b6.documentElement,cw="undefined",ca=false,b7=true,ce=0,cj=[].slice,cS=[].push,cW=("sizcache"+Math.random()).replace(".",""),cz="[\\x20\\t\\r\\n\\f]",ci="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",ch=ci.replace("w","w#"),c1="([*^$|!~]?=)",cL="\\["+cz+"*("+ci+")"+cz+"*(?:"+c1+cz+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ch+")|)|)"+cz+"*\\]",c2=":("+ci+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",cB=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",cd=cz+"*([\\x20\\t\\r\\n\\f>+~])"+cz+"*",cc="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+cL+"|"+c2.replace(2,7)+"|[^\\\\(),])+",cU=new RegExp("^"+cz+"+|((?:^|[^\\\\])(?:\\\\.)*)"+cz+"+$","g"),cF=new RegExp("^"+cd),ct=new RegExp(cc+"?(?="+cz+"*,|$)","g"),cJ=new RegExp("^(?:(?!,)(?:(?:^|,)"+cz+"*"+cc+")*?|"+cz+"*(.*?))(\\)|$)"),cZ=new RegExp(cc.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+cd,"g"),cK=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,cP=/[\x20\t\r\n\f]*[+~]/,cX=/:not\($/,cp=/h\d/i,cM=/input|select|textarea|button/i,cs=/\\(?!\\)/g,cE={ID:new RegExp("^#("+ci+")"),CLASS:new RegExp("^\\.("+ci+")"),NAME:new RegExp("^\\[name=['\"]?("+ci+")['\"]?\\]"),TAG:new RegExp("^("+ci.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+cL),PSEUDO:new RegExp("^"+c2),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+cz+"*(even|odd|(([+-]|)(\\d*)n|)"+cz+"*(?:([+-]|)"+cz+"*(\\d+)|))"+cz+"*\\)|)","i"),POS:new RegExp(cB,"ig"),needsContext:new RegExp("^"+cz+"*[>+~]|"+cB,"i")},cR={},cq=[],cl={},cu=[],cY=function(e){e.sizzleFilter=true;return e},b3=function(e){return function(c3){return c3.nodeName.toLowerCase()==="input"&&c3.type===e}},cr=function(e){return function(c4){var c3=c4.nodeName.toLowerCase();return(c3==="input"||c3==="button")&&c4.type===e}},cH=function(c3){var c4=false,c6=b6.createElement("div");try{c4=c3(c6)}catch(c5){}c6=null;return c4},cn=cH(function(c3){c3.innerHTML="";var e=typeof c3.lastChild.getAttribute("multiple");return e!=="boolean"&&e!=="string"}),b0=cH(function(c3){c3.id=cW+0;c3.innerHTML="
";b9.insertBefore(c3,b9.firstChild);var e=b6.getElementsByName&&b6.getElementsByName(cW).length===2+b6.getElementsByName(cW+0).length;b8=!b6.getElementById(cW);b9.removeChild(c3);return e}),b5=cH(function(e){e.appendChild(b6.createComment(""));return e.getElementsByTagName("*").length===0}),cD=cH(function(e){e.innerHTML="";return e.firstChild&&typeof e.firstChild.getAttribute!==cw&&e.firstChild.getAttribute("href")==="#"}),cC=cH(function(e){e.innerHTML="";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return false}e.lastChild.className="e";return e.getElementsByClassName("e").length!==1});var cN=function(c5,e,c7,da){c7=c7||[];e=e||b6;var c8,c3,c9,c4,c6=e.nodeType;if(c6!==1&&c6!==9){return[]}if(!c5||typeof c5!=="string"){return c7}c9=ck(e);if(!c9&&!da){if((c8=cK.exec(c5))){if((c4=c8[1])){if(c6===9){c3=e.getElementById(c4);if(c3&&c3.parentNode){if(c3.id===c4){c7.push(c3);return c7}}else{return c7}}else{if(e.ownerDocument&&(c3=e.ownerDocument.getElementById(c4))&&cA(e,c3)&&c3.id===c4){c7.push(c3);return c7}}}else{if(c8[2]){cS.apply(c7,cj.call(e.getElementsByTagName(c5),0));return c7}else{if((c4=c8[3])&&cC&&e.getElementsByClassName){cS.apply(c7,cj.call(e.getElementsByClassName(c4),0));return c7}}}}}return cV(c5,e,c7,da,c9)};var cG=cN.selectors={cacheLength:50,match:cE,order:["ID","TAG"],attrHandle:{},createPseudo:cY,find:{ID:b8?function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e&&e.parentNode?[e]:[]}}:function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e?e.id===c5||typeof e.getAttributeNode!==cw&&e.getAttributeNode("id").value===c5?[e]:cg:[]}},TAG:b5?function(e,c3){if(typeof c3.getElementsByTagName!==cw){return c3.getElementsByTagName(e)}}:function(e,c6){var c5=c6.getElementsByTagName(e);if(e==="*"){var c7,c4=[],c3=0;for(;(c7=c5[c3]);c3++){if(c7.nodeType===1){c4.push(c7)}}return c4}return c5}},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){e[1]=e[1].replace(cs,"");e[3]=(e[4]||e[5]||"").replace(cs,"");if(e[2]==="~="){e[3]=" "+e[3]+" "}return e.slice(0,4)},CHILD:function(e){e[1]=e[1].toLowerCase();if(e[1]==="nth"){if(!e[2]){cN.error(e[0])}e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd"));e[4]=+((e[6]+e[7])||e[2]==="odd")}else{if(e[2]){cN.error(e[0])}}return e},PSEUDO:function(e){var c3,c4=e[4];if(cE.CHILD.test(e[0])){return null}if(c4&&(c3=cJ.exec(c4))&&c3.pop()){e[0]=e[0].slice(0,c3[0].length-c4.length-1);c4=c3[0].slice(0,-1)}e.splice(2,3,c4||e[3]);return e}},filter:{ID:b8?function(e){e=e.replace(cs,"");return function(c3){return c3.getAttribute("id")===e}}:function(e){e=e.replace(cs,"");return function(c4){var c3=typeof c4.getAttributeNode!==cw&&c4.getAttributeNode("id");return c3&&c3.value===e}},TAG:function(e){if(e==="*"){return function(){return true}}e=e.replace(cs,"").toLowerCase();return function(c3){return c3.nodeName&&c3.nodeName.toLowerCase()===e}},CLASS:function(e){var c3=cR[e];if(!c3){c3=cR[e]=new RegExp("(^|"+cz+")"+e+"("+cz+"|$)");cq.push(e);if(cq.length>cG.cacheLength){delete cR[cq.shift()]}}return function(c4){return c3.test(c4.className||(typeof c4.getAttribute!==cw&&c4.getAttribute("class"))||"")}},ATTR:function(c4,c3,e){if(!c3){return function(c5){return cN.attr(c5,c4)!=null}}return function(c6){var c5=cN.attr(c6,c4),c7=c5+"";if(c5==null){return c3==="!="}switch(c3){case"=":return c7===e;case"!=":return c7!==e;case"^=":return e&&c7.indexOf(e)===0;case"*=":return e&&c7.indexOf(e)>-1;case"$=":return e&&c7.substr(c7.length-e.length)===e;case"~=":return(" "+c7+" ").indexOf(e)>-1;case"|=":return c7===e||c7.substr(0,e.length+1)===e+"-"}}},CHILD:function(c3,c5,c6,c4){if(c3==="nth"){var e=ce++;return function(da){var c7,db,c9=0,c8=da;if(c6===1&&c4===0){return true}c7=da.parentNode;if(c7&&(c7[cW]!==e||!da.sizset)){for(c8=c7.firstChild;c8;c8=c8.nextSibling){if(c8.nodeType===1){c8.sizset=++c9;if(c8===da){break}}}c7[cW]=e}db=da.sizset-c4;if(c6===0){return db===0}else{return(db%c6===0&&db/c6>=0)}}}return function(c8){var c7=c8;switch(c3){case"only":case"first":while((c7=c7.previousSibling)){if(c7.nodeType===1){return false}}if(c3==="first"){return true}c7=c8;case"last":while((c7=c7.nextSibling)){if(c7.nodeType===1){return false}}return true}}},PSEUDO:function(c6,c5,c3,e){var c4=cG.pseudos[c6]||cG.pseudos[c6.toLowerCase()];if(!c4){cN.error("unsupported pseudo: "+c6)}if(!c4.sizzleFilter){return c4}return c4(c5,c3,e)}},pseudos:{not:cY(function(e,c4,c3){var c5=cb(e.replace(cU,"$1"),c4,c3);return function(c6){return !c5(c6)}}),enabled:function(e){return e.disabled===false},disabled:function(e){return e.disabled===true},checked:function(e){var c3=e.nodeName.toLowerCase();return(c3==="input"&&!!e.checked)||(c3==="option"&&!!e.selected)},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !cG.pseudos.empty(e)},empty:function(c3){var e;c3=c3.firstChild;while(c3){if(c3.nodeName>"@"||(e=c3.nodeType)===3||e===4){return false}c3=c3.nextSibling}return true},contains:cY(function(e){return function(c3){return(c3.textContent||c3.innerText||bZ(c3)).indexOf(e)>-1}}),has:cY(function(e){return function(c3){return cN(e,c3).length>0}}),header:function(e){return cp.test(e.nodeName)},text:function(c4){var c3,e;return c4.nodeName.toLowerCase()==="input"&&(c3=c4.type)==="text"&&((e=c4.getAttribute("type"))==null||e.toLowerCase()===c3)},radio:b3("radio"),checkbox:b3("checkbox"),file:b3("file"),password:b3("password"),image:b3("image"),submit:cr("submit"),reset:cr("reset"),button:function(c3){var e=c3.nodeName.toLowerCase();return e==="input"&&c3.type==="button"||e==="button"},input:function(e){return cM.test(e.nodeName)},focus:function(e){var c3=e.ownerDocument;return e===c3.activeElement&&(!c3.hasFocus||c3.hasFocus())&&!!(e.type||e.href)},active:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(c4,c3,e){return e?c4.slice(1):[c4[0]]},last:function(c5,c4,c3){var e=c5.pop();return c3?c5:[e]},even:function(c7,c6,c5){var c4=[],c3=c5?1:0,e=c7.length;for(;c30?c6(c5,c8,c7):[]}function cQ(dc,e,da,c4,dg){var c7,c3,c6,di,c9,dh,db,df,dd=0,de=dg.length,c5=cE.POS,c8=new RegExp("^"+c5.source+"(?!"+cz+")","i"),dj=function(){var dl=1,dk=arguments.length-2;for(;dlc6){db=dc.slice(c6,c7.index);c6=df;dh=[e];if(cF.test(db)){if(c9){dh=c9}c9=c4}if((c3=cX.test(db))){db=db.slice(0,-5).replace(cF,"$&*")}if(c7.length>1){c7[0].replace(c8,dj)}c9=cI(db,c7[1],c7[2],dh,c9,c3)}}if(c9){di=di.concat(c9);if((db=dc.slice(c6))&&db!==")"){if(cF.test(db)){cm(db,di,da,c4)}else{cN(db,e,da,c4?c4.concat(c9):c9)}}else{cS.apply(da,di)}}else{cN(dc,e,da,c4)}}return de===1?da:cN.uniqueSort(da)}function b1(c8,c4,db){var dd,dc,de,c6=[],c9=0,da=cJ.exec(c8),c3=!da.pop()&&!da.pop(),df=c3&&c8.match(ct)||[""],e=cG.preFilter,c5=cG.filter,c7=!db&&c4!==b6;for(;(dc=df[c9])!=null&&c3;c9++){c6.push(dd=[]);if(c7){dc=" "+dc}while(dc){c3=false;if((da=cF.exec(dc))){dc=dc.slice(da[0].length);c3=dd.push({part:da.pop().replace(cU," "),captures:da})}for(de in c5){if((da=cE[de].exec(dc))&&(!e[de]||(da=e[de](da,c4,db)))){dc=dc.slice(da.shift().length);c3=dd.push({part:de,captures:da})}}if(!c3){break}}}if(!c3){cN.error(c8)}return c6}function cx(c6,c5,c4){var e=c5.dir,c3=ce++;if(!c6){c6=function(c7){return c7===c4}}return c5.first?function(c8,c7){while((c8=c8[e])){if(c8.nodeType===1){return c6(c8,c7)&&c8}}}:function(c9,c8){var c7,da=c3+"."+co,db=da+"."+cT;while((c9=c9[e])){if(c9.nodeType===1){if((c7=c9[cW])===db){return c9.sizset}else{if(typeof c7==="string"&&c7.indexOf(da)===0){if(c9.sizset){return c9}}else{c9[cW]=db;if(c6(c9,c8)){c9.sizset=true;return c9}c9.sizset=false}}}}}}function cv(e,c3){return e?function(c6,c5){var c4=c3(c6,c5);return c4&&e(c4===true?c6:c4,c5)}:c3}function cy(c7,c5,e){var c4,c6,c3=0;for(;(c4=c7[c3]);c3++){if(cG.relative[c4.part]){c6=cx(c6,cG.relative[c4.part],c5)}else{c4.captures.push(c5,e);c6=cv(c6,cG.filter[c4.part].apply(null,c4.captures))}}return c6}function b4(e){return function(c5,c4){var c6,c3=0;for(;(c6=e[c3]);c3++){if(c6(c5,c4)){return true}}return false}}var cb=cN.compile=function(e,c5,c3){var c8,c7,c4,c6=cl[e];if(c6&&c6.context===c5){return c6}c7=b1(e,c5,c3);for(c4=0;(c8=c7[c4]);c4++){c7[c4]=cy(c8,c5,c3)}c6=cl[e]=b4(c7);c6.context=c5;c6.runs=c6.dirruns=0;cu.push(e);if(cu.length>cG.cacheLength){delete cl[cu.shift()]}return c6};cN.matches=function(c3,e){return cN(c3,null,null,e)};cN.matchesSelector=function(e,c3){return cN(c3,null,null,[e]).length>0};var cV=function(c6,c3,c8,dc,db){c6=c6.replace(cU,"$1");var e,dd,c9,de,c4,c5,dg,dh,c7,da=c6.match(ct),df=c6.match(cZ),di=c3.nodeType;if(cE.POS.test(c6)){return cQ(c6,c3,c8,dc,da)}if(dc){e=cj.call(dc,0)}else{if(da&&da.length===1){if(df.length>1&&di===9&&!db&&(da=cE.ID.exec(df[0]))){c3=cG.find.ID(da[1],c3,db)[0];if(!c3){return c8}c6=c6.slice(df.shift().length)}dh=((da=cP.exec(df[0]))&&!da.index&&c3.parentNode)||c3;c7=df.pop();c5=c7.split(":not")[0];for(c9=0,de=cG.order.length;c9";if(!c9.querySelectorAll("[selected]").length){c3.push("\\["+cz+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)")}if(!c9.querySelectorAll(":checked").length){c3.push(":checked")}});cH(function(c9){c9.innerHTML="

";if(c9.querySelectorAll("[test^='']").length){c3.push("[*^$]="+cz+"*(?:\"\"|'')")}c9.innerHTML="";if(!c9.querySelectorAll(":enabled").length){c3.push(":enabled",":disabled")}});c3=c3.length&&new RegExp(c3.join("|"));cV=function(de,da,df,dh,dg){if(!dh&&!dg&&(!c3||!c3.test(de))){if(da.nodeType===9){try{cS.apply(df,cj.call(da.querySelectorAll(de),0));return df}catch(dd){}}else{if(da.nodeType===1&&da.nodeName.toLowerCase()!=="object"){var dc=da.getAttribute("id"),c9=dc||cW,db=cP.test(de)&&da.parentNode||da;if(dc){c9=c9.replace(c6,"\\$&")}else{da.setAttribute("id",c9)}try{cS.apply(df,cj.call(db.querySelectorAll(de.replace(ct,"[id='"+c9+"'] $&")),0));return df}catch(dd){}finally{if(!dc){da.removeAttribute("id")}}}}}return c8(de,da,df,dh,dg)};if(c5){cH(function(da){c7=c5.call(da,"div");try{c5.call(da,"[test!='']:sizzle");e.push(cG.match.PSEUDO)}catch(c9){}});e=new RegExp(e.join("|"));cN.matchesSelector=function(da,dc){dc=dc.replace(c4,"='$1']");if(!ck(da)&&!e.test(dc)&&(!c3||!c3.test(dc))){try{var c9=c5.call(da,dc);if(c9||c7||da.document&&da.document.nodeType!==11){return c9}}catch(db){}}return cN(dc,null,null,[da]).length>0}}})()}cN.attr=bG.attr;bG.find=cN;bG.expr=cN.selectors;bG.expr[":"]=bG.expr.pseudos;bG.unique=cN.uniqueSort;bG.text=cN.getText;bG.isXMLDoc=cN.isXML;bG.contains=cN.contains})(a2);var ag=/Until$/,bq=/^(?:parents|prev(?:Until|All))/,al=/^.[^:#\[\.,]*$/,z=bG.expr.match.needsContext,bu={children:true,contents:true,next:true,prev:true};bG.fn.extend({find:function(e){var b2,bZ,b4,b5,b3,b1,b0=this;if(typeof e!=="string"){return bG(e).filter(function(){for(b2=0,bZ=b0.length;b20){for(b5=b4;b5=0:bG.filter(e,this).length>0:this.filter(e).length>0)},closest:function(b2,b1){var b3,b0=0,e=this.length,bZ=[],b4=z.test(b2)||typeof b2!=="string"?bG(b2,b1||this.context):0;for(;b0-1:bG.find.matchesSelector(b3,b2)){bZ.push(b3);break}b3=b3.parentNode}}bZ=bZ.length>1?bG.unique(bZ):bZ;return this.pushStack(bZ,"closest",b2)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return bG.inArray(this[0],bG(e))}return bG.inArray(e.jquery?e[0]:e,this)},add:function(e,bZ){var b1=typeof e==="string"?bG(e,bZ):bG.makeArray(e&&e.nodeType?[e]:e),b0=bG.merge(this.get(),b1);return this.pushStack(aR(b1[0])||aR(b0[0])?b0:bG.unique(b0))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});bG.fn.andSelf=bG.fn.addBack;function aR(e){return !e||!e.parentNode||e.parentNode.nodeType===11}function aY(bZ,e){do{bZ=bZ[e]}while(bZ&&bZ.nodeType!==1);return bZ}bG.each({parent:function(bZ){var e=bZ.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return bG.dir(e,"parentNode")},parentsUntil:function(bZ,e,b0){return bG.dir(bZ,"parentNode",b0)},next:function(e){return aY(e,"nextSibling")},prev:function(e){return aY(e,"previousSibling")},nextAll:function(e){return bG.dir(e,"nextSibling")},prevAll:function(e){return bG.dir(e,"previousSibling")},nextUntil:function(bZ,e,b0){return bG.dir(bZ,"nextSibling",b0)},prevUntil:function(bZ,e,b0){return bG.dir(bZ,"previousSibling",b0)},siblings:function(e){return bG.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return bG.sibling(e.firstChild)},contents:function(e){return bG.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:bG.merge([],e.childNodes)}},function(e,bZ){bG.fn[e]=function(b2,b0){var b1=bG.map(this,bZ,b2);if(!ag.test(e)){b0=b2}if(b0&&typeof b0==="string"){b1=bG.filter(b0,b1)}b1=this.length>1&&!bu[e]?bG.unique(b1):b1;if(this.length>1&&bq.test(e)){b1=b1.reverse()}return this.pushStack(b1,e,a4.call(arguments).join(","))}});bG.extend({filter:function(b0,e,bZ){if(bZ){b0=":not("+b0+")"}return e.length===1?bG.find.matchesSelector(e[0],b0)?[e[0]]:[]:bG.find.matches(b0,e)},dir:function(b0,bZ,b2){var e=[],b1=b0[bZ];while(b1&&b1.nodeType!==9&&(b2===aB||b1.nodeType!==1||!bG(b1).is(b2))){if(b1.nodeType===1){e.push(b1)}b1=b1[bZ]}return e},sibling:function(b0,bZ){var e=[];for(;b0;b0=b0.nextSibling){if(b0.nodeType===1&&b0!==bZ){e.push(b0)}}return e}});function aM(b1,b0,e){b0=b0||0;if(bG.isFunction(b0)){return bG.grep(b1,function(b3,b2){var b4=!!b0.call(b3,b2,b3);return b4===e})}else{if(b0.nodeType){return bG.grep(b1,function(b3,b2){return(b3===b0)===e})}else{if(typeof b0==="string"){var bZ=bG.grep(b1,function(b2){return b2.nodeType===1});if(al.test(b0)){return bG.filter(b0,bZ,!e)}else{b0=bG.filter(b0,bZ)}}}}return bG.grep(b1,function(b3,b2){return(bG.inArray(b3,b0)>=0)===e})}function B(e){var b0=c.split("|"),bZ=e.createDocumentFragment();if(bZ.createElement){while(b0.length){bZ.createElement(b0.pop())}}return bZ}var c="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",av=/ jQuery\d+="(?:null|\d+)"/g,bY=/^\s+/,ay=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,p=/<([\w:]+)/,bT=/]","i"),aE=/^(?:checkbox|radio)$/,bR=/checked\s*(?:[^=]|=\s*.checked.)/i,bw=/\/(java|ecma)script/i,aH=/^\s*\s*$/g,T={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},aQ=B(o),l=aQ.appendChild(o.createElement("div"));T.optgroup=T.option;T.tbody=T.tfoot=T.colgroup=T.caption=T.thead;T.th=T.td;if(!bG.support.htmlSerialize){T._default=[1,"X
","
"]}bG.fn.extend({text:function(e){return bG.access(this,function(bZ){return bZ===aB?bG.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).createTextNode(bZ))},null,e,arguments.length)},wrapAll:function(e){if(bG.isFunction(e)){return this.each(function(b0){bG(this).wrapAll(e.call(this,b0))})}if(this[0]){var bZ=bG(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bZ.insertBefore(this[0])}bZ.map(function(){var b0=this;while(b0.firstChild&&b0.firstChild.nodeType===1){b0=b0.firstChild}return b0}).append(this)}return this},wrapInner:function(e){if(bG.isFunction(e)){return this.each(function(bZ){bG(this).wrapInner(e.call(this,bZ))})}return this.each(function(){var bZ=bG(this),b0=bZ.contents();if(b0.length){b0.wrapAll(e)}else{bZ.append(e)}})},wrap:function(e){var bZ=bG.isFunction(e);return this.each(function(b0){bG(this).wrapAll(bZ?e.call(this,b0):e)})},unwrap:function(){return this.parent().each(function(){if(!bG.nodeName(this,"body")){bG(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.insertBefore(e,this.firstChild)}})},before:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(e,this),"before",this.selector)}},after:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this.nextSibling)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(this,e),"after",this.selector)}},remove:function(e,b1){var b0,bZ=0;for(;(b0=this[bZ])!=null;bZ++){if(!e||bG.filter(e,[b0]).length){if(!b1&&b0.nodeType===1){bG.cleanData(b0.getElementsByTagName("*"));bG.cleanData([b0])}if(b0.parentNode){b0.parentNode.removeChild(b0)}}}return this},empty:function(){var bZ,e=0;for(;(bZ=this[e])!=null;e++){if(bZ.nodeType===1){bG.cleanData(bZ.getElementsByTagName("*"))}while(bZ.firstChild){bZ.removeChild(bZ.firstChild)}}return this},clone:function(bZ,e){bZ=bZ==null?false:bZ;e=e==null?bZ:e;return this.map(function(){return bG.clone(this,bZ,e)})},html:function(e){return bG.access(this,function(b2){var b1=this[0]||{},b0=0,bZ=this.length;if(b2===aB){return b1.nodeType===1?b1.innerHTML.replace(av,""):aB}if(typeof b2==="string"&&!aj.test(b2)&&(bG.support.htmlSerialize||!K.test(b2))&&(bG.support.leadingWhitespace||!bY.test(b2))&&!T[(p.exec(b2)||["",""])[1].toLowerCase()]){b2=b2.replace(ay,"<$1>");try{for(;b01&&typeof b5==="string"&&bR.test(b5)){return this.each(function(){bG(this).domManip(b4,b8,b7)})}if(bG.isFunction(b5)){return this.each(function(ca){var b9=bG(this);b4[0]=b5.call(this,ca,b8?b9.html():aB);b9.domManip(b4,b8,b7)})}if(this[0]){b0=bG.buildFragment(b4,this,bZ);b3=b0.fragment;b2=b3.firstChild;if(b3.childNodes.length===1){b3=b2}if(b2){b8=b8&&bG.nodeName(b2,"tr");for(b6=b0.cacheable||e-1;b10?this.clone(true):this).get();bG(b6[b4])[bZ](b2);b3=b3.concat(b2)}return this.pushStack(b3,e,b6.selector)}}});function m(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function bS(e){if(aE.test(e.type)){e.defaultChecked=e.checked}}bG.extend({clone:function(b2,b4,b0){var e,bZ,b1,b3;if(bG.support.html5Clone||bG.isXMLDoc(b2)||!K.test("<"+b2.nodeName+">")){b3=b2.cloneNode(true)}else{l.innerHTML=b2.outerHTML;l.removeChild(b3=l.firstChild)}if((!bG.support.noCloneEvent||!bG.support.noCloneChecked)&&(b2.nodeType===1||b2.nodeType===11)&&!bG.isXMLDoc(b2)){G(b2,b3);e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){if(bZ[b1]){G(e[b1],bZ[b1])}}}if(b4){ao(b2,b3);if(b0){e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){ao(e[b1],bZ[b1])}}}e=bZ=null;return b3},clean:function(cb,b0,e,b1){var b7,b3,ca,cf,b4,ce,b5,b2,bZ,b9,cd,b6,b8=0,cc=[];if(!b0||typeof b0.createDocumentFragment==="undefined"){b0=o}for(b3=b0===o&&aQ;(ca=cb[b8])!=null;b8++){if(typeof ca==="number"){ca+=""}if(!ca){continue}if(typeof ca==="string"){if(!J.test(ca)){ca=b0.createTextNode(ca)}else{b3=b3||B(b0);b5=b5||b3.appendChild(b0.createElement("div"));ca=ca.replace(ay,"<$1>");cf=(p.exec(ca)||["",""])[1].toLowerCase();b4=T[cf]||T._default;ce=b4[0];b5.innerHTML=b4[1]+ca+b4[2];while(ce--){b5=b5.lastChild}if(!bG.support.tbody){b2=bT.test(ca);bZ=cf==="table"&&!b2?b5.firstChild&&b5.firstChild.childNodes:b4[1]===""&&!b2?b5.childNodes:[];for(b7=bZ.length-1;b7>=0;--b7){if(bG.nodeName(bZ[b7],"tbody")&&!bZ[b7].childNodes.length){bZ[b7].parentNode.removeChild(bZ[b7])}}}if(!bG.support.leadingWhitespace&&bY.test(ca)){b5.insertBefore(b0.createTextNode(bY.exec(ca)[0]),b5.firstChild)}ca=b5.childNodes;b5=b3.lastChild}}if(ca.nodeType){cc.push(ca)}else{cc=bG.merge(cc,ca)}}if(b5){b3.removeChild(b5);ca=b5=b3=null}if(!bG.support.appendChecked){for(b8=0;(ca=cc[b8])!=null;b8++){if(bG.nodeName(ca,"input")){bS(ca)}else{if(typeof ca.getElementsByTagName!=="undefined"){bG.grep(ca.getElementsByTagName("input"),bS)}}}}if(e){cd=function(cg){if(!cg.type||bw.test(cg.type)){return b1?b1.push(cg.parentNode?cg.parentNode.removeChild(cg):cg):e.appendChild(cg)}};for(b8=0;(ca=cc[b8])!=null;b8++){if(!(bG.nodeName(ca,"script")&&cd(ca))){e.appendChild(ca);if(typeof ca.getElementsByTagName!=="undefined"){b6=bG.grep(bG.merge([],ca.getElementsByTagName("script")),cd);cc.splice.apply(cc,[b8+1,0].concat(b6));b8+=b6.length}}}}return cc},cleanData:function(bZ,b7){var b2,b0,b1,b6,b3=0,b8=bG.expando,e=bG.cache,b4=bG.support.deleteExpando,b5=bG.event.special;for(;(b1=bZ[b3])!=null;b3++){if(b7||bG.acceptData(b1)){b0=b1[b8];b2=b0&&e[b0];if(b2){if(b2.events){for(b6 in b2.events){if(b5[b6]){bG.event.remove(b1,b6)}else{bG.removeEvent(b1,b6,b2.handle)}}}if(e[b0]){delete e[b0];if(b4){delete b1[b8]}else{if(b1.removeAttribute){b1.removeAttribute(b8)}else{b1[b8]=null}}bG.deletedIds.push(b0)}}}}}});(function(){var e,bZ;bG.uaMatch=function(b1){b1=b1.toLowerCase();var b0=/(chrome)[ \/]([\w.]+)/.exec(b1)||/(webkit)[ \/]([\w.]+)/.exec(b1)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(b1)||/(msie) ([\w.]+)/.exec(b1)||b1.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}};e=bG.uaMatch(d.userAgent);bZ={};if(e.browser){bZ[e.browser]=true;bZ.version=e.version}if(bZ.webkit){bZ.safari=true}bG.browser=bZ;bG.sub=function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bG.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bG&&!(b4 instanceof b0)){b4=b0(b4)}return bG.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(o);return b0}})();var F,az,aW,be=/alpha\([^)]*\)/i,aS=/opacity=([^)]*)/,bk=/^(top|right|bottom|left)$/,aZ=/^margin/,a8=new RegExp("^("+bx+")(.*)$","i"),W=new RegExp("^("+bx+")(?!px)[a-z%]+$","i"),S=new RegExp("^([-+])=("+bx+")","i"),bh={},a9={position:"absolute",visibility:"hidden",display:"block"},bA={letterSpacing:0,fontWeight:400,lineHeight:1},bQ=["Top","Right","Bottom","Left"],ar=["Webkit","O","Moz","ms"],aJ=bG.fn.toggle;function b(b1,bZ){if(bZ in b1){return bZ}var b2=bZ.charAt(0).toUpperCase()+bZ.slice(1),e=bZ,b0=ar.length;while(b0--){bZ=ar[b0]+b2;if(bZ in b1){return bZ}}return e}function Q(bZ,e){bZ=e||bZ;return bG.css(bZ,"display")==="none"||!bG.contains(bZ.ownerDocument,bZ)}function t(b3,e){var b2,b4,bZ=[],b0=0,b1=b3.length;for(;b01)},show:function(){return t(this,true)},hide:function(){return t(this)},toggle:function(b0,bZ){var e=typeof b0==="boolean";if(bG.isFunction(b0)&&bG.isFunction(bZ)){return aJ.apply(this,arguments)}return this.each(function(){if(e?b0:Q(this)){bG(this).show()}else{bG(this).hide()}})}});bG.extend({cssHooks:{opacity:{get:function(b0,bZ){if(bZ){var e=F(b0,"opacity");return e===""?"1":e}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":bG.support.cssFloat?"cssFloat":"styleFloat"},style:function(b1,b0,b7,b2){if(!b1||b1.nodeType===3||b1.nodeType===8||!b1.style){return}var b5,b6,b8,b3=bG.camelCase(b0),bZ=b1.style;b0=bG.cssProps[b3]||(bG.cssProps[b3]=b(bZ,b3));b8=bG.cssHooks[b0]||bG.cssHooks[b3];if(b7!==aB){b6=typeof b7;if(b6==="string"&&(b5=S.exec(b7))){b7=(b5[1]+1)*b5[2]+parseFloat(bG.css(b1,b0));b6="number"}if(b7==null||b6==="number"&&isNaN(b7)){return}if(b6==="number"&&!bG.cssNumber[b3]){b7+="px"}if(!b8||!("set" in b8)||(b7=b8.set(b1,b7,b2))!==aB){try{bZ[b0]=b7}catch(b4){}}}else{if(b8&&"get" in b8&&(b5=b8.get(b1,false,b2))!==aB){return b5}return bZ[b0]}},css:function(b4,b2,b3,bZ){var b5,b1,e,b0=bG.camelCase(b2);b2=bG.cssProps[b0]||(bG.cssProps[b0]=b(b4.style,b0));e=bG.cssHooks[b2]||bG.cssHooks[b0];if(e&&"get" in e){b5=e.get(b4,true,bZ)}if(b5===aB){b5=F(b4,b2)}if(b5==="normal"&&b2 in bA){b5=bA[b2]}if(b3||bZ!==aB){b1=parseFloat(b5);return b3||bG.isNumeric(b1)?b1||0:b5}return b5},swap:function(b2,b1,b3){var b0,bZ,e={};for(bZ in b1){e[bZ]=b2.style[bZ];b2.style[bZ]=b1[bZ]}b0=b3.call(b2);for(bZ in b1){b2.style[bZ]=e[bZ]}return b0}});if(a2.getComputedStyle){F=function(b5,bZ){var e,b2,b1,b4,b3=getComputedStyle(b5,null),b0=b5.style;if(b3){e=b3[bZ];if(e===""&&!bG.contains(b5.ownerDocument.documentElement,b5)){e=bG.style(b5,bZ)}if(W.test(e)&&aZ.test(bZ)){b2=b0.width;b1=b0.minWidth;b4=b0.maxWidth;b0.minWidth=b0.maxWidth=b0.width=e;e=b3.width;b0.width=b2;b0.minWidth=b1;b0.maxWidth=b4}}return e}}else{if(o.documentElement.currentStyle){F=function(b2,b0){var b3,e,bZ=b2.currentStyle&&b2.currentStyle[b0],b1=b2.style;if(bZ==null&&b1&&b1[b0]){bZ=b1[b0]}if(W.test(bZ)&&!bk.test(b0)){b3=b1.left;e=b2.runtimeStyle&&b2.runtimeStyle.left;if(e){b2.runtimeStyle.left=b2.currentStyle.left}b1.left=b0==="fontSize"?"1em":bZ;bZ=b1.pixelLeft+"px";b1.left=b3;if(e){b2.runtimeStyle.left=e}}return bZ===""?"auto":bZ}}}function aG(e,b0,b1){var bZ=a8.exec(b0);return bZ?Math.max(0,bZ[1]-(b1||0))+(bZ[2]||"px"):b0}function at(b1,bZ,e,b3){var b0=e===(b3?"border":"content")?4:bZ==="width"?1:0,b2=0;for(;b0<4;b0+=2){if(e==="margin"){b2+=bG.css(b1,e+bQ[b0],true)}if(b3){if(e==="content"){b2-=parseFloat(F(b1,"padding"+bQ[b0]))||0}if(e!=="margin"){b2-=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}else{b2+=parseFloat(F(b1,"padding"+bQ[b0]))||0;if(e!=="padding"){b2+=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}}return b2}function v(b1,bZ,e){var b2=bZ==="width"?b1.offsetWidth:b1.offsetHeight,b0=true,b3=bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box";if(b2<=0){b2=F(b1,bZ);if(b2<0||b2==null){b2=b1.style[bZ]}if(W.test(b2)){return b2}b0=b3&&(bG.support.boxSizingReliable||b2===b1.style[bZ]);b2=parseFloat(b2)||0}return(b2+at(b1,bZ,e||(b3?"border":"content"),b0))+"px"}function bC(b0){if(bh[b0]){return bh[b0]}var e=bG("<"+b0+">").appendTo(o.body),bZ=e.css("display");e.remove();if(bZ==="none"||bZ===""){az=o.body.appendChild(az||bG.extend(o.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!aW||!az.createElement){aW=(az.contentWindow||az.contentDocument).document;aW.write("");aW.close()}e=aW.body.appendChild(aW.createElement(b0));bZ=F(e,"display");o.body.removeChild(az)}bh[b0]=bZ;return bZ}bG.each(["height","width"],function(bZ,e){bG.cssHooks[e]={get:function(b2,b1,b0){if(b1){if(b2.offsetWidth!==0||F(b2,"display")!=="none"){return v(b2,e,b0)}else{return bG.swap(b2,a9,function(){return v(b2,e,b0)})}}},set:function(b1,b2,b0){return aG(b1,b2,b0?at(b1,e,b0,bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box"):0)}}});if(!bG.support.opacity){bG.cssHooks.opacity={get:function(bZ,e){return aS.test((e&&bZ.currentStyle?bZ.currentStyle.filter:bZ.style.filter)||"")?(0.01*parseFloat(RegExp.$1))+"":e?"1":""},set:function(b2,b3){var b1=b2.style,bZ=b2.currentStyle,e=bG.isNumeric(b3)?"alpha(opacity="+b3*100+")":"",b0=bZ&&bZ.filter||b1.filter||"";b1.zoom=1;if(b3>=1&&bG.trim(b0.replace(be,""))===""&&b1.removeAttribute){b1.removeAttribute("filter");if(bZ&&!bZ.filter){return}}b1.filter=be.test(b0)?b0.replace(be,e):b0+" "+e}}}bG(function(){if(!bG.support.reliableMarginRight){bG.cssHooks.marginRight={get:function(bZ,e){return bG.swap(bZ,{display:"inline-block"},function(){if(e){return F(bZ,"marginRight")}})}}}if(!bG.support.pixelPosition&&bG.fn.position){bG.each(["top","left"],function(e,bZ){bG.cssHooks[bZ]={get:function(b2,b1){if(b1){var b0=F(b2,bZ);return W.test(b0)?bG(b2).position()[bZ]+"px":b0}}}})}});if(bG.expr&&bG.expr.filters){bG.expr.filters.hidden=function(e){return(e.offsetWidth===0&&e.offsetHeight===0)||(!bG.support.reliableHiddenOffsets&&((e.style&&e.style.display)||F(e,"display"))==="none")};bG.expr.filters.visible=function(e){return !bG.expr.filters.hidden(e)}}bG.each({margin:"",padding:"",border:"Width"},function(e,bZ){bG.cssHooks[e+bZ]={expand:function(b2){var b1,b3=typeof b2==="string"?b2.split(" "):[b2],b0={};for(b1=0;b1<4;b1++){b0[e+bQ[b1]+bZ]=b3[b1]||b3[b1-2]||b3[0]}return b0}};if(!aZ.test(e)){bG.cssHooks[e+bZ].set=aG}});var bs=/%20/g,aP=/\[\]$/,U=/\r?\n/g,bz=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aD=/^(?:select|textarea)/i;bG.fn.extend({serialize:function(){return bG.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?bG.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||aD.test(this.nodeName)||bz.test(this.type))}).map(function(e,bZ){var b0=bG(this).val();return b0==null?null:bG.isArray(b0)?bG.map(b0,function(b2,b1){return{name:bZ.name,value:b2.replace(U,"\r\n")}}):{name:bZ.name,value:b0.replace(U,"\r\n")}}).get()}});bG.param=function(e,b0){var b1,bZ=[],b2=function(b3,b4){b4=bG.isFunction(b4)?b4():(b4==null?"":b4);bZ[bZ.length]=encodeURIComponent(b3)+"="+encodeURIComponent(b4)};if(b0===aB){b0=bG.ajaxSettings&&bG.ajaxSettings.traditional}if(bG.isArray(e)||(e.jquery&&!bG.isPlainObject(e))){bG.each(e,function(){b2(this.name,this.value)})}else{for(b1 in e){k(b1,e[b1],b0,b2)}}return bZ.join("&").replace(bs,"+")};function k(b0,b2,bZ,b1){var e;if(bG.isArray(b2)){bG.each(b2,function(b4,b3){if(bZ||aP.test(b0)){b1(b0,b3)}else{k(b0+"["+(typeof b3==="object"?b4:"")+"]",b3,bZ,b1)}})}else{if(!bZ&&bG.type(b2)==="object"){for(e in b2){k(b0+"["+e+"]",b2[e],bZ,b1)}}else{b1(b0,b2)}}}var Y,bX,an=/#.*$/,ad=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,C=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,s=/^(?:GET|HEAD)$/,aC=/^\/\//,bN=/\?/,g=/)<[^<]*)*<\/script>/gi,P=/([?&])_=[^&]*/,aT=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,bW=bG.fn.load,w={},a6={},aX=["*/"]+["*"];try{Y=aI.href}catch(bd){Y=o.createElement("a");Y.href="";Y=Y.href}bX=aT.exec(Y.toLowerCase())||[];function bI(e){return function(b2,b4){if(typeof b2!=="string"){b4=b2;b2="*"}var bZ,b5,b6,b1=b2.toLowerCase().split(aV),b0=0,b3=b1.length;if(bG.isFunction(b4)){for(;b0=0){e=b1.slice(b3,b1.length);b1=b1.slice(0,b3)}if(bG.isFunction(b4)){b5=b4;b4=aB}else{if(typeof b4==="object"){b2="POST"}}bG.ajax({url:b1,type:b2,dataType:"html",data:b4,complete:function(b7,b6){if(b5){bZ.each(b5,b0||[b7.responseText,b6,b7])}}}).done(function(b6){b0=arguments;bZ.html(e?bG("
").append(b6.replace(g,"")).find(e):b6)});return this};bG.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bZ){bG.fn[bZ]=function(b0){return this.on(bZ,b0)}});bG.each(["get","post"],function(e,bZ){bG[bZ]=function(b0,b2,b3,b1){if(bG.isFunction(b2)){b1=b1||b3;b3=b2;b2=aB}return bG.ajax({type:bZ,url:b0,data:b2,success:b3,dataType:b1})}});bG.extend({getScript:function(e,bZ){return bG.get(e,aB,bZ,"script")},getJSON:function(e,bZ,b0){return bG.get(e,bZ,b0,"json")},ajaxSetup:function(bZ,e){if(e){u(bZ,bG.ajaxSettings)}else{e=bZ;bZ=bG.ajaxSettings}u(bZ,e);return bZ},ajaxSettings:{url:Y,isLocal:C.test(bX[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a2.String,"text html":true,"text json":bG.parseJSON,"text xml":bG.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:bI(w),ajaxTransport:bI(a6),ajax:function(b4,b1){if(typeof b4==="object"){b1=b4;b4=aB}b1=b1||{};var b7,cl,b2,cg,b9,cd,b0,cf,b8=bG.ajaxSetup({},b1),cn=b8.context||b8,cb=cn!==b8&&(cn.nodeType||cn instanceof bG)?bG(cn):bG.event,cm=bG.Deferred(),ci=bG.Callbacks("once memory"),b5=b8.statusCode||{},cc={},cj={},b3=0,b6="canceled",ce={readyState:0,setRequestHeader:function(co,cp){if(!b3){var e=co.toLowerCase();co=cj[e]=cj[e]||co;cc[co]=cp}return this},getAllResponseHeaders:function(){return b3===2?cl:null},getResponseHeader:function(co){var e;if(b3===2){if(!b2){b2={};while((e=ad.exec(cl))){b2[e[1].toLowerCase()]=e[2]}}e=b2[co.toLowerCase()]}return e===aB?null:e},overrideMimeType:function(e){if(!b3){b8.mimeType=e}return this},abort:function(e){e=e||b6;if(cg){cg.abort(e)}ca(0,e);return this}};function ca(cs,co,ct,cq){var e,cw,cu,cr,cv,cp=co;if(b3===2){return}b3=2;if(b9){clearTimeout(b9)}cg=aB;cl=cq||"";ce.readyState=cs>0?4:0;if(ct){cr=h(b8,ce,ct)}if(cs>=200&&cs<300||cs===304){if(b8.ifModified){cv=ce.getResponseHeader("Last-Modified");if(cv){bG.lastModified[b7]=cv}cv=ce.getResponseHeader("Etag");if(cv){bG.etag[b7]=cv}}if(cs===304){cp="notmodified";e=true}else{e=ae(b8,cr);cp=e.state;cw=e.data;cu=e.error;e=!cu}}else{cu=cp;if(!cp||cs){cp="error";if(cs<0){cs=0}}}ce.status=cs;ce.statusText=""+(co||cp);if(e){cm.resolveWith(cn,[cw,cp,ce])}else{cm.rejectWith(cn,[ce,cp,cu])}ce.statusCode(b5);b5=aB;if(b0){cb.trigger("ajax"+(e?"Success":"Error"),[ce,b8,e?cw:cu])}ci.fireWith(cn,[ce,cp]);if(b0){cb.trigger("ajaxComplete",[ce,b8]);if(!(--bG.active)){bG.event.trigger("ajaxStop")}}}cm.promise(ce);ce.success=ce.done;ce.error=ce.fail;ce.complete=ci.add;ce.statusCode=function(co){if(co){var e;if(b3<2){for(e in co){b5[e]=[b5[e],co[e]]}}else{e=co[ce.status];ce.always(e)}}return this};b8.url=((b4||b8.url)+"").replace(an,"").replace(aC,bX[1]+"//");b8.dataTypes=bG.trim(b8.dataType||"*").toLowerCase().split(aV);if(b8.crossDomain==null){cd=aT.exec(b8.url.toLowerCase());b8.crossDomain=!!(cd&&(cd[1]!=bX[1]||cd[2]!=bX[2]||(cd[3]||(cd[1]==="http:"?80:443))!=(bX[3]||(bX[1]==="http:"?80:443))))}if(b8.data&&b8.processData&&typeof b8.data!=="string"){b8.data=bG.param(b8.data,b8.traditional)}r(w,b8,b1,ce);if(b3===2){return ce}b0=b8.global;b8.type=b8.type.toUpperCase();b8.hasContent=!s.test(b8.type);if(b0&&bG.active++===0){bG.event.trigger("ajaxStart")}if(!b8.hasContent){if(b8.data){b8.url+=(bN.test(b8.url)?"&":"?")+b8.data;delete b8.data}b7=b8.url;if(b8.cache===false){var bZ=bG.now(),ck=b8.url.replace(P,"$1_="+bZ);b8.url=ck+((ck===b8.url)?(bN.test(b8.url)?"&":"?")+"_="+bZ:"")}}if(b8.data&&b8.hasContent&&b8.contentType!==false||b1.contentType){ce.setRequestHeader("Content-Type",b8.contentType)}if(b8.ifModified){b7=b7||b8.url;if(bG.lastModified[b7]){ce.setRequestHeader("If-Modified-Since",bG.lastModified[b7])}if(bG.etag[b7]){ce.setRequestHeader("If-None-Match",bG.etag[b7])}}ce.setRequestHeader("Accept",b8.dataTypes[0]&&b8.accepts[b8.dataTypes[0]]?b8.accepts[b8.dataTypes[0]]+(b8.dataTypes[0]!=="*"?", "+aX+"; q=0.01":""):b8.accepts["*"]);for(cf in b8.headers){ce.setRequestHeader(cf,b8.headers[cf])}if(b8.beforeSend&&(b8.beforeSend.call(cn,ce,b8)===false||b3===2)){return ce.abort()}b6="abort";for(cf in {success:1,error:1,complete:1}){ce[cf](b8[cf])}cg=r(a6,b8,b1,ce);if(!cg){ca(-1,"No Transport")}else{ce.readyState=1;if(b0){cb.trigger("ajaxSend",[ce,b8])}if(b8.async&&b8.timeout>0){b9=setTimeout(function(){ce.abort("timeout")},b8.timeout)}try{b3=1;cg.send(cc,ca)}catch(ch){if(b3<2){ca(-1,ch)}else{throw ch}}}return ce},active:0,lastModified:{},etag:{}});function h(b7,b6,b3){var b2,b4,b1,e,bZ=b7.contents,b5=b7.dataTypes,b0=b7.responseFields;for(b4 in b0){if(b4 in b3){b6[b0[b4]]=b3[b4]}}while(b5[0]==="*"){b5.shift();if(b2===aB){b2=b7.mimeType||b6.getResponseHeader("content-type")}}if(b2){for(b4 in bZ){if(bZ[b4]&&bZ[b4].test(b2)){b5.unshift(b4);break}}}if(b5[0] in b3){b1=b5[0]}else{for(b4 in b3){if(!b5[0]||b7.converters[b4+" "+b5[0]]){b1=b4;break}if(!e){e=b4}}b1=b1||e}if(b1){if(b1!==b5[0]){b5.unshift(b1)}return b3[b1]}}function ae(b9,b1){var b7,bZ,b5,b3,b6=b9.dataTypes.slice(),b0=b6[0],b8={},b2=0;if(b9.dataFilter){b1=b9.dataFilter(b1,b9.dataType)}if(b6[1]){for(b7 in b9.converters){b8[b7.toLowerCase()]=b9.converters[b7]}}for(;(b5=b6[++b2]);){if(b5!=="*"){if(b0!=="*"&&b0!==b5){b7=b8[b0+" "+b5]||b8["* "+b5];if(!b7){for(bZ in b8){b3=bZ.split(" ");if(b3[1]===b5){b7=b8[b0+" "+b3[0]]||b8["* "+b3[0]];if(b7){if(b7===true){b7=b8[bZ]}else{if(b8[bZ]!==true){b5=b3[0];b6.splice(b2--,0,b5)}}break}}}}if(b7!==true){if(b7&&b9["throws"]){b1=b7(b1)}else{try{b1=b7(b1)}catch(b4){return{state:"parsererror",error:b7?b4:"No conversion from "+b0+" to "+b5}}}}}b0=b5}}return{state:"success",data:b1}}var bp=[],aw=/\?/,a5=/(=)\?(?=&|$)|\?\?/,bl=bG.now();bG.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=bp.pop()||(bG.expando+"_"+(bl++));this[e]=true;return e}});bG.ajaxPrefilter("json jsonp",function(b8,b3,b7){var b6,e,b5,b1=b8.data,bZ=b8.url,b0=b8.jsonp!==false,b4=b0&&a5.test(bZ),b2=b0&&!b4&&typeof b1==="string"&&!(b8.contentType||"").indexOf("application/x-www-form-urlencoded")&&a5.test(b1);if(b8.dataTypes[0]==="jsonp"||b4||b2){b6=b8.jsonpCallback=bG.isFunction(b8.jsonpCallback)?b8.jsonpCallback():b8.jsonpCallback;e=a2[b6];if(b4){b8.url=bZ.replace(a5,"$1"+b6)}else{if(b2){b8.data=b1.replace(a5,"$1"+b6)}else{if(b0){b8.url+=(aw.test(bZ)?"&":"?")+b8.jsonp+"="+b6}}}b8.converters["script json"]=function(){if(!b5){bG.error(b6+" was not called")}return b5[0]};b8.dataTypes[0]="json";a2[b6]=function(){b5=arguments};b7.always(function(){a2[b6]=e;if(b8[b6]){b8.jsonpCallback=b3.jsonpCallback;bp.push(b6)}if(b5&&bG.isFunction(e)){e(b5[0])}b5=e=aB});return"script"}});bG.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){bG.globalEval(e);return e}}});bG.ajaxPrefilter("script",function(e){if(e.cache===aB){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});bG.ajaxTransport("script",function(b0){if(b0.crossDomain){var e,bZ=o.head||o.getElementsByTagName("head")[0]||o.documentElement;return{send:function(b1,b2){e=o.createElement("script");e.async="async";if(b0.scriptCharset){e.charset=b0.scriptCharset}e.src=b0.url;e.onload=e.onreadystatechange=function(b4,b3){if(b3||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bZ&&e.parentNode){bZ.removeChild(e)}e=aB;if(!b3){b2(200,"success")}}};bZ.insertBefore(e,bZ.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var ah,aO=a2.ActiveXObject?function(){for(var e in ah){ah[e](0,1)}}:false,au=0;function bB(){try{return new a2.XMLHttpRequest()}catch(bZ){}}function bb(){try{return new a2.ActiveXObject("Microsoft.XMLHTTP")}catch(bZ){}}bG.ajaxSettings.xhr=a2.ActiveXObject?function(){return !this.isLocal&&bB()||bb()}:bB;(function(e){bG.extend(bG.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(bG.ajaxSettings.xhr());if(bG.support.ajax){bG.ajaxTransport(function(e){if(!e.crossDomain||bG.support.cors){var bZ;return{send:function(b5,b0){var b3,b2,b4=e.xhr();if(e.username){b4.open(e.type,e.url,e.async,e.username,e.password)}else{b4.open(e.type,e.url,e.async)}if(e.xhrFields){for(b2 in e.xhrFields){b4[b2]=e.xhrFields[b2]}}if(e.mimeType&&b4.overrideMimeType){b4.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!b5["X-Requested-With"]){b5["X-Requested-With"]="XMLHttpRequest"}try{for(b2 in b5){b4.setRequestHeader(b2,b5[b2])}}catch(b1){}b4.send((e.hasContent&&e.data)||null);bZ=function(ce,b8){var b9,b7,b6,cc,cb;try{if(bZ&&(b8||b4.readyState===4)){bZ=aB;if(b3){b4.onreadystatechange=bG.noop;if(aO){delete ah[b3]}}if(b8){if(b4.readyState!==4){b4.abort()}}else{b9=b4.status;b6=b4.getAllResponseHeaders();cc={};cb=b4.responseXML;if(cb&&cb.documentElement){cc.xml=cb}try{cc.text=b4.responseText}catch(ce){}try{b7=b4.statusText}catch(cd){b7=""}if(!b9&&e.isLocal&&!e.crossDomain){b9=cc.text?200:404}else{if(b9===1223){b9=204}}}}}catch(ca){if(!b8){b0(-1,ca)}}if(cc){b0(b9,b7,cc,b6)}};if(!e.async){bZ()}else{if(b4.readyState===4){setTimeout(bZ,0)}else{b3=++au;if(aO){if(!ah){ah={};bG(a2).unload(aO)}ah[b3]=bZ}b4.onreadystatechange=bZ}}},abort:function(){if(bZ){bZ(0,1)}}}}})}var L,ab,bO=/^(?:toggle|show|hide)$/,bH=new RegExp("^(?:([-+])=|)("+bx+")([a-z%]*)$","i"),bM=/queueHooks$/,ax=[i],a1={"*":[function(bZ,b5){var b2,b6,e,b7=this.createTween(bZ,b5),b3=bH.exec(b5),b4=b7.cur(),b0=+b4||0,b1=1;if(b3){b2=+b3[2];b6=b3[3]||(bG.cssNumber[bZ]?"":"px");if(b6!=="px"&&b0){b0=bG.css(b7.elem,bZ,true)||b2||1;do{e=b1=b1||".5";b0=b0/b1;bG.style(b7.elem,bZ,b0+b6);b1=b7.cur()/b4}while(b1!==1&&b1!==e)}b7.unit=b6;b7.start=b0;b7.end=b3[1]?b0+(b3[1]+1)*b2:b2}return b7}]};function bj(){setTimeout(function(){L=aB},0);return(L=bG.now())}function bc(bZ,e){bG.each(e,function(b4,b2){var b3=(a1[b4]||[]).concat(a1["*"]),b0=0,b1=b3.length;for(;b0-1,b7={},b6={},b0,b2;if(b9){b6=b3.position();b0=b6.top;b2=b6.left}else{b0=parseFloat(e)||0;b2=parseFloat(b8)||0}if(bG.isFunction(ca)){ca=ca.call(b1,b4,bZ)}if(ca.top!=null){b7.top=(ca.top-bZ.top)+b0}if(ca.left!=null){b7.left=(ca.left-bZ.left)+b2}if("using" in ca){ca.using.call(b1,b7)}else{b3.css(b7)}}};bG.fn.extend({position:function(){if(!this[0]){return}var b0=this[0],bZ=this.offsetParent(),b1=this.offset(),e=bm.test(bZ[0].nodeName)?{top:0,left:0}:bZ.offset();b1.top-=parseFloat(bG.css(b0,"marginTop"))||0;b1.left-=parseFloat(bG.css(b0,"marginLeft"))||0;e.top+=parseFloat(bG.css(bZ[0],"borderTopWidth"))||0;e.left+=parseFloat(bG.css(bZ[0],"borderLeftWidth"))||0;return{top:b1.top-e.top,left:b1.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.body;while(e&&(!bm.test(e.nodeName)&&bG.css(e,"position")==="static")){e=e.offsetParent}return e||o.body})}});bG.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b0,bZ){var e=/Y/.test(bZ);bG.fn[b0]=function(b1){return bG.access(this,function(b2,b5,b4){var b3=bn(b2);if(b4===aB){return b3?(bZ in b3)?b3[bZ]:b3.document.documentElement[b5]:b2[b5]}if(b3){b3.scrollTo(!e?b4:bG(b3).scrollLeft(),e?b4:bG(b3).scrollTop())}else{b2[b5]=b4}},b0,b1,arguments.length,null)}});function bn(e){return bG.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}bG.each({Height:"height",Width:"width"},function(e,bZ){bG.each({padding:"inner"+e,content:bZ,"":"outer"+e},function(b0,b1){bG.fn[b1]=function(b5,b4){var b3=arguments.length&&(b0||typeof b5!=="boolean"),b2=b0||(b5===true||b4===true?"margin":"border");return bG.access(this,function(b7,b6,b8){var b9;if(bG.isWindow(b7)){return b7.document.documentElement["client"+e]}if(b7.nodeType===9){b9=b7.documentElement;return Math.max(b7.body["scroll"+e],b9["scroll"+e],b7.body["offset"+e],b9["offset"+e],b9["client"+e])}return b8===aB?bG.css(b7,b6,b8,b2):bG.style(b7,b6,b8,b2)},bZ,b3?b5:aB,b3)}})});a2.jQuery=a2.$=bG;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return bG})}})(window);!function(a){a(function(){a.support.transition=(function(){var b=(function(){var e=document.createElement("bootstrap"),d={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in d){if(e.style[c]!==undefined){return d[c]}}}());return b&&{end:b}})()})}(window.jQuery);!function(c){var b='[data-dismiss="alert"]',a=function(d){c(d).on("click",b,this.close)};a.prototype.close=function(i){var h=c(this),f=h.attr("data-target"),g;if(!f){f=h.attr("href");f=f&&f.replace(/.*(?=#[^\s]*$)/,"")}g=c(f);i&&i.preventDefault();g.length||(g=h.hasClass("alert")?h:h.parent());g.trigger(i=c.Event("close"));if(i.isDefaultPrevented()){return}g.removeClass("in");function d(){g.trigger("closed").remove()}c.support.transition&&g.hasClass("fade")?g.on(c.support.transition.end,d):d()};c.fn.alert=function(d){return this.each(function(){var f=c(this),e=f.data("alert");if(!e){f.data("alert",(e=new a(this)))}if(typeof d=="string"){e[d].call(f)}})};c.fn.alert.Constructor=a;c(function(){c("body").on("click.alert.data-api",b,a.prototype.close)})}(window.jQuery);!function(b){var a=function(d,c){this.$element=b(d);this.options=b.extend({},b.fn.button.defaults,c)};a.prototype.setState=function(f){var h="disabled",c=this.$element,e=c.data(),g=c.is("input")?"val":"html";f=f+"Text";e.resetText||c.data("resetText",c[g]());c[g](e[f]||this.options[f]);setTimeout(function(){f=="loadingText"?c.addClass(h).attr(h,h):c.removeClass(h).removeAttr(h)},0)};a.prototype.toggle=function(){var c=this.$element.parent('[data-toggle="buttons-radio"]');c&&c.find(".active").removeClass("active");this.$element.toggleClass("active")};b.fn.button=function(c){return this.each(function(){var f=b(this),e=f.data("button"),d=typeof c=="object"&&c;if(!e){f.data("button",(e=new a(this,d)))}if(c=="toggle"){e.toggle()}else{if(c){e.setState(c)}}})};b.fn.button.defaults={loadingText:"loading..."};b.fn.button.Constructor=a;b(function(){b("body").on("click.button.data-api","[data-toggle^=button]",function(d){var c=b(d.target);if(!c.hasClass("btn")){c=c.closest(".btn")}c.button("toggle")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=c;this.options.slide&&this.slide(this.options.slide);this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(c){if(!c){this.paused=false}this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval));return this},to:function(g){var c=this.$element.find(".item.active"),d=c.parent().children(),e=d.index(c),f=this;if(g>(d.length-1)||g<0){return}if(this.sliding){return this.$element.one("slid",function(){f.to(g)})}if(e==g){return this.pause().cycle()}return this.slide(g>e?"next":"prev",a(d[g]))},pause:function(c){if(!c){this.paused=true}if(this.$element.find(".next, .prev").length&&a.support.transition.end){this.$element.trigger(a.support.transition.end);this.cycle()}clearInterval(this.interval);this.interval=null;return this},next:function(){if(this.sliding){return}return this.slide("next")},prev:function(){if(this.sliding){return}return this.slide("prev")},slide:function(j,d){var l=this.$element.find(".item.active"),c=d||l[j](),i=this.interval,k=j=="next"?"left":"right",f=j=="next"?"first":"last",g=this,h=a.Event("slide",{relatedTarget:c[0]});this.sliding=true;i&&this.pause();c=c.length?c:this.$element.find(".item")[f]();if(c.hasClass("active")){return}if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(h);if(h.isDefaultPrevented()){return}c.addClass(j);c[0].offsetWidth;l.addClass(k);c.addClass(k);this.$element.one(a.support.transition.end,function(){c.removeClass([j,k].join(" ")).addClass("active");l.removeClass(["active",k].join(" "));g.sliding=false;setTimeout(function(){g.$element.trigger("slid")},0)})}else{this.$element.trigger(h);if(h.isDefaultPrevented()){return}l.removeClass("active");c.addClass("active");this.sliding=false;this.$element.trigger("slid")}i&&this.cycle();return this}};a.fn.carousel=function(c){return this.each(function(){var g=a(this),f=g.data("carousel"),d=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c),e=typeof c=="string"?c:d.slide;if(!f){g.data("carousel",(f=new b(this,d)))}if(typeof c=="number"){f.to(c)}else{if(e){f[e]()}else{if(d.interval){f.cycle()}}}})};a.fn.carousel.defaults={interval:5000,pause:"hover"};a.fn.carousel.Constructor=b;a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(h){var g=a(this),d,c=a(g.attr("data-target")||(d=g.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!c.data("modal")&&a.extend({},c.data(),g.data());c.carousel(f);h.preventDefault()})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.collapse.defaults,c);if(this.options.parent){this.$parent=a(this.options.parent)}this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var c=this.$element.hasClass("width");return c?"width":"height"},show:function(){var f,c,e,d;if(this.transitioning){return}f=this.dimension();c=a.camelCase(["scroll",f].join("-"));e=this.$parent&&this.$parent.find("> .accordion-group > .in");if(e&&e.length){d=e.data("collapse");if(d&&d.transitioning){return}e.collapse("hide");d||e.data("collapse",null)}this.$element[f](0);this.transition("addClass",a.Event("show"),"shown");a.support.transition&&this.$element[f](this.$element[0][c])},hide:function(){var c;if(this.transitioning){return}c=this.dimension();this.reset(this.$element[c]());this.transition("removeClass",a.Event("hide"),"hidden");this.$element[c](0)},reset:function(c){var d=this.dimension();this.$element.removeClass("collapse")[d](c||"auto")[0].offsetWidth;this.$element[c!==null?"addClass":"removeClass"]("collapse");return this},transition:function(g,d,e){var f=this,c=function(){if(d.type=="show"){f.reset()}f.transitioning=0;f.$element.trigger(e)};this.$element.trigger(d);if(d.isDefaultPrevented()){return}this.transitioning=1;this.$element[g]("in");a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,c):c()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};a.fn.collapse=function(c){return this.each(function(){var f=a(this),e=f.data("collapse"),d=typeof c=="object"&&c;if(!e){f.data("collapse",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.collapse.defaults={toggle:true};a.fn.collapse.Constructor=b;a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(h){var g=a(this),c,f=g.attr("data-target")||h.preventDefault()||(c=g.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),d=a(f).data("collapse")?"toggle":g.data();g[a(f).hasClass("in")?"addClass":"removeClass"]("collapsed");a(f).collapse(d)})})}(window.jQuery);!function(e){var b="[data-toggle=dropdown]",a=function(g){var f=e(g).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){f.parent().removeClass("open")})};a.prototype={constructor:a,toggle:function(i){var h=e(this),g,f;if(h.is(".disabled, :disabled")){return}g=d(h);f=g.hasClass("open");c();if(!f){g.toggleClass("open");h.focus()}return false},keydown:function(k){var j,l,f,i,h,g;if(!/(38|40|27)/.test(k.keyCode)){return}j=e(this);k.preventDefault();k.stopPropagation();if(j.is(".disabled, :disabled")){return}i=d(j);h=i.hasClass("open");if(!h||(h&&k.keyCode==27)){return j.click()}l=e("[role=menu] li:not(.divider) a",i);if(!l.length){return}g=l.index(l.filter(":focus"));if(k.keyCode==38&&g>0){g--}if(k.keyCode==40&&g').appendTo(document.body);if(this.options.backdrop!="static"){this.$backdrop.click(b.proxy(this.hide,this))}if(c){this.$backdrop[0].offsetWidth}this.$backdrop.addClass("in");c?this.$backdrop.one(b.support.transition.end,f):f()}else{if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");b.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(b.support.transition.end,b.proxy(this.removeBackdrop,this)):this.removeBackdrop()}else{if(f){f()}}}}};b.fn.modal=function(c){return this.each(function(){var f=b(this),e=f.data("modal"),d=b.extend({},b.fn.modal.defaults,f.data(),typeof c=="object"&&c);if(!e){f.data("modal",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}else{if(d.show){e.show()}}})};b.fn.modal.defaults={backdrop:true,keyboard:true,show:true};b.fn.modal.Constructor=a;b(function(){b("body").on("click.modal.data-api",'[data-toggle="modal"]',function(h){var g=b(this),d=g.attr("href"),c=b(g.attr("data-target")||(d&&d.replace(/.*(?=#[^\s]+$)/,""))),f=c.data("modal")?"toggle":b.extend({remote:!/#/.test(d)&&d},c.data(),g.data());h.preventDefault();c.modal(f).one("hide",function(){g.focus()})})})}(window.jQuery);!function(b){var a=function(d,c){this.init("tooltip",d,c)};a.prototype={constructor:a,init:function(f,e,d){var g,c;this.type=f;this.$element=b(e);this.options=this.getOptions(d);this.enabled=true;if(this.options.trigger=="click"){this.$element.on("click."+this.type,this.options.selector,b.proxy(this.toggle,this))}else{if(this.options.trigger!="manual"){g=this.options.trigger=="hover"?"mouseenter":"focus";c=this.options.trigger=="hover"?"mouseleave":"blur";this.$element.on(g+"."+this.type,this.options.selector,b.proxy(this.enter,this));this.$element.on(c+"."+this.type,this.options.selector,b.proxy(this.leave,this))}}this.options.selector?(this._options=b.extend({},this.options,{trigger:"manual",selector:""})):this.fixTitle()},getOptions:function(c){c=b.extend({},b.fn[this.type].defaults,c,this.$element.data());if(c.delay&&typeof c.delay=="number"){c.delay={show:c.delay,hide:c.delay}}return c},enter:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show){return c.show()}clearTimeout(this.timeout);c.hoverState="in";this.timeout=setTimeout(function(){if(c.hoverState=="in"){c.show()}},c.options.delay.show)},leave:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(this.timeout){clearTimeout(this.timeout)}if(!c.options.delay||!c.options.delay.hide){return c.hide()}c.hoverState="out";this.timeout=setTimeout(function(){if(c.hoverState=="out"){c.hide()}},c.options.delay.hide)},show:function(){var g,c,i,e,h,d,f;if(this.hasContent()&&this.enabled){g=this.tip();this.setContent();if(this.options.animation){g.addClass("fade")}d=typeof this.options.placement=="function"?this.options.placement.call(this,g[0],this.$element[0]):this.options.placement;c=/in/.test(d);g.remove().css({top:0,left:0,display:"block"}).appendTo(c?this.$element:document.body);i=this.getPosition(c);e=g[0].offsetWidth;h=g[0].offsetHeight;switch(c?d.split(" ")[1]:d){case"bottom":f={top:i.top+i.height,left:i.left+i.width/2-e/2};break;case"top":f={top:i.top-h,left:i.left+i.width/2-e/2};break;case"left":f={top:i.top+i.height/2-h/2,left:i.left-e};break;case"right":f={top:i.top+i.height/2-h/2,left:i.left+i.width};break}g.css(f).addClass(d).addClass("in")}},setContent:function(){var d=this.tip(),c=this.getTitle();d.find(".tooltip-inner")[this.options.html?"html":"text"](c);d.removeClass("fade in top bottom left right")},hide:function(){var c=this,d=this.tip();d.removeClass("in");function e(){var f=setTimeout(function(){d.off(b.support.transition.end).remove()},500);d.one(b.support.transition.end,function(){clearTimeout(f);d.remove()})}b.support.transition&&this.$tip.hasClass("fade")?e():d.remove();return this},fixTitle:function(){var c=this.$element;if(c.attr("title")||typeof(c.attr("data-original-title"))!="string"){c.attr("data-original-title",c.attr("title")||"").removeAttr("title")}},hasContent:function(){return this.getTitle()},getPosition:function(c){return b.extend({},(c?{top:0,left:0}:this.$element.offset()),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var e,c=this.$element,d=this.options;e=c.attr("data-original-title")||(typeof d.title=="function"?d.title.call(c[0]):d.title);return e},tip:function(){return this.$tip=this.$tip||b(this.options.template)},validate:function(){if(!this.$element[0].parentNode){this.hide();this.$element=null;this.options=null}},enable:function(){this.enabled=true},disable:function(){this.enabled=false},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}};b.fn.tooltip=function(c){return this.each(function(){var f=b(this),e=f.data("tooltip"),d=typeof c=="object"&&c;if(!e){f.data("tooltip",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.tooltip.Constructor=a;b.fn.tooltip.defaults={animation:true,placement:"top",selector:false,template:'
',trigger:"hover",title:"",delay:0,html:true}}(window.jQuery);!function(b){var a=function(d,c){this.init("popover",d,c)};a.prototype=b.extend({},b.fn.tooltip.Constructor.prototype,{constructor:a,setContent:function(){var e=this.tip(),d=this.getTitle(),c=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](d);e.find(".popover-content > *")[this.options.html?"html":"text"](c);e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var d,c=this.$element,e=this.options;d=c.attr("data-content")||(typeof e.content=="function"?e.content.call(c[0]):e.content);return d},tip:function(){if(!this.$tip){this.$tip=b(this.options.template)}return this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}});b.fn.popover=function(c){return this.each(function(){var f=b(this),e=f.data("popover"),d=typeof c=="object"&&c;if(!e){f.data("popover",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.popover.Constructor=a;b.fn.popover.defaults=b.extend({},b.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'

'})}(window.jQuery);!function(b){function a(f,e){var g=b.proxy(this.process,this),c=b(f).is("body")?b(window):b(f),d;this.options=b.extend({},b.fn.scrollspy.defaults,e);this.$scrollElement=c.on("scroll.scroll-spy.data-api",g);this.selector=(this.options.target||((d=b(f).attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""))||"")+" .nav li > a";this.$body=b("body");this.refresh();this.process()}a.prototype={constructor:a,refresh:function(){var c=this,d;this.offsets=b([]);this.targets=b([]);d=this.$body.find(this.selector).map(function(){var f=b(this),e=f.data("target")||f.attr("href"),g=/^#\w/.test(e)&&b(e);return(g&&g.length&&[[g.position().top,e]])||null}).sort(function(f,e){return f[0]-e[0]}).each(function(){c.offsets.push(this[0]);c.targets.push(this[1])})},process:function(){var h=this.$scrollElement.scrollTop()+this.options.offset,e=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,g=e-this.$scrollElement.height(),f=this.offsets,c=this.targets,j=this.activeTarget,d;if(h>=g){return j!=(d=c.last()[0])&&this.activate(d)}for(d=f.length;d--;){j!=c[d]&&h>=f[d]&&(!f[d+1]||h<=f[d+1])&&this.activate(c[d])}},activate:function(e){var d,c;this.activeTarget=e;b(this.selector).parent(".active").removeClass("active");c=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]';d=b(c).parent("li").addClass("active");if(d.parent(".dropdown-menu").length){d=d.closest("li.dropdown").addClass("active")}d.trigger("activate")}};b.fn.scrollspy=function(c){return this.each(function(){var f=b(this),e=f.data("scrollspy"),d=typeof c=="object"&&c;if(!e){f.data("scrollspy",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.scrollspy.Constructor=a;b.fn.scrollspy.defaults={offset:10};b(window).on("load",function(){b('[data-spy="scroll"]').each(function(){var c=b(this);c.scrollspy(c.data())})})}(window.jQuery);!function(b){var a=function(c){this.element=b(c)};a.prototype={constructor:a,show:function(){var i=this.element,f=i.closest("ul:not(.dropdown-menu)"),d=i.attr("data-target"),g,c,h;if(!d){d=i.attr("href");d=d&&d.replace(/.*(?=#[^\s]*$)/,"")}if(i.parent("li").hasClass("active")){return}g=f.find(".active a").last()[0];h=b.Event("show",{relatedTarget:g});i.trigger(h);if(h.isDefaultPrevented()){return}c=b(d);this.activate(i.parent("li"),f);this.activate(c,c.parent(),function(){i.trigger({type:"shown",relatedTarget:g})})},activate:function(e,d,h){var c=d.find("> .active"),g=h&&b.support.transition&&c.hasClass("fade");function f(){c.removeClass("active").find("> .dropdown-menu > .active").removeClass("active");e.addClass("active");if(g){e[0].offsetWidth;e.addClass("in")}else{e.removeClass("fade")}if(e.parent(".dropdown-menu")){e.closest("li.dropdown").addClass("active")}h&&h()}g?c.one(b.support.transition.end,f):f();c.removeClass("in")}};b.fn.tab=function(c){return this.each(function(){var e=b(this),d=e.data("tab");if(!d){e.data("tab",(d=new a(this)))}if(typeof c=="string"){d[c]()}})};b.fn.tab.Constructor=a;b(function(){b("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(c){c.preventDefault();b(this).tab("show")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.typeahead.defaults,c);this.matcher=this.options.matcher||this.matcher;this.sorter=this.options.sorter||this.sorter;this.highlighter=this.options.highlighter||this.highlighter;this.updater=this.options.updater||this.updater;this.$menu=a(this.options.menu).appendTo("body");this.source=this.options.source;this.shown=false;this.listen()};b.prototype={constructor:b,select:function(){var c=this.$menu.find(".active").attr("data-value");this.$element.val(this.updater(c)).change();return this.hide()},updater:function(c){return c},show:function(){var c=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});this.$menu.css({top:c.top+c.height,left:c.left});this.$menu.show();this.shown=true;return this},hide:function(){this.$menu.hide();this.shown=false;return this},lookup:function(d){var c;this.query=this.$element.val();if(!this.query||this.query.length"+f+""})},render:function(c){var d=this;c=a(c).map(function(e,f){e=a(d.options.item).attr("data-value",f);e.find("a").html(d.highlighter(f));return e[0]});c.first().addClass("active");this.$menu.html(c);return this},next:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.next();if(!c.length){c=a(this.$menu.find("li")[0])}c.addClass("active")},prev:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.prev();if(!c.length){c=this.$menu.find("li").last()}c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this));if(a.browser.webkit||a.browser.msie){this.$element.on("keydown",a.proxy(this.keydown,this))}this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},move:function(c){if(!this.shown){return}switch(c.keyCode){case 9:case 13:case 27:c.preventDefault();break;case 38:c.preventDefault();this.prev();break;case 40:c.preventDefault();this.next();break}c.stopPropagation()},keydown:function(c){this.suppressKeyPressRepeat=!~a.inArray(c.keyCode,[40,38,9,13,27]);this.move(c)},keypress:function(c){if(this.suppressKeyPressRepeat){return}this.move(c)},keyup:function(c){switch(c.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown){return}this.select();break;case 27:if(!this.shown){return}this.hide();break;default:this.lookup()}c.stopPropagation();c.preventDefault()},blur:function(d){var c=this;setTimeout(function(){c.hide()},150)},click:function(c){c.stopPropagation();c.preventDefault();this.select()},mouseenter:function(c){this.$menu.find(".active").removeClass("active");a(c.currentTarget).addClass("active")}};a.fn.typeahead=function(c){return this.each(function(){var f=a(this),e=f.data("typeahead"),d=typeof c=="object"&&c;if(!e){f.data("typeahead",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1};a.fn.typeahead.Constructor=b;a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(d){var c=a(this);if(c.data("typeahead")){return}d.preventDefault();c.typeahead(c.data())})})}(window.jQuery);!function(b){var a=function(d,c){this.options=b.extend({},b.fn.affix.defaults,c);this.$window=b(window).on("scroll.affix.data-api",b.proxy(this.checkPosition,this));this.$element=b(d);this.checkPosition()};a.prototype.checkPosition=function(){if(!this.$element.is(":visible")){return}var g=b(document).height(),i=this.$window.scrollTop(),c=this.$element.offset(),j=this.options.offset,e=j.bottom,f=j.top,h="affix affix-top affix-bottom",d;if(typeof j!="object"){e=f=j}if(typeof f=="function"){f=j.top()}if(typeof e=="function"){e=j.bottom()}d=this.unpin!=null&&(i+this.unpin<=c.top)?false:e!=null&&(c.top+this.$element.height()>=g-e)?"bottom":f!=null&&i<=f?"top":false;if(this.affixed===d){return}this.affixed=d;this.unpin=d=="bottom"?c.top-i:null;this.$element.removeClass(h).addClass("affix"+(d?"-"+d:""))};b.fn.affix=function(c){return this.each(function(){var f=b(this),e=f.data("affix"),d=typeof c=="object"&&c;if(!e){f.data("affix",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.affix.Constructor=a;b.fn.affix.defaults={offset:0};b(window).on("load",function(){b('[data-spy="affix"]').each(function(){var d=b(this),c=d.data();c.offset=c.offset||{};c.offsetBottom&&(c.offset.bottom=c.offsetBottom);c.offsetTop&&(c.offset.top=c.offsetTop);d.affix(c)})})}(window.jQuery);var q=null;window.PR_SHOULD_USE_CONTINUATION=!0;(function(){function d(F){function w(J){var K=J.charCodeAt(0);if(K!==92){return K}var I=J.charAt(1);return(K=k[I])?K:"0"<=I&&I<="7"?parseInt(J.substring(1),8):I==="u"||I==="x"?parseInt(J.substring(2),16):J.charCodeAt(1)}function C(I){if(I<32){return(I<16?"\\x0":"\\x")+I.toString(16)}I=String.fromCharCode(I);if(I==="\\"||I==="-"||I==="["||I==="]"){I="\\"+I}return I}function A(J){for(var M=J.substring(1,J.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),J=[],I=[],O=M[0]==="^",P=O?1:0,L=M.length;P122||(N<65||K>90||I.push([Math.max(65,K)|32,Math.min(N,90)|32]),N<97||K>122||I.push([Math.max(97,K)&-33,Math.min(N,122)&-33]))}}I.sort(function(Q,R){return Q[0]-R[0]||R[1]-Q[1]});M=[];K=[NaN,NaN];for(P=0;PL[0]&&(L[1]+1>L[0]&&I.push("-"),I.push(C(L[1])))}I.push("]");return I.join("")}function E(J){for(var M=J.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),I=M.length,N=[],O=0,L=0;O=2&&J==="["?M[O]=A(K):J!=="\\"&&(M[O]=K.replace(/[A-Za-z]/g,function(P){P=P.charCodeAt(0);return"["+String.fromCharCode(P&-33,P|32)+"]"}))}}return M.join("")}for(var G=0,H=!1,x=!1,u=0,D=F.length;u=5&&"lang-"===O.substring(0,5))&&!(D&&typeof D[1]==="string")){M=!1,O="src"}M||(B[K]=O)}I=L;L+=K.length;if(M){M=D[1];var H=K.indexOf(M),G=H+M.length;D[2]&&(G=K.length-D[2].length,H=G-M.length);O=O.substring(5);t(F+I,K.substring(0,H),x,C);t(F+I+H,M,s(O,M),C);t(F+I+G,K.substring(G),x,C)}else{C.push(F+I,O)}}P.e=C}var w={},A;(function(){for(var G=u.concat(k),B=[],F={},H=0,E=G.length;H=0;){w[I.charAt(C)]=D}}D=D[1];I=""+D;F.hasOwnProperty(I)||(B.push(D),F[I]=q)}B.push(/[\S\s]/);A=d(B)})();var v=k.length;return x}function o(u){var k=[],w=[];u.tripleQuotedStrings?k.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):u.multiLineStrings?k.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,q,"'\"`"]):k.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]);u.verbatimStrings&&w.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var v=u.hashComments;v&&(u.cStyleComments?(v>1?k.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):k.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),w.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):k.push(["com",/^#[^\n\r]*/,q,"#"]));u.cStyleComments&&(w.push(["com",/^\/\/[^\n\r]*/,q]),w.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q]));u.regexLiterals&&w.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]);(v=u.types)&&w.push(["typ",v]);u=(""+u.keywords).replace(/^ | $/g,"");u.length&&w.push(["kwd",RegExp("^(?:"+u.replace(/[\s,]+/g,"|")+")\\b"),q]);k.push(["pln",/^\s+/,q," \r\n\t\xa0"]);w.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]);return h(k,w)}function r(H,x){function E(K){switch(K.nodeType){case 1:if(B.test(K.className)){break}if("BR"===K.nodeName){C(K),K.parentNode&&K.parentNode.removeChild(K)}else{for(K=K.firstChild;K;K=K.nextSibling){E(K)}}break;case 3:case 4:if(v){var k=K.nodeValue,L=k.match(I);if(L){var M=k.substring(0,L.index);K.nodeValue=M;(k=k.substring(L.index+L[0].length))&&K.parentNode.insertBefore(J.createTextNode(k),K.nextSibling);C(K);M||K.parentNode.removeChild(K)}}}}function C(K){function k(M,R){var Q=R?M.cloneNode(!1):M,P=M.parentNode;if(P){var P=k(P,1),O=M.nextSibling;P.appendChild(Q);for(var N=O;N;N=O){O=N.nextSibling,P.appendChild(N)}}return Q}for(;!K.nextSibling;){if(K=K.parentNode,!K){return}}for(var K=k(K.nextSibling,0),L;(L=K.parentNode)&&L.nodeType===1;){K=L}F.push(K)}var B=/(?:^|\s)nocode(?:\s|$)/,I=/\r\n?|\n/,J=H.ownerDocument,A;H.currentStyle?A=H.currentStyle.whiteSpace:window.getComputedStyle&&(A=J.defaultView.getComputedStyle(H,q).getPropertyValue("white-space"));var v=A&&"pre"===A.substring(0,3);for(A=J.createElement("LI");H.firstChild;){A.appendChild(H.firstChild)}for(var F=[A],D=0;D=0;){var v=k[w];y.hasOwnProperty(v)?window.console&&console.warn("cannot override language handler %s",v):y[v]=u}}function s(u,k){if(!u||!y.hasOwnProperty(u)){u=/^\s*=J&&(Q+=2);T>=V&&(X+=2)}}catch(C){"console" in window&&console.log(C&&C.stack?C.stack:C)}}var m=["break,continue,do,else,for,if,return,while"],j=[[m,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],n=[j,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],l=[j,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],i=[l,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],j=[j,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],g=[m,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],f=[m,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],m=[m,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,b=/\S/,a=o({keywords:[n,i,j,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+g,f,m],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),y={};z(a,["default-code"]);z(h([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);z(h([["pln",/^\s+/,q," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);z(h([],[["atv",/^[\S\s]+/]]),["uq.val"]);z(o({keywords:n,hashComments:!0,cStyleComments:!0,types:e}),["c","cc","cpp","cxx","cyc","m"]);z(o({keywords:"null,true,false"}),["json"]);z(o({keywords:i,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:e}),["cs"]);z(o({keywords:l,cStyleComments:!0}),["java"]);z(o({keywords:m,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]);z(o({keywords:g,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]);z(o({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]);z(o({keywords:f,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]);z(o({keywords:j,cStyleComments:!0,regexLiterals:!0}),["js"]);z(o({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);z(h([],[["str",/^[\S\s]+/]]),["regex"]);window.prettyPrintOne=function(u,k,w){var v=document.createElement("PRE");v.innerHTML=u;w&&r(v,w);p({g:k,i:w,h:v});return v.innerHTML};window.prettyPrint=function(E){function v(){for(var L=window.PR_SHOULD_USE_CONTINUATION?w.now()+250:Infinity;u=0){var I=I.match(B),K,H;if(H=!I){H=O;for(var M=void 0,N=H.firstChild;N;N=N.nextSibling){var J=N.nodeType,M=J===1?M?H:N:J===3?b.test(N.nodeValue)?H:M:M}H=(K=M===H?void 0:M)&&"CODE"===K.tagName}H&&(I=K.className.match(B));I&&(I=I[1]);H=!1;for(M=O.parentNode;M;M=M.parentNode){if((M.tagName==="pre"||M.tagName==="code"||M.tagName==="xmp")&&M.className&&M.className.indexOf("prettyprint")>=0){H=!0;break}}H||((H=(H=O.className.match(/\blinenums\b(?::(\d+))?/))?H[1]&&H[1].length?+H[1]:!0:!1)&&r(O,H),D={g:I,h:O,i:H},p(D))}}u + + + + + + + + dependency-check-ant - Project License + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    +
    +

    Overview

    +

    Typically the licenses listed for the project are that of the project itself, and not of dependencies.

    +
    +

    Project License

    +
    +

    GNU General Public License version 3

    +
    +
                        GNU GENERAL PUBLIC LICENSE 
    +                       Version 3, 29 June 2007
    +
    + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
    + Everyone is permitted to copy and distribute verbatim copies
    + of this license document, but changing it is not allowed.
    +
    +                            Preamble
    +
    +  The GNU General Public License is a free, copyleft license for
    +software and other kinds of works.
    +
    +  The licenses for most software and other practical works are designed
    +to take away your freedom to share and change the works.  By contrast,
    +the GNU General Public License is intended to guarantee your freedom to
    +share and change all versions of a program--to make sure it remains free
    +software for all its users.  We, the Free Software Foundation, use the
    +GNU General Public License for most of our software; it applies also to
    +any other work released this way by its authors.  You can apply it to
    +your programs, too.
    +
    +  When we speak of free software, we are referring to freedom, not
    +price.  Our General Public Licenses are designed to make sure that you
    +have the freedom to distribute copies of free software (and charge for
    +them if you wish), that you receive source code or can get it if you
    +want it, that you can change the software or use pieces of it in new
    +free programs, and that you know you can do these things.
    +
    +  To protect your rights, we need to prevent others from denying you
    +these rights or asking you to surrender the rights.  Therefore, you have
    +certain responsibilities if you distribute copies of the software, or if
    +you modify it: responsibilities to respect the freedom of others.
    +
    +  For example, if you distribute copies of such a program, whether
    +gratis or for a fee, you must pass on to the recipients the same
    +freedoms that you received.  You must make sure that they, too, receive
    +or can get the source code.  And you must show them these terms so they
    +know their rights.
    +
    +  Developers that use the GNU GPL protect your rights with two steps:
    +(1) assert copyright on the software, and (2) offer you this License
    +giving you legal permission to copy, distribute and/or modify it.
    +
    +  For the developers' and authors' protection, the GPL clearly explains
    +that there is no warranty for this free software.  For both users' and
    +authors' sake, the GPL requires that modified versions be marked as
    +changed, so that their problems will not be attributed erroneously to
    +authors of previous versions.
    +
    +  Some devices are designed to deny users access to install or run
    +modified versions of the software inside them, although the manufacturer
    +can do so.  This is fundamentally incompatible with the aim of
    +protecting users' freedom to change the software.  The systematic
    +pattern of such abuse occurs in the area of products for individuals to
    +use, which is precisely where it is most unacceptable.  Therefore, we
    +have designed this version of the GPL to prohibit the practice for those
    +products.  If such problems arise substantially in other domains, we
    +stand ready to extend this provision to those domains in future versions
    +of the GPL, as needed to protect the freedom of users.
    +
    +  Finally, every program is threatened constantly by software patents.
    +States should not allow patents to restrict development and use of
    +software on general-purpose computers, but in those that do, we wish to
    +avoid the special danger that patents applied to a free program could
    +make it effectively proprietary.  To prevent this, the GPL assures that
    +patents cannot be used to render the program non-free.
    +
    +  The precise terms and conditions for copying, distribution and
    +modification follow.
    +
    +                       TERMS AND CONDITIONS
    +
    +  0. Definitions.
    +
    +  "This License" refers to version 3 of the GNU General Public License.
    +
    +  "Copyright" also means copyright-like laws that apply to other kinds of
    +works, such as semiconductor masks.
    +
    +  "The Program" refers to any copyrightable work licensed under this
    +License.  Each licensee is addressed as "you".  "Licensees" and
    +"recipients" may be individuals or organizations.
    +
    +  To "modify" a work means to copy from or adapt all or part of the work
    +in a fashion requiring copyright permission, other than the making of an
    +exact copy.  The resulting work is called a "modified version" of the
    +earlier work or a work "based on" the earlier work.
    +
    +  A "covered work" means either the unmodified Program or a work based
    +on the Program.
    +
    +  To "propagate" a work means to do anything with it that, without
    +permission, would make you directly or secondarily liable for
    +infringement under applicable copyright law, except executing it on a
    +computer or modifying a private copy.  Propagation includes copying,
    +distribution (with or without modification), making available to the
    +public, and in some countries other activities as well.
    +
    +  To "convey" a work means any kind of propagation that enables other
    +parties to make or receive copies.  Mere interaction with a user through
    +a computer network, with no transfer of a copy, is not conveying.
    +
    +  An interactive user interface displays "Appropriate Legal Notices"
    +to the extent that it includes a convenient and prominently visible
    +feature that (1) displays an appropriate copyright notice, and (2)
    +tells the user that there is no warranty for the work (except to the
    +extent that warranties are provided), that licensees may convey the
    +work under this License, and how to view a copy of this License.  If
    +the interface presents a list of user commands or options, such as a
    +menu, a prominent item in the list meets this criterion.
    +
    +  1. Source Code.
    +
    +  The "source code" for a work means the preferred form of the work
    +for making modifications to it.  "Object code" means any non-source
    +form of a work.
    +
    +  A "Standard Interface" means an interface that either is an official
    +standard defined by a recognized standards body, or, in the case of
    +interfaces specified for a particular programming language, one that
    +is widely used among developers working in that language.
    +
    +  The "System Libraries" of an executable work include anything, other
    +than the work as a whole, that (a) is included in the normal form of
    +packaging a Major Component, but which is not part of that Major
    +Component, and (b) serves only to enable use of the work with that
    +Major Component, or to implement a Standard Interface for which an
    +implementation is available to the public in source code form.  A
    +"Major Component", in this context, means a major essential component
    +(kernel, window system, and so on) of the specific operating system
    +(if any) on which the executable work runs, or a compiler used to
    +produce the work, or an object code interpreter used to run it.
    +
    +  The "Corresponding Source" for a work in object code form means all
    +the source code needed to generate, install, and (for an executable
    +work) run the object code and to modify the work, including scripts to
    +control those activities.  However, it does not include the work's
    +System Libraries, or general-purpose tools or generally available free
    +programs which are used unmodified in performing those activities but
    +which are not part of the work.  For example, Corresponding Source
    +includes interface definition files associated with source files for
    +the work, and the source code for shared libraries and dynamically
    +linked subprograms that the work is specifically designed to require,
    +such as by intimate data communication or control flow between those
    +subprograms and other parts of the work.
    +
    +  The Corresponding Source need not include anything that users
    +can regenerate automatically from other parts of the Corresponding
    +Source.
    +
    +  The Corresponding Source for a work in source code form is that
    +same work.
    +
    +  2. Basic Permissions.
    +
    +  All rights granted under this License are granted for the term of
    +copyright on the Program, and are irrevocable provided the stated
    +conditions are met.  This License explicitly affirms your unlimited
    +permission to run the unmodified Program.  The output from running a
    +covered work is covered by this License only if the output, given its
    +content, constitutes a covered work.  This License acknowledges your
    +rights of fair use or other equivalent, as provided by copyright law.
    +
    +  You may make, run and propagate covered works that you do not
    +convey, without conditions so long as your license otherwise remains
    +in force.  You may convey covered works to others for the sole purpose
    +of having them make modifications exclusively for you, or provide you
    +with facilities for running those works, provided that you comply with
    +the terms of this License in conveying all material for which you do
    +not control copyright.  Those thus making or running the covered works
    +for you must do so exclusively on your behalf, under your direction
    +and control, on terms that prohibit them from making any copies of
    +your copyrighted material outside their relationship with you.
    +
    +  Conveying under any other circumstances is permitted solely under
    +the conditions stated below.  Sublicensing is not allowed; section 10
    +makes it unnecessary.
    +
    +  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
    +
    +  No covered work shall be deemed part of an effective technological
    +measure under any applicable law fulfilling obligations under article
    +11 of the WIPO copyright treaty adopted on 20 December 1996, or
    +similar laws prohibiting or restricting circumvention of such
    +measures.
    +
    +  When you convey a covered work, you waive any legal power to forbid
    +circumvention of technological measures to the extent such circumvention
    +is effected by exercising rights under this License with respect to
    +the covered work, and you disclaim any intention to limit operation or
    +modification of the work as a means of enforcing, against the work's
    +users, your or third parties' legal rights to forbid circumvention of
    +technological measures.
    +
    +  4. Conveying Verbatim Copies.
    +
    +  You may convey verbatim copies of the Program's source code as you
    +receive it, in any medium, provided that you conspicuously and
    +appropriately publish on each copy an appropriate copyright notice;
    +keep intact all notices stating that this License and any
    +non-permissive terms added in accord with section 7 apply to the code;
    +keep intact all notices of the absence of any warranty; and give all
    +recipients a copy of this License along with the Program.
    +
    +  You may charge any price or no price for each copy that you convey,
    +and you may offer support or warranty protection for a fee.
    +
    +  5. Conveying Modified Source Versions.
    +
    +  You may convey a work based on the Program, or the modifications to
    +produce it from the Program, in the form of source code under the
    +terms of section 4, provided that you also meet all of these conditions:
    +
    +    a) The work must carry prominent notices stating that you modified
    +    it, and giving a relevant date.
    +
    +    b) The work must carry prominent notices stating that it is
    +    released under this License and any conditions added under section
    +    7.  This requirement modifies the requirement in section 4 to
    +    "keep intact all notices".
    +
    +    c) You must license the entire work, as a whole, under this
    +    License to anyone who comes into possession of a copy.  This
    +    License will therefore apply, along with any applicable section 7
    +    additional terms, to the whole of the work, and all its parts,
    +    regardless of how they are packaged.  This License gives no
    +    permission to license the work in any other way, but it does not
    +    invalidate such permission if you have separately received it.
    +
    +    d) If the work has interactive user interfaces, each must display
    +    Appropriate Legal Notices; however, if the Program has interactive
    +    interfaces that do not display Appropriate Legal Notices, your
    +    work need not make them do so.
    +
    +  A compilation of a covered work with other separate and independent
    +works, which are not by their nature extensions of the covered work,
    +and which are not combined with it such as to form a larger program,
    +in or on a volume of a storage or distribution medium, is called an
    +"aggregate" if the compilation and its resulting copyright are not
    +used to limit the access or legal rights of the compilation's users
    +beyond what the individual works permit.  Inclusion of a covered work
    +in an aggregate does not cause this License to apply to the other
    +parts of the aggregate.
    +
    +  6. Conveying Non-Source Forms.
    +
    +  You may convey a covered work in object code form under the terms
    +of sections 4 and 5, provided that you also convey the
    +machine-readable Corresponding Source under the terms of this License,
    +in one of these ways:
    +
    +    a) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by the
    +    Corresponding Source fixed on a durable physical medium
    +    customarily used for software interchange.
    +
    +    b) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by a
    +    written offer, valid for at least three years and valid for as
    +    long as you offer spare parts or customer support for that product
    +    model, to give anyone who possesses the object code either (1) a
    +    copy of the Corresponding Source for all the software in the
    +    product that is covered by this License, on a durable physical
    +    medium customarily used for software interchange, for a price no
    +    more than your reasonable cost of physically performing this
    +    conveying of source, or (2) access to copy the
    +    Corresponding Source from a network server at no charge.
    +
    +    c) Convey individual copies of the object code with a copy of the
    +    written offer to provide the Corresponding Source.  This
    +    alternative is allowed only occasionally and noncommercially, and
    +    only if you received the object code with such an offer, in accord
    +    with subsection 6b.
    +
    +    d) Convey the object code by offering access from a designated
    +    place (gratis or for a charge), and offer equivalent access to the
    +    Corresponding Source in the same way through the same place at no
    +    further charge.  You need not require recipients to copy the
    +    Corresponding Source along with the object code.  If the place to
    +    copy the object code is a network server, the Corresponding Source
    +    may be on a different server (operated by you or a third party)
    +    that supports equivalent copying facilities, provided you maintain
    +    clear directions next to the object code saying where to find the
    +    Corresponding Source.  Regardless of what server hosts the
    +    Corresponding Source, you remain obligated to ensure that it is
    +    available for as long as needed to satisfy these requirements.
    +
    +    e) Convey the object code using peer-to-peer transmission, provided
    +    you inform other peers where the object code and Corresponding
    +    Source of the work are being offered to the general public at no
    +    charge under subsection 6d.
    +
    +  A separable portion of the object code, whose source code is excluded
    +from the Corresponding Source as a System Library, need not be
    +included in conveying the object code work.
    +
    +  A "User Product" is either (1) a "consumer product", which means any
    +tangible personal property which is normally used for personal, family,
    +or household purposes, or (2) anything designed or sold for incorporation
    +into a dwelling.  In determining whether a product is a consumer product,
    +doubtful cases shall be resolved in favor of coverage.  For a particular
    +product received by a particular user, "normally used" refers to a
    +typical or common use of that class of product, regardless of the status
    +of the particular user or of the way in which the particular user
    +actually uses, or expects or is expected to use, the product.  A product
    +is a consumer product regardless of whether the product has substantial
    +commercial, industrial or non-consumer uses, unless such uses represent
    +the only significant mode of use of the product.
    +
    +  "Installation Information" for a User Product means any methods,
    +procedures, authorization keys, or other information required to install
    +and execute modified versions of a covered work in that User Product from
    +a modified version of its Corresponding Source.  The information must
    +suffice to ensure that the continued functioning of the modified object
    +code is in no case prevented or interfered with solely because
    +modification has been made.
    +
    +  If you convey an object code work under this section in, or with, or
    +specifically for use in, a User Product, and the conveying occurs as
    +part of a transaction in which the right of possession and use of the
    +User Product is transferred to the recipient in perpetuity or for a
    +fixed term (regardless of how the transaction is characterized), the
    +Corresponding Source conveyed under this section must be accompanied
    +by the Installation Information.  But this requirement does not apply
    +if neither you nor any third party retains the ability to install
    +modified object code on the User Product (for example, the work has
    +been installed in ROM).
    +
    +  The requirement to provide Installation Information does not include a
    +requirement to continue to provide support service, warranty, or updates
    +for a work that has been modified or installed by the recipient, or for
    +the User Product in which it has been modified or installed.  Access to a
    +network may be denied when the modification itself materially and
    +adversely affects the operation of the network or violates the rules and
    +protocols for communication across the network.
    +
    +  Corresponding Source conveyed, and Installation Information provided,
    +in accord with this section must be in a format that is publicly
    +documented (and with an implementation available to the public in
    +source code form), and must require no special password or key for
    +unpacking, reading or copying.
    +
    +  7. Additional Terms.
    +
    +  "Additional permissions" are terms that supplement the terms of this
    +License by making exceptions from one or more of its conditions.
    +Additional permissions that are applicable to the entire Program shall
    +be treated as though they were included in this License, to the extent
    +that they are valid under applicable law.  If additional permissions
    +apply only to part of the Program, that part may be used separately
    +under those permissions, but the entire Program remains governed by
    +this License without regard to the additional permissions.
    +
    +  When you convey a copy of a covered work, you may at your option
    +remove any additional permissions from that copy, or from any part of
    +it.  (Additional permissions may be written to require their own
    +removal in certain cases when you modify the work.)  You may place
    +additional permissions on material, added by you to a covered work,
    +for which you have or can give appropriate copyright permission.
    +
    +  Notwithstanding any other provision of this License, for material you
    +add to a covered work, you may (if authorized by the copyright holders of
    +that material) supplement the terms of this License with terms:
    +
    +    a) Disclaiming warranty or limiting liability differently from the
    +    terms of sections 15 and 16 of this License; or
    +
    +    b) Requiring preservation of specified reasonable legal notices or
    +    author attributions in that material or in the Appropriate Legal
    +    Notices displayed by works containing it; or
    +
    +    c) Prohibiting misrepresentation of the origin of that material, or
    +    requiring that modified versions of such material be marked in
    +    reasonable ways as different from the original version; or
    +
    +    d) Limiting the use for publicity purposes of names of licensors or
    +    authors of the material; or
    +
    +    e) Declining to grant rights under trademark law for use of some
    +    trade names, trademarks, or service marks; or
    +
    +    f) Requiring indemnification of licensors and authors of that
    +    material by anyone who conveys the material (or modified versions of
    +    it) with contractual assumptions of liability to the recipient, for
    +    any liability that these contractual assumptions directly impose on
    +    those licensors and authors.
    +
    +  All other non-permissive additional terms are considered "further
    +restrictions" within the meaning of section 10.  If the Program as you
    +received it, or any part of it, contains a notice stating that it is
    +governed by this License along with a term that is a further
    +restriction, you may remove that term.  If a license document contains
    +a further restriction but permits relicensing or conveying under this
    +License, you may add to a covered work material governed by the terms
    +of that license document, provided that the further restriction does
    +not survive such relicensing or conveying.
    +
    +  If you add terms to a covered work in accord with this section, you
    +must place, in the relevant source files, a statement of the
    +additional terms that apply to those files, or a notice indicating
    +where to find the applicable terms.
    +
    +  Additional terms, permissive or non-permissive, may be stated in the
    +form of a separately written license, or stated as exceptions;
    +the above requirements apply either way.
    +
    +  8. Termination.
    +
    +  You may not propagate or modify a covered work except as expressly
    +provided under this License.  Any attempt otherwise to propagate or
    +modify it is void, and will automatically terminate your rights under
    +this License (including any patent licenses granted under the third
    +paragraph of section 11).
    +
    +  However, if you cease all violation of this License, then your
    +license from a particular copyright holder is reinstated (a)
    +provisionally, unless and until the copyright holder explicitly and
    +finally terminates your license, and (b) permanently, if the copyright
    +holder fails to notify you of the violation by some reasonable means
    +prior to 60 days after the cessation.
    +
    +  Moreover, your license from a particular copyright holder is
    +reinstated permanently if the copyright holder notifies you of the
    +violation by some reasonable means, this is the first time you have
    +received notice of violation of this License (for any work) from that
    +copyright holder, and you cure the violation prior to 30 days after
    +your receipt of the notice.
    +
    +  Termination of your rights under this section does not terminate the
    +licenses of parties who have received copies or rights from you under
    +this License.  If your rights have been terminated and not permanently
    +reinstated, you do not qualify to receive new licenses for the same
    +material under section 10.
    +
    +  9. Acceptance Not Required for Having Copies.
    +
    +  You are not required to accept this License in order to receive or
    +run a copy of the Program.  Ancillary propagation of a covered work
    +occurring solely as a consequence of using peer-to-peer transmission
    +to receive a copy likewise does not require acceptance.  However,
    +nothing other than this License grants you permission to propagate or
    +modify any covered work.  These actions infringe copyright if you do
    +not accept this License.  Therefore, by modifying or propagating a
    +covered work, you indicate your acceptance of this License to do so.
    +
    +  10. Automatic Licensing of Downstream Recipients.
    +
    +  Each time you convey a covered work, the recipient automatically
    +receives a license from the original licensors, to run, modify and
    +propagate that work, subject to this License.  You are not responsible
    +for enforcing compliance by third parties with this License.
    +
    +  An "entity transaction" is a transaction transferring control of an
    +organization, or substantially all assets of one, or subdividing an
    +organization, or merging organizations.  If propagation of a covered
    +work results from an entity transaction, each party to that
    +transaction who receives a copy of the work also receives whatever
    +licenses to the work the party's predecessor in interest had or could
    +give under the previous paragraph, plus a right to possession of the
    +Corresponding Source of the work from the predecessor in interest, if
    +the predecessor has it or can get it with reasonable efforts.
    +
    +  You may not impose any further restrictions on the exercise of the
    +rights granted or affirmed under this License.  For example, you may
    +not impose a license fee, royalty, or other charge for exercise of
    +rights granted under this License, and you may not initiate litigation
    +(including a cross-claim or counterclaim in a lawsuit) alleging that
    +any patent claim is infringed by making, using, selling, offering for
    +sale, or importing the Program or any portion of it.
    +
    +  11. Patents.
    +
    +  A "contributor" is a copyright holder who authorizes use under this
    +License of the Program or a work on which the Program is based.  The
    +work thus licensed is called the contributor's "contributor version".
    +
    +  A contributor's "essential patent claims" are all patent claims
    +owned or controlled by the contributor, whether already acquired or
    +hereafter acquired, that would be infringed by some manner, permitted
    +by this License, of making, using, or selling its contributor version,
    +but do not include claims that would be infringed only as a
    +consequence of further modification of the contributor version.  For
    +purposes of this definition, "control" includes the right to grant
    +patent sublicenses in a manner consistent with the requirements of
    +this License.
    +
    +  Each contributor grants you a non-exclusive, worldwide, royalty-free
    +patent license under the contributor's essential patent claims, to
    +make, use, sell, offer for sale, import and otherwise run, modify and
    +propagate the contents of its contributor version.
    +
    +  In the following three paragraphs, a "patent license" is any express
    +agreement or commitment, however denominated, not to enforce a patent
    +(such as an express permission to practice a patent or covenant not to
    +sue for patent infringement).  To "grant" such a patent license to a
    +party means to make such an agreement or commitment not to enforce a
    +patent against the party.
    +
    +  If you convey a covered work, knowingly relying on a patent license,
    +and the Corresponding Source of the work is not available for anyone
    +to copy, free of charge and under the terms of this License, through a
    +publicly available network server or other readily accessible means,
    +then you must either (1) cause the Corresponding Source to be so
    +available, or (2) arrange to deprive yourself of the benefit of the
    +patent license for this particular work, or (3) arrange, in a manner
    +consistent with the requirements of this License, to extend the patent
    +license to downstream recipients.  "Knowingly relying" means you have
    +actual knowledge that, but for the patent license, your conveying the
    +covered work in a country, or your recipient's use of the covered work
    +in a country, would infringe one or more identifiable patents in that
    +country that you have reason to believe are valid.
    +
    +  If, pursuant to or in connection with a single transaction or
    +arrangement, you convey, or propagate by procuring conveyance of, a
    +covered work, and grant a patent license to some of the parties
    +receiving the covered work authorizing them to use, propagate, modify
    +or convey a specific copy of the covered work, then the patent license
    +you grant is automatically extended to all recipients of the covered
    +work and works based on it.
    +
    +  A patent license is "discriminatory" if it does not include within
    +the scope of its coverage, prohibits the exercise of, or is
    +conditioned on the non-exercise of one or more of the rights that are
    +specifically granted under this License.  You may not convey a covered
    +work if you are a party to an arrangement with a third party that is
    +in the business of distributing software, under which you make payment
    +to the third party based on the extent of your activity of conveying
    +the work, and under which the third party grants, to any of the
    +parties who would receive the covered work from you, a discriminatory
    +patent license (a) in connection with copies of the covered work
    +conveyed by you (or copies made from those copies), or (b) primarily
    +for and in connection with specific products or compilations that
    +contain the covered work, unless you entered into that arrangement,
    +or that patent license was granted, prior to 28 March 2007.
    +
    +  Nothing in this License shall be construed as excluding or limiting
    +any implied license or other defenses to infringement that may
    +otherwise be available to you under applicable patent law.
    +
    +  12. No Surrender of Others' Freedom.
    +
    +  If conditions are imposed on you (whether by court order, agreement or
    +otherwise) that contradict the conditions of this License, they do not
    +excuse you from the conditions of this License.  If you cannot convey a
    +covered work so as to satisfy simultaneously your obligations under this
    +License and any other pertinent obligations, then as a consequence you may
    +not convey it at all.  For example, if you agree to terms that obligate you
    +to collect a royalty for further conveying from those to whom you convey
    +the Program, the only way you could satisfy both those terms and this
    +License would be to refrain entirely from conveying the Program.
    +
    +  13. Use with the GNU Affero General Public License.
    +
    +  Notwithstanding any other provision of this License, you have
    +permission to link or combine any covered work with a work licensed
    +under version 3 of the GNU Affero General Public License into a single
    +combined work, and to convey the resulting work.  The terms of this
    +License will continue to apply to the part which is the covered work,
    +but the special requirements of the GNU Affero General Public License,
    +section 13, concerning interaction through a network will apply to the
    +combination as such.
    +
    +  14. Revised Versions of this License.
    +
    +  The Free Software Foundation may publish revised and/or new versions of
    +the GNU General Public License from time to time.  Such new versions will
    +be similar in spirit to the present version, but may differ in detail to
    +address new problems or concerns.
    +
    +  Each version is given a distinguishing version number.  If the
    +Program specifies that a certain numbered version of the GNU General
    +Public License "or any later version" applies to it, you have the
    +option of following the terms and conditions either of that numbered
    +version or of any later version published by the Free Software
    +Foundation.  If the Program does not specify a version number of the
    +GNU General Public License, you may choose any version ever published
    +by the Free Software Foundation.
    +
    +  If the Program specifies that a proxy can decide which future
    +versions of the GNU General Public License can be used, that proxy's
    +public statement of acceptance of a version permanently authorizes you
    +to choose that version for the Program.
    +
    +  Later license versions may give you additional or different
    +permissions.  However, no additional obligations are imposed on any
    +author or copyright holder as a result of your choosing to follow a
    +later version.
    +
    +  15. Disclaimer of Warranty.
    +
    +  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
    +APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
    +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
    +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
    +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    +PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
    +IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
    +ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
    +
    +  16. Limitation of Liability.
    +
    +  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
    +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
    +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
    +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
    +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
    +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
    +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
    +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
    +SUCH DAMAGES.
    +
    +  17. Interpretation of Sections 15 and 16.
    +
    +  If the disclaimer of warranty and limitation of liability provided
    +above cannot be given local legal effect according to their terms,
    +reviewing courts shall apply local law that most closely approximates
    +an absolute waiver of all civil liability in connection with the
    +Program, unless a warranty or assumption of liability accompanies a
    +copy of the Program in return for a fee.
    +
    +                     END OF TERMS AND CONDITIONS
    +
    +            How to Apply These Terms to Your New Programs
    +
    +  If you develop a new program, and you want it to be of the greatest
    +possible use to the public, the best way to achieve this is to make it
    +free software which everyone can redistribute and change under these terms.
    +
    +  To do so, attach the following notices to the program.  It is safest
    +to attach them to the start of each source file to most effectively
    +state the exclusion of warranty; and each file should have at least
    +the "copyright" line and a pointer to where the full notice is found.
    +
    +    <one line to give the program's name and a brief idea of what it does.>
    +    Copyright (C) <year>  <name of author>
    +
    +    This program is free software: you can redistribute it and/or modify
    +    it under the terms of the GNU General Public License as published by
    +    the Free Software Foundation, either version 3 of the License, or
    +    (at your option) any later version.
    +
    +    This program is distributed in the hope that it will be useful,
    +    but WITHOUT ANY WARRANTY; without even the implied warranty of
    +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    +    GNU General Public License for more details.
    +
    +    You should have received a copy of the GNU General Public License
    +    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    +
    +Also add information on how to contact you by electronic and paper mail.
    +
    +  If the program does terminal interaction, make it output a short
    +notice like this when it starts in an interactive mode:
    +
    +    <program>  Copyright (C) <year>  <name of author>
    +    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    +    This is free software, and you are welcome to redistribute it
    +    under certain conditions; type `show c' for details.
    +
    +The hypothetical commands `show w' and `show c' should show the appropriate
    +parts of the General Public License.  Of course, your program's commands
    +might be different; for a GUI interface, you would use an "about box".
    +
    +  You should also get your employer (if you work as a programmer) or school,
    +if any, to sign a "copyright disclaimer" for the program, if necessary.
    +For more information on this, and how to apply and follow the GNU GPL, see
    +<http://www.gnu.org/licenses/>.
    +
    +  The GNU General Public License does not permit incorporating your program
    +into proprietary programs.  If your program is a subroutine library, you
    +may consider it more useful to permit linking proprietary applications with
    +the library.  If this is what you want to do, use the GNU Lesser General
    +Public License instead of this License.  But first, please read
    +<http://www.gnu.org/philosophy/why-not-lgpl.html>.
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/plugin-updates-report.html b/css/dependency-check-ant/plugin-updates-report.html new file mode 100644 index 000000000..2d6348223 --- /dev/null +++ b/css/dependency-check-ant/plugin-updates-report.html @@ -0,0 +1,856 @@ + + + + + + + + + dependency-check-ant - Plugin Updates Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This report summarizes newer versions that may be available for your project's various plugins.

    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    # of plugins using the latest version available3
    # of plugins where the next version available is smaller than an incremental version update1
    # of plugins where the next version available is an incremental version update3
    # of plugins where the next version available is a minor version update10
    # of plugins where the next version available is a major version update0
    # of plugins where a dependencies section containes a dependency with an updated version1
    +
    +

    Plugin Management

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    org.apache.maven.pluginsmaven-antrun-plugin1.31.4
    org.apache.maven.pluginsmaven-assembly-plugin2.2-beta-52.22.2.12.3
    org.apache.maven.pluginsmaven-dependency-plugin2.12.2
    org.apache.maven.pluginsmaven-release-plugin2.12.2
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    +
    +

    Plugins

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    com.github.githubsite-maven-plugin0.70.8
    org.apache.maven.pluginsmaven-clean-plugin2.4.12.5
    org.apache.maven.pluginsmaven-compiler-plugin2.3.22.43.0
    org.apache.maven.pluginsmaven-deploy-plugin2.72.8
    org.apache.maven.pluginsmaven-enforcer-plugin1.01.0.11.1
    org.apache.maven.pluginsmaven-install-plugin2.3.12.4
    org.apache.maven.pluginsmaven-jar-plugin2.4
    org.apache.maven.pluginsmaven-javadoc-plugin2.92.9.1
    org.apache.maven.pluginsmaven-resources-plugin2.6
    org.apache.maven.pluginsmaven-shade-plugin2.12.2
    org.apache.maven.pluginsmaven-site-plugin3.3
    org.apache.maven.pluginsmaven-surefire-plugin2.142.14.12.15
    org.codehaus.mojocobertura-maven-plugin2.5.22.6
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    +
    +

    Plugin Updates

    +

    +
    +

    Plugin com.github.github:site-maven-plugin

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idcom.github.github
    Artifact Idsite-maven-plugin
    Current Version0.7
    Newer versions0.8 Next Minor
    0.9 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-antrun-plugin
    Current Version1.3
    Newer versions1.4 Next Minor
    1.5
    1.6
    1.7 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer version available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-assembly-plugin
    Current Version2.2-beta-5
    Newer versions2.2 Next Version
    2.2.1 Next Incremental
    2.2.2 Latest Incremental
    2.3 Next Minor
    2.4 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-clean-plugin
    Current Version2.4.1
    Newer versions2.5 Next Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-compiler-plugin
    Current Version2.3.2
    Newer versions2.4 Next Minor
    2.5
    2.5-jenkins-1
    2.5.1 Latest Minor
    3.0 Next Major
    3.1 Latest Major
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-dependency-plugin
    Current Version2.1
    Newer versions2.2 Next Minor
    2.3
    2.4
    2.5
    2.5.1
    2.6
    2.7
    2.8 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    Newer versions2.8 Next Minor
    2.8.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-enforcer-plugin
    Current Version1.0
    Newer versions1.0.1 Next Incremental
    1.1 Next Minor
    1.1.1
    1.2
    1.3
    1.3.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-install-plugin
    Current Version2.3.1
    Newer versions2.4 Next Minor
    2.5
    2.5.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-jar-plugin
    Current Version2.4
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-javadoc-plugin
    Current Version2.9
    Newer versions2.9.1 Next Incremental
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-release-plugin
    Current Version2.1
    Newer versions2.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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-resources-plugin
    Current Version2.6
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-shade-plugin
    Current Version2.1
    Newer versions2.2 Next Minor
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-site-plugin
    Current Version3.3
    +
    +

    Dependencies of org.apache.maven.plugins:maven-site-plugin

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    org.apache.maven.doxiadoxia-module-markdown1.4jar1.5
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

    Dependency org.apache.maven.doxia:doxia-module-markdown

    + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    Newer versions1.5 Next Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-surefire-plugin
    Current Version2.14
    Newer versions2.14.1 Next Incremental
    2.15 Next Minor
    2.16 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.codehaus.mojo
    Artifact Idcobertura-maven-plugin
    Current Version2.5.2
    Newer versions2.6 Next Minor
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/pmd.html b/css/dependency-check-ant/pmd.html new file mode 100644 index 000000000..1e8364ab8 --- /dev/null +++ b/css/dependency-check-ant/pmd.html @@ -0,0 +1,257 @@ + + + + + + + + + dependency-check-ant - PMD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    PMD Results

    +

    The following document contains the results of PMD 5.0.2.

    +
    +

    Files

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/project-info.html b/css/dependency-check-ant/project-info.html new file mode 100644 index 000000000..e54f44757 --- /dev/null +++ b/css/dependency-check-ant/project-info.html @@ -0,0 +1,207 @@ + + + + + + + + + dependency-check-ant - Project Information + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Information

    +

    This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by Maven on behalf of the project.

    +
    +

    Overview

    + + + + + + + + + + + + +
    DocumentDescription
    AboutDependency-check is a utility 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.
    Project SummaryThis document lists other related information of this project
    Project LicenseThis is a link to the definitions of project licenses.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/project-reports.html b/css/dependency-check-ant/project-reports.html new file mode 100644 index 000000000..850455a93 --- /dev/null +++ b/css/dependency-check-ant/project-reports.html @@ -0,0 +1,297 @@ + + + + + + + + + dependency-check-ant - Generated Reports + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Generated Reports

    +

    This document provides an overview of the various reports that are automatically generated by Maven . Each report is briefly described below.

    +
    +

    Overview

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DocumentDescription
    JavaDocsJavaDoc API documentation.
    Dependency Updates ReportProvides details of the dependencies which have updated versions available.
    Plugin Updates ReportProvides details of the plugins used by this project which have newer versions available.
    Source XrefHTML based, cross-reference version of Java source code.
    Test Source XrefHTML based, cross-reference version of Java test source code.
    Cobertura Test CoverageCobertura Test Coverage Report.
    Surefire ReportReport on the test results of the project.
    Tag ListReport on various tags found in the code.
    CheckstyleReport on coding style conventions.
    CPD ReportDuplicate code detection.
    PMD ReportVerification of coding rules.
    FindBugs ReportGenerates a source code report with the FindBugs Library.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/project-summary.html b/css/dependency-check-ant/project-summary.html new file mode 100644 index 000000000..b9faad134 --- /dev/null +++ b/css/dependency-check-ant/project-summary.html @@ -0,0 +1,239 @@ + + + + + + + + + dependency-check-ant - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    NameDependency-Check Ant Task
    DescriptionDependency-check is a utility 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.
    Homepagehttps://github.com/jeremylong/DependencyCheck.git/dependency-check-ant
    +
    +

    Project Organization

    + + + + + + + + + +
    FieldValue
    NameOWASP
    URLhttp://www.owasp.org
    +
    +

    Build Information

    + + + + + + + + + + + + + + + + + + +
    FieldValue
    GroupIdorg.owasp
    ArtifactIddependency-check-ant
    Version1.0.6
    Typejar
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/surefire-report.html b/css/dependency-check-ant/surefire-report.html new file mode 100644 index 000000000..0c750b035 --- /dev/null +++ b/css/dependency-check-ant/surefire-report.html @@ -0,0 +1,354 @@ + + + + + + + + + dependency-check-ant - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    4000100%62.339

    +

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


    +
    +

    Package List

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + + + +
    PackageTestsErrors FailuresSkippedSuccess RateTime
    org.owasp.dependencycheck.taskdefs4000100%62.339

    +

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

    +
    +

    org.owasp.dependencycheck.taskdefs

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DependencyCheckTaskTest4000100%62.339

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    DependencyCheckTaskTest

    + + + + + + + + + + + + + + + + +
    testGetFailBuildOnCVSS3.315
    testAddDirSet21.118
    testAddFileSet18.677
    testAddFileList19.229

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/taglist.html b/css/dependency-check-ant/taglist.html new file mode 100644 index 000000000..cf71a2661 --- /dev/null +++ b/css/dependency-check-ant/taglist.html @@ -0,0 +1,265 @@ + + + + + + + + + dependency-check-ant - Tag List report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Tag List Report

    +

    The following document contains the listing of user tags found in the code. Below is the summary of the occurrences per tag.

    + + + + + + + + +
    Tag ClassTotal number of occurrencesTag strings used by tag class
    Todo Work0todo, FIXME
    +

    Each tag is detailed below:

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/usage.html b/css/dependency-check-ant/usage.html new file mode 100644 index 000000000..8e517da1e --- /dev/null +++ b/css/dependency-check-ant/usage.html @@ -0,0 +1,188 @@ + + + + + + + + + dependency-check-ant - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    Usage

    +

    First, add the dependency-check-ant taskdef to your build.xml:

    + +
    +
    <taskdef name="dependency-check" classname="org.owasp.dependencycheck.taskdefs.DependencyCheckTask"/>
    +
    +

    Next, add the task to a target of your choosing:

    + +
    +
    <target name="dependency-check" description="Dependency-Check Analysis">
    +    <dependency-check applicationname="Hello World"
    +                      autoupdate="true"
    +                      reportoutputdirectory="${basedir}"
    +                      reportformat="HTML">
    +
    +        <fileset dir="lib">
    +            <include name="**/*.jar"/>
    +        </fileset>
    +    </dependency-check>
    +</target>
    +
    +

    See the configuration guide for more information.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-ant/xref-test/allclasses-frame.html b/css/dependency-check-ant/xref-test/allclasses-frame.html new file mode 100644 index 000000000..c7fadcf68 --- /dev/null +++ b/css/dependency-check-ant/xref-test/allclasses-frame.html @@ -0,0 +1,20 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/css/dependency-check-ant/xref-test/index.html b/css/dependency-check-ant/xref-test/index.html new file mode 100644 index 000000000..906236863 --- /dev/null +++ b/css/dependency-check-ant/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference + + + + + + + + + <body> + <h1>Frame Alert</h1> + <p> + You don't have frames. Go <a href="overview-summary.html">here</a> + </p> + </body> + + + + diff --git a/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html b/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html new file mode 100644 index 000000000..0c72c595c --- /dev/null +++ b/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html @@ -0,0 +1,137 @@ + + + + +DependencyCheckTaskTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-ant.
    +3    *
    +4    * Dependency-check-ant is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-ant is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-ant. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.taskdefs;
    +20  
    +21  import java.io.File;
    +22  import static junit.framework.TestCase.assertTrue;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import org.apache.tools.ant.BuildFileTest;
    +29  import org.owasp.dependencycheck.data.nvdcve.BaseDBTestCase;
    +30  
    +31  /**
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class DependencyCheckTaskTest extends BuildFileTest {
    +36  
    +37      public DependencyCheckTaskTest() {
    +38      }
    +39  
    +40      @BeforeClass
    +41      public static void setUpClass() {
    +42      }
    +43  
    +44      @AfterClass
    +45      public static void tearDownClass() {
    +46      }
    +47  
    +48      @Before
    +49      @Override
    +50      public void setUp() throws Exception {
    +51          BaseDBTestCase.ensureDBExists();
    +52          final String buildFile = this.getClass().getClassLoader().getResource("build.xml").getPath();
    +53          configureProject(buildFile);
    +54      }
    +55  
    +56      @After
    +57      @Override
    +58      public void tearDown() {
    +59          //no cleanup...
    +60          //executeTarget("cleanup");
    +61      }
    +62  
    +63      /**
    +64       * Test of addFileSet method, of class DependencyCheckTask.
    +65       */
    +66      @Test
    +67      public void testAddFileSet() throws Exception {
    +68          File report = new File("target/DependencyCheck-Report.html");
    +69          if (report.exists()) {
    +70              if (!report.delete()) {
    +71                  throw new Exception("Unable to delete 'target/DependencyCheck-Report.html' prior to test.");
    +72              }
    +73          }
    +74          executeTarget("test.fileset");
    +75  
    +76          assertTrue("DependencyCheck report was not generated", report.exists());
    +77  
    +78      }
    +79  
    +80      /**
    +81       * Test of addFileList method, of class DependencyCheckTask.
    +82       *
    +83       * @throws Exception
    +84       */
    +85      @Test
    +86      public void testAddFileList() throws Exception {
    +87          File report = new File("target/DependencyCheck-Report.xml");
    +88          if (report.exists()) {
    +89              if (!report.delete()) {
    +90                  throw new Exception("Unable to delete 'target/DependencyCheck-Report.xml' prior to test.");
    +91              }
    +92          }
    +93          executeTarget("test.filelist");
    +94  
    +95          assertTrue("DependencyCheck report was not generated", report.exists());
    +96      }
    +97  
    +98      /**
    +99       * Test of addDirSet method, of class DependencyCheckTask.
    +100      *
    +101      * @throws Exception
    +102      */
    +103     @Test
    +104     public void testAddDirSet() throws Exception {
    +105         File report = new File("target/DependencyCheck-Vulnerability.html");
    +106         if (report.exists()) {
    +107             if (!report.delete()) {
    +108                 throw new Exception("Unable to delete 'target/DependencyCheck-Vulnerability.html' prior to test.");
    +109             }
    +110         }
    +111         executeTarget("test.dirset");
    +112         assertTrue("DependencyCheck report was not generated", report.exists());
    +113     }
    +114 
    +115     /**
    +116      * Test of getFailBuildOnCVSS method, of class DependencyCheckTask.
    +117      */
    +118     @Test
    +119     public void testGetFailBuildOnCVSS() {
    +120         expectBuildException("failCVSS", "asdfasdfscore");
    +121         System.out.println(this.getOutput());
    +122     }
    +123 }
    +
    +
    + + diff --git a/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html b/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html new file mode 100644 index 000000000..bbfd2eee3 --- /dev/null +++ b/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference Package org.owasp.dependencycheck.taskdefs + + + + +

    + org.owasp.dependencycheck.taskdefs +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html b/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html new file mode 100644 index 000000000..a253f97e7 --- /dev/null +++ b/css/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference Package org.owasp.dependencycheck.taskdefs + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.taskdefs

    + + + + + + + + + + + + +
    Class Summary
    + DependencyCheckTaskTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-ant/xref-test/overview-frame.html b/css/dependency-check-ant/xref-test/overview-frame.html new file mode 100644 index 000000000..abb951f90 --- /dev/null +++ b/css/dependency-check-ant/xref-test/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/css/dependency-check-ant/xref-test/overview-summary.html b/css/dependency-check-ant/xref-test/overview-summary.html new file mode 100644 index 000000000..6d67d4d19 --- /dev/null +++ b/css/dependency-check-ant/xref-test/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    Dependency-Check Ant Task 1.0.6 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.taskdefs +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-ant/xref-test/stylesheet.css b/css/dependency-check-ant/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/css/dependency-check-ant/xref-test/stylesheet.css @@ -0,0 +1,116 @@ +/* Javadoc style sheet */ +/* Define colors, fonts and other style attributes here to override the defaults */ +body { + background-color: #fff; + font-family: Arial, Helvetica, sans-serif; +} + +a:link { + color: #00f; +} +a:visited { + color: #00a; +} + +a:active, a:hover { + color: #f30 !important; +} + +ul, li { + list-style-type:none; + margin:0; + padding:0; +} + +table td { + padding: 3px; + border: 1px solid #000; +} +table { + width:100%; + border: 1px solid #000; + border-collapse: collapse; +} + +div.overview { + background-color:#ddd; + padding: 4px 4px 4px 0; +} +div.overview li, div.framenoframe li { + display: inline; +} +div.framenoframe { + text-align: center; + font-size: x-small; +} +div.framenoframe li { + margin: 0 3px 0 3px; +} +div.overview li { + margin:3px 3px 0 3px; + padding: 4px; +} +li.selected { + background-color:#888; + color: #fff; + font-weight: bold; +} + +table.summary { + margin-bottom: 20px; +} +table.summary td, table.summary th { + font-weight: bold; + text-align: left; + padding: 3px; +} +table.summary th { + background-color:#036; + color: #fff; +} +table.summary td { + background-color:#eee; + border: 1px solid black; +} + +em { + color: #A00; +} +em.comment { + color: #390; +} +.string { + color: #009; +} +div#footer { + text-align:center; +} +#overview { + padding:2px; +} + +hr { + height: 1px; + color: #000; +} + +/* JXR style sheet */ +.jxr_comment +{ + color: #390; +} + +.jxr_javadoccomment +{ + color: #A00; +} + +.jxr_string +{ + color: #009; +} + +.jxr_keyword +{ + color: #000; +} diff --git a/css/dependency-check-ant/xref/allclasses-frame.html b/css/dependency-check-ant/xref/allclasses-frame.html new file mode 100644 index 000000000..c51ee72fc --- /dev/null +++ b/css/dependency-check-ant/xref/allclasses-frame.html @@ -0,0 +1,23 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/css/dependency-check-ant/xref/index.html b/css/dependency-check-ant/xref/index.html new file mode 100644 index 000000000..906236863 --- /dev/null +++ b/css/dependency-check-ant/xref/index.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference + + + + + + + + + <body> + <h1>Frame Alert</h1> + <p> + You don't have frames. Go <a href="overview-summary.html">here</a> + </p> + </body> + + + + diff --git a/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html b/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html new file mode 100644 index 000000000..70b761af0 --- /dev/null +++ b/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html @@ -0,0 +1,607 @@ + + + + +DependencyCheckTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-ant.
    +3    *
    +4    * Dependency-check-ant is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-ant is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-ant. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.taskdefs;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.io.InputStream;
    +24  import java.util.List;
    +25  import java.util.logging.Level;
    +26  import java.util.logging.Logger;
    +27  import org.apache.tools.ant.BuildException;
    +28  import org.apache.tools.ant.Task;
    +29  import org.apache.tools.ant.types.EnumeratedAttribute;
    +30  import org.apache.tools.ant.types.Reference;
    +31  import org.apache.tools.ant.types.Resource;
    +32  import org.apache.tools.ant.types.ResourceCollection;
    +33  import org.apache.tools.ant.types.resources.FileProvider;
    +34  import org.apache.tools.ant.types.resources.Resources;
    +35  import org.owasp.dependencycheck.Engine;
    +36  import org.owasp.dependencycheck.dependency.Dependency;
    +37  import org.owasp.dependencycheck.dependency.Vulnerability;
    +38  import org.owasp.dependencycheck.reporting.ReportGenerator;
    +39  import org.owasp.dependencycheck.reporting.ReportGenerator.Format;
    +40  import org.owasp.dependencycheck.utils.LogUtils;
    +41  import org.owasp.dependencycheck.utils.Settings;
    +42  
    +43  /**
    +44   * An Ant task definition to execute dependency-check during an Ant build.
    +45   *
    +46   * @author Jeremy Long (jeremy.long@owasp.org)
    +47   */
    +48  public class DependencyCheckTask extends Task {
    +49  
    +50      /**
    +51       * The properties file location.
    +52       */
    +53      private static final String PROPERTIES_FILE = "task.properties";
    +54      /**
    +55       * Name of the logging properties file.
    +56       */
    +57      private static final String LOG_PROPERTIES_FILE = "log.properties";
    +58  
    +59      /**
    +60       * Construct a new DependencyCheckTask.
    +61       */
    +62      public DependencyCheckTask() {
    +63          super();
    +64      }
    +65      //The following code was copied Apache Ant PathConvert
    +66      //BEGIN COPY from org.apache.tools.ant.taskdefs.PathConvert
    +67      /**
    +68       * Path to be converted
    +69       */
    +70      private Resources path = null;
    +71      /**
    +72       * Reference to path/fileset to convert
    +73       */
    +74      private Reference refid = null;
    +75  
    +76      /**
    +77       * Add an arbitrary ResourceCollection.
    +78       *
    +79       * @param rc the ResourceCollection to add.
    +80       * @since Ant 1.7
    +81       */
    +82      public void add(ResourceCollection rc) {
    +83          if (isReference()) {
    +84              throw new BuildException("Nested elements are not allowed when using the refid attribute.");
    +85          }
    +86          getPath().add(rc);
    +87      }
    +88  
    +89      /**
    +90       * Returns the path. If the path has not been initialized yet, this class is
    +91       * synchronized, and will instantiate the path object.
    +92       *
    +93       * @return the path
    +94       */
    +95      private synchronized Resources getPath() {
    +96          if (path == null) {
    +97              path = new Resources(getProject());
    +98              path.setCache(true);
    +99          }
    +100         return path;
    +101     }
    +102 
    +103     /**
    +104      * Learn whether the refid attribute of this element been set.
    +105      *
    +106      * @return true if refid is valid.
    +107      */
    +108     public boolean isReference() {
    +109         return refid != null;
    +110     }
    +111 
    +112     /**
    +113      * Add a reference to a Path, FileSet, DirSet, or FileList defined
    +114      * elsewhere.
    +115      *
    +116      * @param r the reference to a path, fileset, dirset or filelist.
    +117      */
    +118     public void setRefid(Reference r) {
    +119         if (path != null) {
    +120             throw new BuildException("Nested elements are not allowed when using the refid attribute.");
    +121         }
    +122         refid = r;
    +123     }
    +124 
    +125     /**
    +126      * If this is a reference, this method will add the referenced resource
    +127      * collection to the collection of paths.
    +128      *
    +129      * @throws BuildException if the reference is not to a resource collection
    +130      */
    +131     private void dealWithReferences() throws BuildException {
    +132         if (isReference()) {
    +133             final Object o = refid.getReferencedObject(getProject());
    +134             if (!(o instanceof ResourceCollection)) {
    +135                 throw new BuildException("refid '" + refid.getRefId()
    +136                         + "' does not refer to a resource collection.");
    +137             }
    +138             getPath().add((ResourceCollection) o);
    +139         }
    +140     }
    +141     // END COPY from org.apache.tools.ant.taskdefs
    +142     /**
    +143      * The application name for the report.
    +144      */
    +145     private String applicationName = "Dependency-Check";
    +146 
    +147     /**
    +148      * Get the value of applicationName.
    +149      *
    +150      * @return the value of applicationName
    +151      */
    +152     public String getApplicationName() {
    +153         return applicationName;
    +154     }
    +155 
    +156     /**
    +157      * Set the value of applicationName.
    +158      *
    +159      * @param applicationName new value of applicationName
    +160      */
    +161     public void setApplicationName(String applicationName) {
    +162         this.applicationName = applicationName;
    +163     }
    +164     /**
    +165      * The location of the data directory that contains
    +166      */
    +167     private String dataDirectory = null;
    +168 
    +169     /**
    +170      * Get the value of dataDirectory.
    +171      *
    +172      * @return the value of dataDirectory
    +173      */
    +174     public String getDataDirectory() {
    +175         return dataDirectory;
    +176     }
    +177 
    +178     /**
    +179      * Set the value of dataDirectory.
    +180      *
    +181      * @param dataDirectory new value of dataDirectory
    +182      */
    +183     public void setDataDirectory(String dataDirectory) {
    +184         this.dataDirectory = dataDirectory;
    +185     }
    +186     /**
    +187      * Specifies the destination directory for the generated Dependency-Check
    +188      * report.
    +189      */
    +190     private String reportOutputDirectory = ".";
    +191 
    +192     /**
    +193      * Get the value of reportOutputDirectory.
    +194      *
    +195      * @return the value of reportOutputDirectory
    +196      */
    +197     public String getReportOutputDirectory() {
    +198         return reportOutputDirectory;
    +199     }
    +200 
    +201     /**
    +202      * Set the value of reportOutputDirectory.
    +203      *
    +204      * @param reportOutputDirectory new value of reportOutputDirectory
    +205      */
    +206     public void setReportOutputDirectory(String reportOutputDirectory) {
    +207         this.reportOutputDirectory = reportOutputDirectory;
    +208     }
    +209     /**
    +210      * Specifies if the build should be failed if a CVSS score above a specified
    +211      * level is identified. The default is 11 which means since the CVSS scores
    +212      * are 0-10, by default the build will never fail and the CVSS score is set
    +213      * to 11. The valid range for the fail build on CVSS is 0 to 11, where
    +214      * anything above 10 will not cause the build to fail.
    +215      */
    +216     private float failBuildOnCVSS = 11;
    +217 
    +218     /**
    +219      * Get the value of failBuildOnCVSS.
    +220      *
    +221      * @return the value of failBuildOnCVSS
    +222      */
    +223     public float getFailBuildOnCVSS() {
    +224         return failBuildOnCVSS;
    +225     }
    +226 
    +227     /**
    +228      * Set the value of failBuildOnCVSS.
    +229      *
    +230      * @param failBuildOnCVSS new value of failBuildOnCVSS
    +231      */
    +232     public void setFailBuildOnCVSS(float failBuildOnCVSS) {
    +233         this.failBuildOnCVSS = failBuildOnCVSS;
    +234     }
    +235     /**
    +236      * Sets whether auto-updating of the NVD CVE/CPE data is enabled. It is not
    +237      * recommended that this be turned to false. Default is true.
    +238      */
    +239     private boolean autoUpdate = true;
    +240 
    +241     /**
    +242      * Get the value of autoUpdate.
    +243      *
    +244      * @return the value of autoUpdate
    +245      */
    +246     public boolean isAutoUpdate() {
    +247         return autoUpdate;
    +248     }
    +249 
    +250     /**
    +251      * Set the value of autoUpdate.
    +252      *
    +253      * @param autoUpdate new value of autoUpdate
    +254      */
    +255     public void setAutoUpdate(boolean autoUpdate) {
    +256         this.autoUpdate = autoUpdate;
    +257     }
    +258     /**
    +259      * The report format to be generated (HTML, XML, VULN, ALL). This
    +260      * configuration option has no affect if using this within the Site plugin
    +261      * unless the externalReport is set to true. Default is HTML.
    +262      */
    +263     private String reportFormat = "HTML";
    +264 
    +265     /**
    +266      * Get the value of reportFormat.
    +267      *
    +268      * @return the value of reportFormat
    +269      */
    +270     public String getReportFormat() {
    +271         return reportFormat;
    +272     }
    +273 
    +274     /**
    +275      * Set the value of reportFormat.
    +276      *
    +277      * @param reportFormat new value of reportFormat
    +278      */
    +279     public void setReportFormat(ReportFormats reportFormat) {
    +280         this.reportFormat = reportFormat.getValue();
    +281     }
    +282     /**
    +283      * The Proxy URL.
    +284      */
    +285     private String proxyUrl;
    +286 
    +287     /**
    +288      * Get the value of proxyUrl.
    +289      *
    +290      * @return the value of proxyUrl
    +291      */
    +292     public String getProxyUrl() {
    +293         return proxyUrl;
    +294     }
    +295 
    +296     /**
    +297      * Set the value of proxyUrl.
    +298      *
    +299      * @param proxyUrl new value of proxyUrl
    +300      */
    +301     public void setProxyUrl(String proxyUrl) {
    +302         this.proxyUrl = proxyUrl;
    +303     }
    +304     /**
    +305      * The Proxy Port.
    +306      */
    +307     private String proxyPort;
    +308 
    +309     /**
    +310      * Get the value of proxyPort.
    +311      *
    +312      * @return the value of proxyPort
    +313      */
    +314     public String getProxyPort() {
    +315         return proxyPort;
    +316     }
    +317 
    +318     /**
    +319      * Set the value of proxyPort.
    +320      *
    +321      * @param proxyPort new value of proxyPort
    +322      */
    +323     public void setProxyPort(String proxyPort) {
    +324         this.proxyPort = proxyPort;
    +325     }
    +326     /**
    +327      * The Proxy username.
    +328      */
    +329     private String proxyUsername;
    +330 
    +331     /**
    +332      * Get the value of proxyUsername.
    +333      *
    +334      * @return the value of proxyUsername
    +335      */
    +336     public String getProxyUsername() {
    +337         return proxyUsername;
    +338     }
    +339 
    +340     /**
    +341      * Set the value of proxyUsername.
    +342      *
    +343      * @param proxyUsername new value of proxyUsername
    +344      */
    +345     public void setProxyUsername(String proxyUsername) {
    +346         this.proxyUsername = proxyUsername;
    +347     }
    +348     /**
    +349      * The Proxy password.
    +350      */
    +351     private String proxyPassword;
    +352 
    +353     /**
    +354      * Get the value of proxyPassword.
    +355      *
    +356      * @return the value of proxyPassword
    +357      */
    +358     public String getProxyPassword() {
    +359         return proxyPassword;
    +360     }
    +361 
    +362     /**
    +363      * Set the value of proxyPassword.
    +364      *
    +365      * @param proxyPassword new value of proxyPassword
    +366      */
    +367     public void setProxyPassword(String proxyPassword) {
    +368         this.proxyPassword = proxyPassword;
    +369     }
    +370     /**
    +371      * The Connection Timeout.
    +372      */
    +373     private String connectionTimeout;
    +374 
    +375     /**
    +376      * Get the value of connectionTimeout.
    +377      *
    +378      * @return the value of connectionTimeout
    +379      */
    +380     public String getConnectionTimeout() {
    +381         return connectionTimeout;
    +382     }
    +383 
    +384     /**
    +385      * Set the value of connectionTimeout.
    +386      *
    +387      * @param connectionTimeout new value of connectionTimeout
    +388      */
    +389     public void setConnectionTimeout(String connectionTimeout) {
    +390         this.connectionTimeout = connectionTimeout;
    +391     }
    +392     /**
    +393      * The file path used for verbose logging.
    +394      */
    +395     private String logFile = null;
    +396 
    +397     /**
    +398      * Get the value of logFile.
    +399      *
    +400      * @return the value of logFile
    +401      */
    +402     public String getLogFile() {
    +403         return logFile;
    +404     }
    +405 
    +406     /**
    +407      * Set the value of logFile.
    +408      *
    +409      * @param logFile new value of logFile
    +410      */
    +411     public void setLogFile(String logFile) {
    +412         this.logFile = logFile;
    +413     }
    +414     /**
    +415      * The path to the suppression file.
    +416      */
    +417     private String suppressionFile;
    +418 
    +419     /**
    +420      * Get the value of suppressionFile.
    +421      *
    +422      * @return the value of suppressionFile
    +423      */
    +424     public String getSuppressionFile() {
    +425         return suppressionFile;
    +426     }
    +427 
    +428     /**
    +429      * Set the value of suppressionFile.
    +430      *
    +431      * @param suppressionFile new value of suppressionFile
    +432      */
    +433     public void setSuppressionFile(String suppressionFile) {
    +434         this.suppressionFile = suppressionFile;
    +435     }
    +436 
    +437     @Override
    +438     public void execute() throws BuildException {
    +439         final InputStream in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +440         LogUtils.prepareLogger(in, logFile);
    +441 
    +442         dealWithReferences();
    +443         validateConfiguration();
    +444         populateSettings();
    +445 
    +446         final Engine engine = new Engine();
    +447         for (Resource resource : path) {
    +448             final FileProvider provider = resource.as(FileProvider.class);
    +449             if (provider != null) {
    +450                 final File file = provider.getFile();
    +451                 if (file != null && file.exists()) {
    +452                     engine.scan(file);
    +453                 }
    +454             }
    +455         }
    +456         try {
    +457             engine.analyzeDependencies();
    +458             final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers());
    +459             reporter.generateReports(reportOutputDirectory, reportFormat);
    +460 
    +461             if (this.failBuildOnCVSS <= 10) {
    +462                 checkForFailure(engine.getDependencies());
    +463             }
    +464         } catch (IOException ex) {
    +465             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +466             throw new BuildException("Unable to generate dependency-check report", ex);
    +467         } catch (Exception ex) {
    +468             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
    +469             throw new BuildException("An exception occured; unable to continue task", ex);
    +470         }
    +471     }
    +472 
    +473     /**
    +474      * Validate the configuration to ensure the parameters have been properly
    +475      * configured/initialized.
    +476      *
    +477      * @throws BuildException if the task was not configured correctly.
    +478      */
    +479     private void validateConfiguration() throws BuildException {
    +480         if (path == null) {
    +481             throw new BuildException("No project dependencies have been defined to analyze.");
    +482         }
    +483         if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) {
    +484             throw new BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11.");
    +485         }
    +486     }
    +487 
    +488     /**
    +489      * Takes the properties supplied and updates the dependency-check settings.
    +490      * Additionally, this sets the system properties required to change the
    +491      * proxy url, port, and connection timeout.
    +492      */
    +493     private void populateSettings() {
    +494         InputStream taskProperties = null;
    +495         try {
    +496             taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +497             Settings.mergeProperties(taskProperties);
    +498         } catch (IOException ex) {
    +499             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    +500             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +501         } finally {
    +502             if (taskProperties != null) {
    +503                 try {
    +504                     taskProperties.close();
    +505                 } catch (IOException ex) {
    +506                     Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex);
    +507                 }
    +508             }
    +509         }
    +510         if (dataDirectory != null) {
    +511             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    +512         } else {
    +513             final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    +514             final File base = jarPath.getParentFile();
    +515             final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +516             final File dataDir = new File(base, sub);
    +517             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +518         }
    +519 
    +520         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +521 
    +522         if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +523             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +524         }
    +525         if (proxyPort != null && !proxyPort.isEmpty()) {
    +526             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +527         }
    +528         if (proxyUsername != null && !proxyUsername.isEmpty()) {
    +529             Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUsername);
    +530         }
    +531         if (proxyPassword != null && !proxyPassword.isEmpty()) {
    +532             Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPassword);
    +533         }
    +534         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +535             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +536         }
    +537         if (suppressionFile != null && !suppressionFile.isEmpty()) {
    +538             Settings.setString(Settings.KEYS.SUPPRESSION_FILE, suppressionFile);
    +539         }
    +540     }
    +541 
    +542     /**
    +543      * Checks to see if a vulnerability has been identified with a CVSS score
    +544      * that is above the threshold set in the configuration.
    +545      *
    +546      * @param dependencies the list of dependency objects
    +547      * @throws BuildException thrown if a CVSS score is found that is higher
    +548      * then the threshold set
    +549      */
    +550     private void checkForFailure(List<Dependency> dependencies) throws BuildException {
    +551         final StringBuilder ids = new StringBuilder();
    +552         for (Dependency d : dependencies) {
    +553             for (Vulnerability v : d.getVulnerabilities()) {
    +554                 if (v.getCvssScore() >= failBuildOnCVSS) {
    +555                     if (ids.length() == 0) {
    +556                         ids.append(v.getName());
    +557                     } else {
    +558                         ids.append(", ").append(v.getName());
    +559                     }
    +560                 }
    +561             }
    +562         }
    +563         if (ids.length() > 0) {
    +564             final String msg = String.format("%n%nDependency-Check Failure:%n"
    +565                     + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    +566                     + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    +567             throw new BuildException(msg);
    +568         }
    +569     }
    +570 
    +571     /**
    +572      * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN",
    +573      * etc..
    +574      */
    +575     public static class ReportFormats extends EnumeratedAttribute {
    +576 
    +577         /**
    +578          * Returns the list of values for the report format.
    +579          *
    +580          * @return the list of values for the report format
    +581          */
    +582         @Override
    +583         public String[] getValues() {
    +584             int i = 0;
    +585             final Format[] formats = Format.values();
    +586             final String[] values = new String[formats.length];
    +587             for (Format format : formats) {
    +588                 values[i++] = format.name();
    +589             }
    +590             return values;
    +591         }
    +592     }
    +593 }
    +
    +
    + + diff --git a/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html b/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html new file mode 100644 index 000000000..1f36e4812 --- /dev/null +++ b/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -0,0 +1,27 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference Package org.owasp.dependencycheck.taskdefs + + + + +

    + org.owasp.dependencycheck.taskdefs +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html b/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html new file mode 100644 index 000000000..48b3f6e2a --- /dev/null +++ b/css/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -0,0 +1,72 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference Package org.owasp.dependencycheck.taskdefs + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.taskdefs

    + + + + + + + + + + + + + + + +
    Class Summary
    + DependencyCheckTask +
    + ReportFormats +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-ant/xref/overview-frame.html b/css/dependency-check-ant/xref/overview-frame.html new file mode 100644 index 000000000..abb951f90 --- /dev/null +++ b/css/dependency-check-ant/xref/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/css/dependency-check-ant/xref/overview-summary.html b/css/dependency-check-ant/xref/overview-summary.html new file mode 100644 index 000000000..6d67d4d19 --- /dev/null +++ b/css/dependency-check-ant/xref/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + Dependency-Check Ant Task 1.0.6 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    Dependency-Check Ant Task 1.0.6 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.taskdefs +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-ant/xref/stylesheet.css b/css/dependency-check-ant/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/css/dependency-check-ant/xref/stylesheet.css @@ -0,0 +1,116 @@ +/* Javadoc style sheet */ +/* Define colors, fonts and other style attributes here to override the defaults */ +body { + background-color: #fff; + font-family: Arial, Helvetica, sans-serif; +} + +a:link { + color: #00f; +} +a:visited { + color: #00a; +} + +a:active, a:hover { + color: #f30 !important; +} + +ul, li { + list-style-type:none; + margin:0; + padding:0; +} + +table td { + padding: 3px; + border: 1px solid #000; +} +table { + width:100%; + border: 1px solid #000; + border-collapse: collapse; +} + +div.overview { + background-color:#ddd; + padding: 4px 4px 4px 0; +} +div.overview li, div.framenoframe li { + display: inline; +} +div.framenoframe { + text-align: center; + font-size: x-small; +} +div.framenoframe li { + margin: 0 3px 0 3px; +} +div.overview li { + margin:3px 3px 0 3px; + padding: 4px; +} +li.selected { + background-color:#888; + color: #fff; + font-weight: bold; +} + +table.summary { + margin-bottom: 20px; +} +table.summary td, table.summary th { + font-weight: bold; + text-align: left; + padding: 3px; +} +table.summary th { + background-color:#036; + color: #fff; +} +table.summary td { + background-color:#eee; + border: 1px solid black; +} + +em { + color: #A00; +} +em.comment { + color: #390; +} +.string { + color: #009; +} +div#footer { + text-align:center; +} +#overview { + padding:2px; +} + +hr { + height: 1px; + color: #000; +} + +/* JXR style sheet */ +.jxr_comment +{ + color: #390; +} + +.jxr_javadoccomment +{ + color: #A00; +} + +.jxr_string +{ + color: #009; +} + +.jxr_keyword +{ + color: #000; +} diff --git a/css/dependency-check-cli/apidocs/allclasses-frame.html b/css/dependency-check-cli/apidocs/allclasses-frame.html new file mode 100644 index 000000000..066b0c4cf --- /dev/null +++ b/css/dependency-check-cli/apidocs/allclasses-frame.html @@ -0,0 +1,36 @@ + + + + + + + +All Classes (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    App +
    +CliParser +
    +CliParser.ArgumentName +
    +
    + + + diff --git a/css/dependency-check-cli/apidocs/allclasses-noframe.html b/css/dependency-check-cli/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..3ffe25189 --- /dev/null +++ b/css/dependency-check-cli/apidocs/allclasses-noframe.html @@ -0,0 +1,36 @@ + + + + + + + +All Classes (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    App +
    +CliParser +
    +CliParser.ArgumentName +
    +
    + + + diff --git a/css/dependency-check-cli/apidocs/constant-values.html b/css/dependency-check-cli/apidocs/constant-values.html new file mode 100644 index 000000000..127c28851 --- /dev/null +++ b/css/dependency-check-cli/apidocs/constant-values.html @@ -0,0 +1,361 @@ + + + + + + + +Constant Field Values (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

    +
    +
    +Contents + + + + + + +
    +org.owasp.*
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.cli.CliParser.ArgumentName
    +public static final StringAPP_NAME"app"
    +public static final StringAPP_NAME_SHORT"a"
    +public static final StringCONNECTION_TIMEOUT"connectiontimeout"
    +public static final StringCONNECTION_TIMEOUT_SHORT"c"
    +public static final StringDATA_DIRECTORY"data"
    +public static final StringDATA_DIRECTORY_SHORT"d"
    +public static final StringDISABLE_AUTO_UPDATE"noupdate"
    +public static final StringDISABLE_AUTO_UPDATE_SHORT"n"
    +public static final StringHELP"help"
    +public static final StringHELP_SHORT"h"
    +public static final StringOUT"out"
    +public static final StringOUT_SHORT"o"
    +public static final StringOUTPUT_FORMAT"format"
    +public static final StringOUTPUT_FORMAT_SHORT"f"
    +public static final StringPROP"propertyfile"
    +public static final StringPROP_SHORT"p"
    +public static final StringPROXY_PASSWORD"proxypass"
    +public static final StringPROXY_PASSWORD_SHORT"pp"
    +public static final StringPROXY_PORT"proxyport"
    +public static final StringPROXY_PORT_SHORT"p"
    +public static final StringPROXY_URL"proxyurl"
    +public static final StringPROXY_URL_SHORT"u"
    +public static final StringPROXY_USERNAME"proxyuser"
    +public static final StringPROXY_USERNAME_SHORT"pu"
    +public static final StringSCAN"scan"
    +public static final StringSCAN_SHORT"s"
    +public static final StringSUPPRESION_FILE"suppression"
    +public static final StringSUPPRESION_FILE_SHORT"sf"
    +public static final StringVERBOSE_LOG"log"
    +public static final StringVERBOSE_LOG_SHORT"l"
    +public static final StringVERSION"version"
    +public static final StringVERSION_SHORT"v"
    + +

    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/deprecated-list.html b/css/dependency-check-cli/apidocs/deprecated-list.html new file mode 100644 index 000000000..c1873cd0c --- /dev/null +++ b/css/dependency-check-cli/apidocs/deprecated-list.html @@ -0,0 +1,147 @@ + + + + + + + +Deprecated List (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/help-doc.html b/css/dependency-check-cli/apidocs/help-doc.html new file mode 100644 index 000000000..0957fbf5d --- /dev/null +++ b/css/dependency-check-cli/apidocs/help-doc.html @@ -0,0 +1,224 @@ + + + + + + + +API Help (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +How This API Document Is Organized

    +
    +This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    +Overview

    +
    + +

    +The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    +

    +Package

    +
    + +

    +Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

      +
    • Interfaces (italic)
    • Classes
    • Enums
    • Exceptions
    • Errors
    • Annotation Types
    +
    +

    +Class/Interface

    +
    + +

    +Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

      +
    • Class inheritance diagram
    • Direct Subclasses
    • All Known Subinterfaces
    • All Known Implementing Classes
    • Class/interface declaration
    • Class/interface description +

      +

    • Nested Class Summary
    • Field Summary
    • Constructor Summary
    • Method Summary +

      +

    • Field Detail
    • Constructor Detail
    • Method Detail
    +Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
    + +

    +Annotation Type

    +
    + +

    +Each annotation type has its own separate page with the following sections:

      +
    • Annotation Type declaration
    • Annotation Type description
    • Required Element Summary
    • Optional Element Summary
    • Element Detail
    +
    + +

    +Enum

    +
    + +

    +Each enum has its own separate page with the following sections:

      +
    • Enum declaration
    • Enum description
    • Enum Constant Summary
    • Enum Constant Detail
    +
    +

    +Use

    +
    +Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
    +

    +Tree (Class Hierarchy)

    +
    +There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    +
    +

    +Deprecated API

    +
    +The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
    +

    +Index

    +
    +The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
    +

    +Prev/Next

    +These links take you to the next or previous class, interface, package, or related page.

    +Frames/No Frames

    +These links show and hide the HTML frames. All pages are available with or without frames. +

    +

    +Serialized Form

    +Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

    +

    +Constant Field Values

    +The Constant Field Values page lists the static final fields and their values. +

    + + +This help file applies to API documentation generated using the standard doclet. + +
    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/index-all.html b/css/dependency-check-cli/apidocs/index-all.html new file mode 100644 index 000000000..c5d3740c9 --- /dev/null +++ b/css/dependency-check-cli/apidocs/index-all.html @@ -0,0 +1,396 @@ + + + + + + + +Index (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A C D G H I M O P R S V
    +

    +A

    +
    +
    App - Class in org.owasp.dependencycheck
    The command line interface for the DependencyCheck application.
    App() - +Constructor for class org.owasp.dependencycheck.App +
      +
    APP_NAME - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name specifying the name of the application to + be scanned. +
    APP_NAME_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name specifying the name of the application to + be scanned. +
    +
    +

    +C

    +
    +
    CliParser - Class in org.owasp.dependencycheck.cli
    A utility to parse command line arguments for the DependencyCheck.
    CliParser() - +Constructor for class org.owasp.dependencycheck.cli.CliParser +
      +
    CliParser.ArgumentName - Class in org.owasp.dependencycheck.cli
    A collection of static final strings that represent the possible command + line arguments.
    CliParser.ArgumentName() - +Constructor for class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
      +
    CONNECTION_TIMEOUT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    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 connection timeout. +
    +
    +

    +D

    +
    +
    DATA_DIRECTORY - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name for setting the location of the data directory. +
    DATA_DIRECTORY_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name for setting the location of the data + directory. +
    DISABLE_AUTO_UPDATE - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name specifying that the CPE/CVE/etc. +
    DISABLE_AUTO_UPDATE_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name specifying that the CPE/CVE/etc. +
    +
    +

    +G

    +
    +
    getApplicationName() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the application name specified on the command line. +
    getConnectionTimeout() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the connection timeout. +
    getDataDirectory() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Get the value of dataDirectory. +
    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 + line. +
    getReportFormat() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the output format specified on the command line. +
    getScanFiles() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Retrieves the file command line parameter(s) specified for the 'scan' + argument. +
    getSuppressionFile() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the path to the suppression file. +
    getVerboseLog() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the path to the verbose log file. +
    +
    +

    +H

    +
    +
    HELP - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name asking for help. +
    HELP_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name asking for help. +
    +
    +

    +I

    +
    +
    isAutoUpdate() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Checks if the auto update feature has been disabled. +
    isGetHelp() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Determines if the 'help' command line argument was passed in. +
    isGetVersion() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Determines if the 'version' command line argument was passed in. +
    isRunScan() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Determines if the 'scan' command line argument was passed in. +
    +
    +

    +M

    +
    +
    main(String[]) - +Static method in class org.owasp.dependencycheck.App +
    The main method for the application. +
    +
    +

    +O

    +
    +
    org.owasp.dependencycheck - package org.owasp.dependencycheck
    + + org.owasp.dependencycheck + + + Includes the main entry point for the DependencyChecker.
    org.owasp.dependencycheck.cli - package org.owasp.dependencycheck.cli
    + + org.owasp.dependencycheck.cli + + + Includes utility classes such as the CLI Parser, + +
    OUT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name specifying the directory to write the + reports to. +
    OUT_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name specifying the directory to write the + reports to. +
    OUTPUT_FORMAT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name specifying the output format to write the + reports to. +
    OUTPUT_FORMAT_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name specifying the output format to write the + reports to. +
    +
    +

    +P

    +
    +
    parse(String[]) - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Parses the arguments passed in and captures the results for later use. +
    printHelp() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Displays the command line help message to the standard output. +
    printVersionInfo() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Prints the manifest information to standard output. +
    PROP - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name for setting the location of an additional + properties file. +
    PROP_SHORT - +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. +
    PROXY_PORT_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name indicating the proxy port. +
    PROXY_URL - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name indicating the proxy url. +
    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. +
    +
    +

    +R

    +
    +
    run(String[]) - +Method in class org.owasp.dependencycheck.App +
    Main CLI entry-point into the application. +
    +
    +

    +S

    +
    +
    SCAN - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name specifying the directory/file to scan. +
    SCAN_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name specifying the directory/file to scan. +
    SUPPRESION_FILE - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name for setting the location of the suppression + file. +
    SUPPRESION_FILE_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name for setting the location of the + suppression file. +
    +
    +

    +V

    +
    +
    VERBOSE_LOG - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name for setting the location of the data directory. +
    VERBOSE_LOG_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name for setting the location of the data + directory. +
    VERSION - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name asking for the version. +
    VERSION_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The long CLI argument name asking for the version. +
    +
    +A C D G H I M O P R S V + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/index.html b/css/dependency-check-cli/apidocs/index.html new file mode 100644 index 000000000..66bce9069 --- /dev/null +++ b/css/dependency-check-cli/apidocs/index.html @@ -0,0 +1,40 @@ + + + + + + + +Dependency-Check Command Line 1.0.6 API + + + + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="overview-summary.html">Non-frame version.</A> + + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html new file mode 100644 index 000000000..5eb73721f --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html @@ -0,0 +1,284 @@ + + + + + + + +App (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck +
    +Class App

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.App
    +
    +
    +
    +
    public class App
    extends Object
    + + +

    +The command line interface for the DependencyCheck application. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    App() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +static voidmain(String[] args) + +
    +          The main method for the application.
    + voidrun(String[] args) + +
    +          Main CLI entry-point into the application.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +App

    +
    +public App()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +main

    +
    +public static void main(String[] args)
    +
    +
    The main method for the application. +

    +

    +
    Parameters:
    args - the command line arguments
    +
    +
    +
    + +

    +run

    +
    +public void run(String[] args)
    +
    +
    Main CLI entry-point into the application. +

    +

    +
    Parameters:
    args - the command line arguments
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html new file mode 100644 index 000000000..59ae38dd7 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.App (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.App

    +
    +No usage of org.owasp.dependencycheck.App +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html new file mode 100644 index 000000000..d73d347cc --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html @@ -0,0 +1,917 @@ + + + + + + + +CliParser.ArgumentName (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.cli +
    +Class CliParser.ArgumentName

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.cli.CliParser.ArgumentName
    +
    +
    +
    Enclosing class:
    CliParser
    +
    +
    +
    +
    public static class CliParser.ArgumentName
    extends Object
    + + +

    +A collection of static final strings that represent the possible command + line arguments. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringAPP_NAME + +
    +          The long CLI argument name specifying the name of the application to + be scanned.
    +static StringAPP_NAME_SHORT + +
    +          The short CLI argument name specifying the name of the application to + be scanned.
    +static StringCONNECTION_TIMEOUT + +
    +          The CLI argument name indicating the connection timeout.
    +static StringCONNECTION_TIMEOUT_SHORT + +
    +          The short CLI argument name indicating the connection timeout.
    +static StringDATA_DIRECTORY + +
    +          The CLI argument name for setting the location of the data directory.
    +static StringDATA_DIRECTORY_SHORT + +
    +          The short CLI argument name for setting the location of the data + directory.
    +static StringDISABLE_AUTO_UPDATE + +
    +          The long CLI argument name specifying that the CPE/CVE/etc.
    +static StringDISABLE_AUTO_UPDATE_SHORT + +
    +          The short CLI argument name specifying that the CPE/CVE/etc.
    +static StringHELP + +
    +          The long CLI argument name asking for help.
    +static StringHELP_SHORT + +
    +          The short CLI argument name asking for help.
    +static StringOUT + +
    +          The long CLI argument name specifying the directory to write the + reports to.
    +static StringOUT_SHORT + +
    +          The short CLI argument name specifying the directory to write the + reports to.
    +static StringOUTPUT_FORMAT + +
    +          The long CLI argument name specifying the output format to write the + reports to.
    +static StringOUTPUT_FORMAT_SHORT + +
    +          The short CLI argument name specifying the output format to write the + reports to.
    +static StringPROP + +
    +          The CLI argument name for setting the location of an additional + properties file.
    +static StringPROP_SHORT + +
    +          The short CLI argument name for setting the location of an additional + properties file.
    +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 StringPROXY_PORT + +
    +          The CLI argument name indicating the proxy port.
    +static StringPROXY_PORT_SHORT + +
    +          The short CLI argument name indicating the proxy port.
    +static StringPROXY_URL + +
    +          The CLI argument name indicating the proxy url.
    +static StringPROXY_URL_SHORT + +
    +          The short CLI argument name indicating the proxy url.
    +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 StringSCAN + +
    +          The long CLI argument name specifying the directory/file to scan.
    +static StringSCAN_SHORT + +
    +          The short CLI argument name specifying the directory/file to scan.
    +static StringSUPPRESION_FILE + +
    +          The CLI argument name for setting the location of the suppression + file.
    +static StringSUPPRESION_FILE_SHORT + +
    +          The short CLI argument name for setting the location of the + suppression file.
    +static StringVERBOSE_LOG + +
    +          The CLI argument name for setting the location of the data directory.
    +static StringVERBOSE_LOG_SHORT + +
    +          The short CLI argument name for setting the location of the data + directory.
    +static StringVERSION + +
    +          The short CLI argument name asking for the version.
    +static StringVERSION_SHORT + +
    +          The long CLI argument name asking for the version.
    +  + + + + + + + + + + +
    +Constructor Summary
    CliParser.ArgumentName() + +
    +           
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +SCAN

    +
    +public static final String SCAN
    +
    +
    The long CLI argument name specifying the directory/file to scan. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SCAN_SHORT

    +
    +public static final String SCAN_SHORT
    +
    +
    The short CLI argument name specifying the directory/file to scan. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DISABLE_AUTO_UPDATE

    +
    +public static final String DISABLE_AUTO_UPDATE
    +
    +
    The long CLI argument name specifying that the CPE/CVE/etc. data + should not be automatically updated. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DISABLE_AUTO_UPDATE_SHORT

    +
    +public static final String DISABLE_AUTO_UPDATE_SHORT
    +
    +
    The short CLI argument name specifying that the CPE/CVE/etc. data + should not be automatically updated. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +OUT

    +
    +public static final String OUT
    +
    +
    The long CLI argument name specifying the directory to write the + reports to. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +OUT_SHORT

    +
    +public static final String OUT_SHORT
    +
    +
    The short CLI argument name specifying the directory to write the + reports to. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +OUTPUT_FORMAT

    +
    +public static final String OUTPUT_FORMAT
    +
    +
    The long CLI argument name specifying the output format to write the + reports to. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +OUTPUT_FORMAT_SHORT

    +
    +public static final String OUTPUT_FORMAT_SHORT
    +
    +
    The short CLI argument name specifying the output format to write the + reports to. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +APP_NAME

    +
    +public static final String APP_NAME
    +
    +
    The long CLI argument name specifying the name of the application to + be scanned. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +APP_NAME_SHORT

    +
    +public static final String APP_NAME_SHORT
    +
    +
    The short CLI argument name specifying the name of the application to + be scanned. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +HELP

    +
    +public static final String HELP
    +
    +
    The long CLI argument name asking for help. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +HELP_SHORT

    +
    +public static final String HELP_SHORT
    +
    +
    The short CLI argument name asking for help. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VERSION_SHORT

    +
    +public static final String VERSION_SHORT
    +
    +
    The long CLI argument name asking for the version. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VERSION

    +
    +public static final String VERSION
    +
    +
    The short CLI argument name asking for the version. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_PORT_SHORT

    +
    +public static final String PROXY_PORT_SHORT
    +
    +
    The short CLI argument name indicating the proxy port. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_PORT

    +
    +public static final String PROXY_PORT
    +
    +
    The CLI argument name indicating the proxy port. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_URL_SHORT

    +
    +public static final String PROXY_URL_SHORT
    +
    +
    The short CLI argument name indicating the proxy url. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_URL

    +
    +public static final String PROXY_URL
    +
    +
    The CLI argument name indicating the proxy url. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +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 connection timeout. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CONNECTION_TIMEOUT

    +
    +public static final String CONNECTION_TIMEOUT
    +
    +
    The CLI argument name indicating the connection timeout. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROP_SHORT

    +
    +public static final String PROP_SHORT
    +
    +
    The short CLI argument name for setting the location of an additional + properties file. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROP

    +
    +public static final String PROP
    +
    +
    The CLI argument name for setting the location of an additional + properties file. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DATA_DIRECTORY

    +
    +public static final String DATA_DIRECTORY
    +
    +
    The CLI argument name for setting the location of the data directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DATA_DIRECTORY_SHORT

    +
    +public static final String DATA_DIRECTORY_SHORT
    +
    +
    The short CLI argument name for setting the location of the data + directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VERBOSE_LOG

    +
    +public static final String VERBOSE_LOG
    +
    +
    The CLI argument name for setting the location of the data directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VERBOSE_LOG_SHORT

    +
    +public static final String VERBOSE_LOG_SHORT
    +
    +
    The short CLI argument name for setting the location of the data + directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SUPPRESION_FILE

    +
    +public static final String SUPPRESION_FILE
    +
    +
    The CLI argument name for setting the location of the suppression + file. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SUPPRESION_FILE_SHORT

    +
    +public static final String SUPPRESION_FILE_SHORT
    +
    +
    The short CLI argument name for setting the location of the + suppression file. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +CliParser.ArgumentName

    +
    +public CliParser.ArgumentName()
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html new file mode 100644 index 000000000..fc6e5fee4 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html @@ -0,0 +1,711 @@ + + + + + + + +CliParser (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.cli +
    +Class CliParser

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.cli.CliParser
    +
    +
    +
    +
    public final class CliParser
    extends Object
    + + +

    +A utility to parse command line arguments for the DependencyCheck. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classCliParser.ArgumentName + +
    +          A collection of static final strings that represent the possible command + line arguments.
    +  + + + + + + + + + + +
    +Constructor Summary
    CliParser() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetApplicationName() + +
    +          Returns the application name specified on the command line.
    + StringgetConnectionTimeout() + +
    +          Returns the connection timeout.
    + StringgetDataDirectory() + +
    +          Get the value of dataDirectory.
    + FilegetPropertiesFile() + +
    +          Returns the properties file specified on the command line.
    + StringgetProxyPassword() + +
    +          Returns the proxy password.
    + StringgetProxyPort() + +
    +          Returns the proxy port.
    + StringgetProxyUrl() + +
    +          Returns the proxy url.
    + StringgetProxyUsername() + +
    +          Returns the proxy username.
    + StringgetReportDirectory() + +
    +          Returns the directory to write the reports to specified on the command + line.
    + StringgetReportFormat() + +
    +          Returns the output format specified on the command line.
    + String[]getScanFiles() + +
    +          Retrieves the file command line parameter(s) specified for the 'scan' + argument.
    + StringgetSuppressionFile() + +
    +          Returns the path to the suppression file.
    + StringgetVerboseLog() + +
    +          Returns the path to the verbose log file.
    + booleanisAutoUpdate() + +
    +          Checks if the auto update feature has been disabled.
    + booleanisGetHelp() + +
    +          Determines if the 'help' command line argument was passed in.
    + booleanisGetVersion() + +
    +          Determines if the 'version' command line argument was passed in.
    + booleanisRunScan() + +
    +          Determines if the 'scan' command line argument was passed in.
    + voidparse(String[] args) + +
    +          Parses the arguments passed in and captures the results for later use.
    + voidprintHelp() + +
    +          Displays the command line help message to the standard output.
    + voidprintVersionInfo() + +
    +          Prints the manifest information to standard output.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CliParser

    +
    +public CliParser()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +parse

    +
    +public void parse(String[] args)
    +           throws FileNotFoundException,
    +                  org.apache.commons.cli.ParseException
    +
    +
    Parses the arguments passed in and captures the results for later use. +

    +

    +
    Parameters:
    args - the command line arguments +
    Throws: +
    FileNotFoundException - is thrown when a 'file' argument does not + point to a file that exists. +
    org.apache.commons.cli.ParseException - is thrown when a Parse Exception occurs.
    +
    +
    +
    + +

    +isGetVersion

    +
    +public boolean isGetVersion()
    +
    +
    Determines if the 'version' command line argument was passed in. +

    +

    + +
    Returns:
    whether or not the 'version' command line argument was passed in
    +
    +
    +
    + +

    +isGetHelp

    +
    +public boolean isGetHelp()
    +
    +
    Determines if the 'help' command line argument was passed in. +

    +

    + +
    Returns:
    whether or not the 'help' command line argument was passed in
    +
    +
    +
    + +

    +isRunScan

    +
    +public boolean isRunScan()
    +
    +
    Determines if the 'scan' command line argument was passed in. +

    +

    + +
    Returns:
    whether or not the 'scan' command line argument was passed in
    +
    +
    +
    + +

    +printHelp

    +
    +public void printHelp()
    +
    +
    Displays the command line help message to the standard output. +

    +

    +
    +
    +
    +
    + +

    +getScanFiles

    +
    +public String[] getScanFiles()
    +
    +
    Retrieves the file command line parameter(s) specified for the 'scan' + argument. +

    +

    + +
    Returns:
    the file paths specified on the command line for scan
    +
    +
    +
    + +

    +getReportDirectory

    +
    +public String getReportDirectory()
    +
    +
    Returns the directory to write the reports to specified on the command + line. +

    +

    + +
    Returns:
    the path to the reports directory.
    +
    +
    +
    + +

    +getReportFormat

    +
    +public String getReportFormat()
    +
    +
    Returns the output format specified on the command line. Defaults to HTML + if no format was specified. +

    +

    + +
    Returns:
    the output format name.
    +
    +
    +
    + +

    +getApplicationName

    +
    +public String getApplicationName()
    +
    +
    Returns the application name specified on the command line. +

    +

    + +
    Returns:
    the application name.
    +
    +
    +
    + +

    +getConnectionTimeout

    +
    +public String getConnectionTimeout()
    +
    +
    Returns the connection timeout. +

    +

    + +
    Returns:
    the connection timeout
    +
    +
    +
    + +

    +getProxyUrl

    +
    +public String getProxyUrl()
    +
    +
    Returns the proxy url. +

    +

    + +
    Returns:
    the proxy url
    +
    +
    +
    + +

    +getProxyPort

    +
    +public String getProxyPort()
    +
    +
    Returns the proxy port. +

    +

    + +
    Returns:
    the proxy port
    +
    +
    +
    + +

    +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

    +
    +public String getDataDirectory()
    +
    +
    Get the value of dataDirectory. +

    +

    + +
    Returns:
    the value of dataDirectory
    +
    +
    +
    + +

    +getPropertiesFile

    +
    +public File getPropertiesFile()
    +
    +
    Returns the properties file specified on the command line. +

    +

    + +
    Returns:
    the properties file specified on the command line
    +
    +
    +
    + +

    +getVerboseLog

    +
    +public String getVerboseLog()
    +
    +
    Returns the path to the verbose log file. +

    +

    + +
    Returns:
    the path to the verbose log file
    +
    +
    +
    + +

    +getSuppressionFile

    +
    +public String getSuppressionFile()
    +
    +
    Returns the path to the suppression file. +

    +

    + +
    Returns:
    the path to the suppression file
    +
    +
    +
    + +

    +printVersionInfo

    +
    +public void printVersionInfo()
    +
    +

    Prints the manifest information to standard output.

    +
    • Implementation-Title: ${pom.name}
    • +
    • Implementation-Version: ${pom.version}
    +

    +

    +
    +
    +
    +
    + +

    +isAutoUpdate

    +
    +public boolean isAutoUpdate()
    +
    +
    Checks if the auto update feature has been disabled. If it has been + disabled via the command line this will return false. +

    +

    + +
    Returns:
    if auto-update is allowed.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html new file mode 100644 index 000000000..651b8e164 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.cli.CliParser.ArgumentName (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.cli.CliParser.ArgumentName

    +
    +No usage of org.owasp.dependencycheck.cli.CliParser.ArgumentName +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html new file mode 100644 index 000000000..676d18981 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.cli.CliParser (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.cli.CliParser

    +
    +No usage of org.owasp.dependencycheck.cli.CliParser +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html new file mode 100644 index 000000000..e6a0b13e6 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html @@ -0,0 +1,35 @@ + + + + + + + +org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.cli + + + + +
    +Classes  + +
    +CliParser +
    +CliParser.ArgumentName
    + + + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html new file mode 100644 index 000000000..bea1ce37f --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html @@ -0,0 +1,192 @@ + + + + + + + +org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.cli +

    + + + org.owasp.dependencycheck.cli + + + Includes utility classes such as the CLI Parser, + + +

    +See: +
    +          Description +

    + + + + + + + + + + + + + +
    +Class Summary
    CliParserA utility to parse command line arguments for the DependencyCheck.
    CliParser.ArgumentNameA collection of static final strings that represent the possible command + line arguments.
    +  + +

    +

    +Package org.owasp.dependencycheck.cli Description +

    + +

    + + + org.owasp.dependencycheck.cli + + + Includes utility classes such as the CLI Parser, + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html new file mode 100644 index 000000000..b8e74f3ca --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck.cli Class Hierarchy (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.cli +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html new file mode 100644 index 000000000..634c1c575 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.cli

    +
    +No usage of org.owasp.dependencycheck.cli +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..969ed1ad9 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,33 @@ + + + + + + + +org.owasp.dependencycheck (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck + + + + +
    +Classes  + +
    +App
    + + + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..29fe10a10 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,185 @@ + + + + + + + +org.owasp.dependencycheck (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck +

    + + + org.owasp.dependencycheck + + + Includes the main entry point for the DependencyChecker. +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Class Summary
    AppThe command line interface for the DependencyCheck application.
    +  + +

    +

    +Package org.owasp.dependencycheck Description +

    + +

    + + + org.owasp.dependencycheck + + + Includes the main entry point for the DependencyChecker. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html new file mode 100644 index 000000000..c4a6e4def --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck Class Hierarchy (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    +
      +
    • java.lang.Object
        +
      • org.owasp.dependencycheck.App
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html new file mode 100644 index 000000000..f631ec238 --- /dev/null +++ b/css/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck

    +
    +No usage of org.owasp.dependencycheck +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/overview-frame.html b/css/dependency-check-cli/apidocs/overview-frame.html new file mode 100644 index 000000000..533b408a7 --- /dev/null +++ b/css/dependency-check-cli/apidocs/overview-frame.html @@ -0,0 +1,45 @@ + + + + + + + +Overview List (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + + + + +
    +
    + + + + + +
    All Classes +

    + +Packages +
    +org.owasp.dependencycheck +
    +org.owasp.dependencycheck.cli +
    +

    + +

    +  + + diff --git a/css/dependency-check-cli/apidocs/overview-summary.html b/css/dependency-check-cli/apidocs/overview-summary.html new file mode 100644 index 000000000..18bbb91e8 --- /dev/null +++ b/css/dependency-check-cli/apidocs/overview-summary.html @@ -0,0 +1,173 @@ + + + + + + + +Overview (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Dependency-Check Command Line 1.0.6 API +

    +
    + + + + + + + + + + + + + +
    +Packages
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point for the DependencyChecker.
    org.owasp.dependencycheck.cli + + org.owasp.dependencycheck.cli + + + Includes utility classes such as the CLI Parser, + +
    + +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/overview-tree.html b/css/dependency-check-cli/apidocs/overview-tree.html new file mode 100644 index 000000000..859595b05 --- /dev/null +++ b/css/dependency-check-cli/apidocs/overview-tree.html @@ -0,0 +1,153 @@ + + + + + + + +Class Hierarchy (Dependency-Check Command Line 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    org.owasp.dependencycheck, org.owasp.dependencycheck.cli
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-cli/apidocs/package-list b/css/dependency-check-cli/apidocs/package-list new file mode 100644 index 000000000..9118c9a96 --- /dev/null +++ b/css/dependency-check-cli/apidocs/package-list @@ -0,0 +1,2 @@ +org.owasp.dependencycheck +org.owasp.dependencycheck.cli diff --git a/css/dependency-check-cli/apidocs/resources/inherit.gif b/css/dependency-check-cli/apidocs/resources/inherit.gif new file mode 100644 index 0000000000000000000000000000000000000000..c814867a13deb0ca7ea2156c6ca1d5a03372af7e GIT binary patch literal 57 zcmZ?wbhEHbIIT!9-C*e{wE9>Kx3D)-;0v)C; KYxQGgum%9JOA&7X literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/apidocs/stylesheet.css b/css/dependency-check-cli/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/css/dependency-check-cli/apidocs/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF; color:#000000 } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */ +.TableRowColor { background: #FFFFFF; color:#000000 } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} + diff --git a/css/dependency-check-cli/arguments.html b/css/dependency-check-cli/arguments.html new file mode 100644 index 000000000..c420d48ba --- /dev/null +++ b/css/dependency-check-cli/arguments.html @@ -0,0 +1,370 @@ + + + + + + + + + dependency-check-cli - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    Command Line Arguments

    +

    The following table lists the command line arguments:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Short Argument Name Parameter Description Requirement
    -a --app <name> The name of the application being scanned. This is a required argument.
    -c --connectiontimeout <timeout> The connection timeout (in milliseconds) to use when downloading resources. Optional
    -d --data <path> The location of the data directory used to store persistent data. This option should generally not be set. Optional
    -f --format <format> The output format to write to (XML, HTML, VULN, ALL). The default is HTML.
    -h --help Print the help message. Optional
    -l --log <file> The file path to write verbose logging information. Optional
    -n --noupdate Disables the automatic updating of the CPE data. Optional
    -o --out <folder> The folder to write reports to. This defaults to the current directory. Optional
    -p --proxyport <port> The proxy port to use when downloading resources. Optional
    -pp --proxypass <pass> The proxy password to use when downloading resources. Optional
    -pu --proxyuser <user> The proxy username to use when downloading resources. Optional
    -s --scan <path> The path to scan - this option can be specified multiple times.
    -sf --suppression <file> The file path to the suppression XML file. Optional
    -u --proxyurl <url> The proxy url to use when downloading resources. Optional
    -v --version Print the version information. Optional
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/checkstyle.html b/css/dependency-check-cli/checkstyle.html new file mode 100644 index 000000000..c8c97861e --- /dev/null +++ b/css/dependency-check-cli/checkstyle.html @@ -0,0 +1,303 @@ + + + + + + + + + dependency-check-cli - Checkstyle Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Checkstyle Results

    +

    The following document contains the results of Checkstylerss feed

    +
    +

    Summary

    + + + + + + + + + + +
    FilesInfos InfosWarnings WarningsErrors Errors
    14002
    + +
    +

    Details

    +
    +

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

    + + + + + + + + +
    ViolationMessageLine
    ErrorsMore than 7 parameters (found 9).156
    +
    +

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

    + + + + + + + + +
    ViolationMessageLine
    ErrorsLine is longer than 150 characters (found 160).103
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/checkstyle.rss b/css/dependency-check-cli/checkstyle.rss new file mode 100644 index 000000000..7f949f748 --- /dev/null +++ b/css/dependency-check-cli/checkstyle.rss @@ -0,0 +1,233 @@ + + + + + Dependency-Check Command Line - Checkstyle report + https://github.com/jeremylong/DependencyCheck.git/dependency-check-cli + Dependency-Check Command Line - Checkstyle report + en-us + ©2012 - 2013 OWASP + + File: 14, + Errors: 2, + Warnings: 0, + Infos: 0 + + https://github.com/jeremylong/DependencyCheck.git/dependency-check-cli/checkstyle.html + +

    Click here for the full Checkstyle report.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    FilesIWE
    + org/owasp/dependencycheck/App.java + + 0 + + 0 + + 0 +
    + target/classes/log.properties + + 0 + + 0 + + 0 +
    + src/main/java/org/owasp/dependencycheck/cli/CliParser.java + + 0 + + 0 + + 1 +
    + src/main/java/org/owasp/dependencycheck/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/cli/package-info.java + + 0 + + 0 + + 0 +
    + target/maven-archiver/pom.properties + + 0 + + 0 + + 0 +
    + src/main/java/org/owasp/dependencycheck/App.java + + 0 + + 0 + + 1 +
    + src/main/resources/log.properties + + 0 + + 0 + + 0 +
    + target/generated-classes/cobertura/cobertura.properties + + 0 + + 0 + + 0 +
    + log.properties + + 0 + + 0 + + 0 +
    + target/generated-classes/cobertura/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/cli/CliParser.java + + 0 + + 0 + + 0 +
    + src/main/java/org/owasp/dependencycheck/cli/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/package-info.java + + 0 + + 0 + + 0 +
    + +
    +
    +
    +
    + diff --git a/css/dependency-check-cli/cobertura/css/help.css b/css/dependency-check-cli/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/css/dependency-check-cli/cobertura/css/help.css @@ -0,0 +1,22 @@ +dl { + float: left; + width: 100%; +} + +dt { + border-top: 1px solid #808080; + float: left; + font-weight: bold; + margin: 0; + padding: 1em; + width: 20%; +} + +dd { + border-top: 1px solid #808080; + float: left; + font-style: italic; + margin: 0; + padding: 1em; + width: 60%; +} diff --git a/css/dependency-check-cli/cobertura/css/main.css b/css/dependency-check-cli/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/css/dependency-check-cli/cobertura/css/main.css @@ -0,0 +1,131 @@ +@import url("help.css"); +@import url("source-viewer.css"); +@import url("tooltip.css"); + +.hidden { + display: none; +} + +a.dfn { + border-bottom: 1px dotted #00aa00; + cursor: help; +} + +a.dfn:active, a.dfn:link, a.dfn:visited { + color: #000000; + text-decoration: none; +} + +a.dfn:hover { + color: #0000ff; + text-decoration: none; +} + +body { + font-family: verdana, arial, helvetica; +} + +h1, h2, h3, h4, h5, h6 { + margin-bottom: 0.5em; +} + +h5 { + margin-top: 0.5em; +} + +div.footer { + font-size: 68%; + margin-top: 1.5em; +} + +div.percentgraph +{ + background-color: #f02020; + border: #808080 1px solid; + height: 1.3em; + margin: 0px; + padding: 0px; + width: 100px; +} + +div.percentgraph div.greenbar +{ + background-color: #00f000; + height: 1.3em; + margin: 0px; + padding: 0px; +} + +div.percentgraph div.na +{ + background-color: #eaeaea; + height: 1.3em; + margin: 0px; + padding: 0px; +} + +div.percentgraph span.text +{ + display: block; + position: absolute; + text-align: center; + width: 100px; +} + +div.separator { + height: 10px; +} + +table tr td, table tr th { + font-size: 68%; +} + +td.value table tr td { + font-size: 11px; +} + +table.percentgraph { + border: 0px; + font-size: 130%; + margin: 0px; + margin-left: auto; + margin-right: 0px; + padding: 0px; +} + +table.percentgraph tr.percentgraph { + border: 0px; + margin: 0px; + padding: 0px; +} + +table.percentgraph td.percentgraph { + border: 0px; + margin: 0px; + padding: 0px; + padding-left: 4px; +} + +table.report { + border-collapse: collapse; + width: 100%; +} + +table.report td { + border: #d0d0d0 1px solid; +} + +table.report td.heading { + background: #dcecff; + font-weight: bold; + text-align: center; +} + +table.report td.heading:hover { + background: #c0ffc0; + cursor: pointer; +} + +table.report td.value { + text-align: right; +} diff --git a/css/dependency-check-cli/cobertura/css/sortabletable.css b/css/dependency-check-cli/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/css/dependency-check-cli/cobertura/css/sortabletable.css @@ -0,0 +1,50 @@ +.sort-table { + font: Icon; + border: 1px Solid ThreeDShadow; + background: Window; + color: WindowText; +} + +.sort-table thead { + background: ButtonFace; +} + +.sort-table td { + padding: 2px 5px; +} + +.sort-table thead td { + border: 1px solid; + border-color: ButtonHighlight ButtonShadow + ButtonShadow ButtonHighlight; + cursor: default; +} + +.sort-table thead td:active { + border-color: ButtonShadow ButtonHighlight + ButtonHighlight ButtonShadow; + padding: 3px 4px 1px 6px; +} + +.sort-table thead td[_sortType=None]:active { + border-color: ButtonHighlight ButtonShadow + ButtonShadow ButtonHighlight; + padding: 2px 5px; +} + +.sort-arrow { + width: 11px; + height: 11px; + background-position: center center; + background-repeat: no-repeat; + margin: 0 2px; +} + +.sort-arrow.descending { + background-image: url("../images/downsimple.png"); + +} + +.sort-arrow.ascending { + background-image: url("../images/upsimple.png"); +} \ No newline at end of file diff --git a/css/dependency-check-cli/cobertura/css/source-viewer.css b/css/dependency-check-cli/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/css/dependency-check-cli/cobertura/css/source-viewer.css @@ -0,0 +1,73 @@ +pre.src { + background: #ffffff; + margin-top: 0px; + margin-bottom: 0px; +} + +table.src { + border: #dcdcdc 1px solid; + font-size: 16px; +} + +td.numLine { + background: #f0f0f0; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.numLineCover { + background: #80ff80; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHits { + background: #f0f0f0; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHitsCovered { + background: #80ff80; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHitsUncovered { + background: #ff9090; + border-right: #dcdcdc 1px solid; + font-weight: bold; + padding-right: 3px; + text-align: right; +} + +td.src { + width: 100%; +} + +span.comment { + color: #b22222; + font-style: italic; +} + +span.keyword { + color: #2020bf; + font-weight: bold; +} + +span.srcUncovered { + background: #ff9090; +} + +span.string { + color: #2a00ff; +} + +span.text_italic { + font-size: 12px; + font-style: italic; +} diff --git a/css/dependency-check-cli/cobertura/css/tooltip.css b/css/dependency-check-cli/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/css/dependency-check-cli/cobertura/css/tooltip.css @@ -0,0 +1,49 @@ +a.hastooltip { + border-bottom: 1px dotted #00aa00; + color: #000000; + cursor: help; + font-style: normal; + position: relative; /* This is the key */ + text-decoration: none; + z-index: 24; /* What does this do? */ +} + +a.hastooltip:active { + color: #000000; + text-decoration: none; +} + +a.hastooltip:link { + color: #000000; + text-decoration: none; +} + +a.hastooltip:hover { + background-color: #a0b8ff; + color: #000000; + text-decoration: none; + z-index: 25; +} + +a.hastooltip:visited { + color: #000000; + text-decoration: none; +} + +a.hastooltip span { + display: none; +} + +a.hastooltip:hover span { + background-color: #eeeeee; + border: 1px solid #000000; + color: #000000; + display: block; + padding: 5px; + left: -15.2em; + position: absolute; + text-align: center; + text-decoration: none; + top: 2em; + width: 20em; +} diff --git a/css/dependency-check-cli/cobertura/frame-packages.html b/css/dependency-check-cli/cobertura/frame-packages.html new file mode 100644 index 000000000..e518462f8 --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-packages.html @@ -0,0 +1,23 @@ + + + + +Coverage Report + + + +
    Packages
    + + + + + + + + + + +
    All
    org.owasp.dependencycheck
    org.owasp.dependencycheck.cli
    + + diff --git a/css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html b/css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html new file mode 100644 index 000000000..d8822950c --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.cli +
    +
     
    +
    Classes
    + + + + + + +
    CliParser (76%)
    + + diff --git a/css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html b/css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html new file mode 100644 index 000000000..4ff3fa1b8 --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck +
    +
     
    +
    Classes
    + + + + + + +
    App (0%)
    + + diff --git a/css/dependency-check-cli/cobertura/frame-sourcefiles.html b/css/dependency-check-cli/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..7b4e2c99b --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-sourcefiles.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +All Packages +
    +
     
    +
    Classes
    + + + + + + + + + +
    App (0%)
    CliParser (76%)
    + + diff --git a/css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html b/css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html new file mode 100644 index 000000000..753a9a1b4 --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html @@ -0,0 +1,43 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.cli
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.cli2
    76%
    73/96
    71%
    23/32
    1.68
    + +
     
    + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CliParser
    76%
    73/95
    71%
    23/32
    1.68
    CliParser$ArgumentName
    0%
    0/1
    N/A
    1.68
    + + + + diff --git a/css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html b/css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html new file mode 100644 index 000000000..1fe1d6dd7 --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html @@ -0,0 +1,43 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck
    +
     
    + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck1
    0%
    0/75
    0%
    0/36
    7.5
    org.owasp.dependencycheck.cli2
    76%
    73/96
    71%
    23/32
    1.68
    + +
     
    + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    App
    0%
    0/75
    0%
    0/36
    7.5
    + + + + diff --git a/css/dependency-check-cli/cobertura/frame-summary.html b/css/dependency-check-cli/cobertura/frame-summary.html new file mode 100644 index 000000000..009656633 --- /dev/null +++ b/css/dependency-check-cli/cobertura/frame-summary.html @@ -0,0 +1,31 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - All Packages
    +
     
    + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages3
    42%
    73/171
    33%
    23/68
    2.483
    org.owasp.dependencycheck1
    0%
    0/75
    0%
    0/36
    7.5
    org.owasp.dependencycheck.cli2
    76%
    73/96
    71%
    23/32
    1.68
    + + + + diff --git a/css/dependency-check-cli/cobertura/help.html b/css/dependency-check-cli/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/css/dependency-check-cli/cobertura/help.html @@ -0,0 +1,31 @@ + + + + + + +Coverage Report - Help + + + + +
    + +
    Line Coverage
    +
    The percent of lines executed by this test run.
    + +
    Branch Coverage
    +
    The percent of branches executed by this test run.
    + +
    Complexity
    +
    Average McCabe's cyclomatic code complexity for all methods. This is basically a count of the number of different code paths in a method (incremented by 1 for each if statement, while loop, etc.)
    + +
    N/A
    +
    Line coverage and branch coverage will appear as "Not Applicable" when Cobertura can not find line number information in the .class file. This happens for stub and skeleton classes, interfaces, or when the class was not compiled with "debug=true."
    + +
    + + + + diff --git a/css/dependency-check-cli/cobertura/images/blank.png b/css/dependency-check-cli/cobertura/images/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..cee9cd37a10ebe8d7fe6a6ed0d8d74a2889f6e9f GIT binary patch literal 144 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*$P6UUaa~gcQtTz3zOL*Scz7A*wL3%Pb^(Pr z3p^r=85p=efH0%e8j~47LAC&&5LY1m|NsA`H|O64vY1MO{DS{8Jl$^K1?2I2x;TbZ j+)DoO|34!$s|3ToYTbu_uiJV9r5HS2{an^LB{Ts5Dp4nx literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/cobertura/images/downsimple.png b/css/dependency-check-cli/cobertura/images/downsimple.png new file mode 100644 index 0000000000000000000000000000000000000000..4accf927bed9f998040ada65a35695bb758c78f1 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^96-#@!3-ps+W+JLDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5XI0Jk_T>t<7-_p_onv&0MrCXRCq913h|0^A-< nECO>F1soiX9N|!6VB%rmQep^;zw7l7Xas|&tDnm{r-UW|t_U_c literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/cobertura/images/upsimple.png b/css/dependency-check-cli/cobertura/images/upsimple.png new file mode 100644 index 0000000000000000000000000000000000000000..c82b76ffe2c9d41a2f38a1c1115013cc0852f522 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^96-#@!3-ps+W+JLDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5XI0Jk_Tw7XN{{R0EFVdQ&MBb@01yl}4*&oF literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/cobertura/index.html b/css/dependency-check-cli/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/css/dependency-check-cli/cobertura/index.html @@ -0,0 +1,25 @@ + + + + + +Coverage Report + + + + + + + + + + + <body> + <p>This document is designed to be viewed using the frames feature. If you see this message, you are using a frame-incapable web client.</p> + <p><a href="frame-summary.html">Click here to view a non-frame version.</a></p> + </body> + + + + diff --git a/css/dependency-check-cli/cobertura/js/customsorttypes.js b/css/dependency-check-cli/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/css/dependency-check-cli/cobertura/js/customsorttypes.js @@ -0,0 +1,65 @@ +/* + * Cobertura - http://cobertura.sourceforge.net/ + * + * Copyright (C) 2005 Mark Doliner + * Copyright (C) 2005 Olivier Parent + * + * Cobertura is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, + * or (at your option) any later version. + * + * Cobertura is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Cobertura; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +function percentageSortType( s ) +{ + var ret; + var i = s.indexOf( "%" ); + + if (i != -1) { + s = s.substr( 0, i ); + } + ret = parseFloat(s); + if (isNaN(ret)) { + ret = -1; + } + + return ret; +} + +SortableTable.prototype.addSortType( "Percentage", percentageSortType ); + + + +// This is needed for correctly sorting numbers in different +// locales. The stock number converter only expects to sort +// numbers which use a period as a separator instead of a +// comma (like French). +function formattedNumberSortType( s ) +{ + var ret; + var i = s.indexOf(';'); + + if (i != -1) { + s = s.substring(0, i); + } + ret = parseFloat(s); + if (isNaN(ret)) { + return -1; + } + + return ret; +} + +SortableTable.prototype.addSortType( "FormattedNumber", formattedNumberSortType ); diff --git a/css/dependency-check-cli/cobertura/js/popup.js b/css/dependency-check-cli/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/css/dependency-check-cli/cobertura/js/popup.js @@ -0,0 +1,8 @@ +var newwindow; +function popupwindow(url) +{ + newwindow=window.open(url,'name','height=500,width=500,resizable=yes,scrollbars=yes'); + if (window.focus) { + newwindow.focus() + } +} diff --git a/css/dependency-check-cli/cobertura/js/sortabletable.js b/css/dependency-check-cli/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/css/dependency-check-cli/cobertura/js/sortabletable.js @@ -0,0 +1,455 @@ + +/*----------------------------------------------------------------------------\ +| Sortable Table 1.12 | +|-----------------------------------------------------------------------------| +| Created by Erik Arvidsson | +| (http://webfx.eae.net/contact.html#erik) | +| For WebFX (http://webfx.eae.net/) | +|-----------------------------------------------------------------------------| +| A DOM 1 based script that allows an ordinary HTML table to be sortable. | +|-----------------------------------------------------------------------------| +| Copyright (c) 1998 - 2004 Erik Arvidsson | +|-----------------------------------------------------------------------------| +| This software is provided "as is", without warranty of any kind, express or | +| implied, including but not limited to the warranties of merchantability, | +| fitness for a particular purpose and noninfringement. In no event shall the | +| authors or copyright holders be liable for any claim, damages or other | +| liability, whether in an action of contract, tort or otherwise, arising | +| from, out of or in connection with the software or the use or other | +| dealings in the software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| This software is available under the three different licenses mentioned | +| below. To use this software you must chose, and qualify, for one of those. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Non-Commercial License http://webfx.eae.net/license.html | +| Permits anyone the right to use the software in a non-commercial context | +| free of charge. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Commercial license http://webfx.eae.net/commercial.html | +| Permits the license holder the right to use the software in a commercial | +| context. Such license must be specifically obtained, however it's valid for | +| any number of implementations of the licensed software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| GPL - The GNU General Public License http://www.gnu.org/licenses/gpl.txt | +| Permits anyone the right to use and modify the software without limitations | +| as long as proper credits are given and the original and modified source | +| code are included. Requires that the final product, software derivate from | +| the original source or any software utilizing a GPL component, such as | +| this, is also licensed under the GPL license. | +|-----------------------------------------------------------------------------| +| 2003-01-10 | First version | +| 2003-01-19 | Minor changes to the date parsing | +| 2003-01-28 | JScript 5.0 fixes (no support for 'in' operator) | +| 2003-02-01 | Sloppy typo like error fixed in getInnerText | +| 2003-07-04 | Added workaround for IE cellIndex bug. | +| 2003-11-09 | The bDescending argument to sort was not correctly working | +| | Using onclick DOM0 event if no support for addEventListener | +| | or attachEvent | +| 2004-01-13 | Adding addSortType and removeSortType which makes it a lot | +| | easier to add new, custom sort types. | +| 2004-01-27 | Switch to use descending = false as the default sort order. | +| | Change defaultDescending to suit your needs. | +| 2004-03-14 | Improved sort type None look and feel a bit | +| 2004-08-26 | Made the handling of tBody and tHead more flexible. Now you | +| | can use another tHead or no tHead, and you can chose some | +| | other tBody. | +|-----------------------------------------------------------------------------| +| Created 2003-01-10 | All changes are in the log above. | Updated 2004-08-26 | +\----------------------------------------------------------------------------*/ + + +function SortableTable(oTable, oSortTypes) { + + this.sortTypes = oSortTypes || []; + + this.sortColumn = null; + this.descending = null; + + var oThis = this; + this._headerOnclick = function (e) { + oThis.headerOnclick(e); + }; + + if (oTable) { + this.setTable( oTable ); + this.document = oTable.ownerDocument || oTable.document; + } + else { + this.document = document; + } + + + // only IE needs this + var win = this.document.defaultView || this.document.parentWindow; + this._onunload = function () { + oThis.destroy(); + }; + if (win && typeof win.attachEvent != "undefined") { + win.attachEvent("onunload", this._onunload); + } +} + +SortableTable.gecko = navigator.product == "Gecko"; +SortableTable.msie = /msie/i.test(navigator.userAgent); +// Mozilla is faster when doing the DOM manipulations on +// an orphaned element. MSIE is not +SortableTable.removeBeforeSort = SortableTable.gecko; + +SortableTable.prototype.onsort = function () {}; + +// default sort order. true -> descending, false -> ascending +SortableTable.prototype.defaultDescending = false; + +// shared between all instances. This is intentional to allow external files +// to modify the prototype +SortableTable.prototype._sortTypeInfo = {}; + +SortableTable.prototype.setTable = function (oTable) { + if ( this.tHead ) + this.uninitHeader(); + this.element = oTable; + this.setTHead( oTable.tHead ); + this.setTBody( oTable.tBodies[0] ); +}; + +SortableTable.prototype.setTHead = function (oTHead) { + if (this.tHead && this.tHead != oTHead ) + this.uninitHeader(); + this.tHead = oTHead; + this.initHeader( this.sortTypes ); +}; + +SortableTable.prototype.setTBody = function (oTBody) { + this.tBody = oTBody; +}; + +SortableTable.prototype.setSortTypes = function ( oSortTypes ) { + if ( this.tHead ) + this.uninitHeader(); + this.sortTypes = oSortTypes || []; + if ( this.tHead ) + this.initHeader( this.sortTypes ); +}; + +// adds arrow containers and events +// also binds sort type to the header cells so that reordering columns does +// not break the sort types +SortableTable.prototype.initHeader = function (oSortTypes) { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var doc = this.tHead.ownerDocument || this.tHead.document; + this.sortTypes = oSortTypes || []; + var l = cells.length; + var img, c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (this.sortTypes[i] != null && this.sortTypes[i] != "None") { + img = doc.createElement("IMG"); + img.src = "images/blank.png"; + c.appendChild(img); + if (this.sortTypes[i] != null) + c._sortType = this.sortTypes[i]; + if (typeof c.addEventListener != "undefined") + c.addEventListener("click", this._headerOnclick, false); + else if (typeof c.attachEvent != "undefined") + c.attachEvent("onclick", this._headerOnclick); + else + c.onclick = this._headerOnclick; + } + else + { + c.setAttribute( "_sortType", oSortTypes[i] ); + c._sortType = "None"; + } + } + this.updateHeaderArrows(); +}; + +// remove arrows and events +SortableTable.prototype.uninitHeader = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (c._sortType != null && c._sortType != "None") { + c.removeChild(c.lastChild); + if (typeof c.removeEventListener != "undefined") + c.removeEventListener("click", this._headerOnclick, false); + else if (typeof c.detachEvent != "undefined") + c.detachEvent("onclick", this._headerOnclick); + c._sortType = null; + c.removeAttribute( "_sortType" ); + } + } +}; + +SortableTable.prototype.updateHeaderArrows = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var img; + for (var i = 0; i < l; i++) { + if (cells[i]._sortType != null && cells[i]._sortType != "None") { + img = cells[i].lastChild; + if (i == this.sortColumn) + img.className = "sort-arrow " + (this.descending ? "descending" : "ascending"); + else + img.className = "sort-arrow"; + } + } +}; + +SortableTable.prototype.headerOnclick = function (e) { + // find TD element + var el = e.target || e.srcElement; + while (el.tagName != "TD") + el = el.parentNode; + + this.sort(SortableTable.msie ? SortableTable.getCellIndex(el) : el.cellIndex); +}; + +// IE returns wrong cellIndex when columns are hidden +SortableTable.getCellIndex = function (oTd) { + var cells = oTd.parentNode.childNodes + var l = cells.length; + var i; + for (i = 0; cells[i] != oTd && i < l; i++) + ; + return i; +}; + +SortableTable.prototype.getSortType = function (nColumn) { + return this.sortTypes[nColumn] || "String"; +}; + +// only nColumn is required +// if bDescending is left out the old value is taken into account +// if sSortType is left out the sort type is found from the sortTypes array + +SortableTable.prototype.sort = function (nColumn, bDescending, sSortType) { + if (!this.tBody) return; + if (sSortType == null) + sSortType = this.getSortType(nColumn); + + // exit if None + if (sSortType == "None") + return; + + if (bDescending == null) { + if (this.sortColumn != nColumn) + this.descending = this.defaultDescending; + else + this.descending = !this.descending; + } + else + this.descending = bDescending; + + this.sortColumn = nColumn; + + if (typeof this.onbeforesort == "function") + this.onbeforesort(); + + var f = this.getSortFunction(sSortType, nColumn); + var a = this.getCache(sSortType, nColumn); + var tBody = this.tBody; + + a.sort(f); + + if (this.descending) + a.reverse(); + + if (SortableTable.removeBeforeSort) { + // remove from doc + var nextSibling = tBody.nextSibling; + var p = tBody.parentNode; + p.removeChild(tBody); + } + + // insert in the new order + var l = a.length; + for (var i = 0; i < l; i++) + tBody.appendChild(a[i].element); + + if (SortableTable.removeBeforeSort) { + // insert into doc + p.insertBefore(tBody, nextSibling); + } + + this.updateHeaderArrows(); + + this.destroyCache(a); + + if (typeof this.onsort == "function") + this.onsort(); +}; + +SortableTable.prototype.asyncSort = function (nColumn, bDescending, sSortType) { + var oThis = this; + this._asyncsort = function () { + oThis.sort(nColumn, bDescending, sSortType); + }; + window.setTimeout(this._asyncsort, 1); +}; + +SortableTable.prototype.getCache = function (sType, nColumn) { + if (!this.tBody) return []; + var rows = this.tBody.rows; + var l = rows.length; + var a = new Array(l); + var r; + for (var i = 0; i < l; i++) { + r = rows[i]; + a[i] = { + value: this.getRowValue(r, sType, nColumn), + element: r + }; + }; + return a; +}; + +SortableTable.prototype.destroyCache = function (oArray) { + var l = oArray.length; + for (var i = 0; i < l; i++) { + oArray[i].value = null; + oArray[i].element = null; + oArray[i] = null; + } +}; + +SortableTable.prototype.getRowValue = function (oRow, sType, nColumn) { + // if we have defined a custom getRowValue use that + if (this._sortTypeInfo[sType] && this._sortTypeInfo[sType].getRowValue) + return this._sortTypeInfo[sType].getRowValue(oRow, nColumn); + + var s; + var c = oRow.cells[nColumn]; + if (typeof c.innerText != "undefined") + s = c.innerText; + else + s = SortableTable.getInnerText(c); + return this.getValueFromString(s, sType); +}; + +SortableTable.getInnerText = function (oNode) { + var s = ""; + var cs = oNode.childNodes; + var l = cs.length; + for (var i = 0; i < l; i++) { + switch (cs[i].nodeType) { + case 1: //ELEMENT_NODE + s += SortableTable.getInnerText(cs[i]); + break; + case 3: //TEXT_NODE + s += cs[i].nodeValue; + break; + } + } + return s; +}; + +SortableTable.prototype.getValueFromString = function (sText, sType) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].getValueFromString( sText ); + return sText; + /* + switch (sType) { + case "Number": + return Number(sText); + case "CaseInsensitiveString": + return sText.toUpperCase(); + case "Date": + var parts = sText.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); + } + return sText; + */ + }; + +SortableTable.prototype.getSortFunction = function (sType, nColumn) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].compare; + return SortableTable.basicCompare; +}; + +SortableTable.prototype.destroy = function () { + this.uninitHeader(); + var win = this.document.parentWindow; + if (win && typeof win.detachEvent != "undefined") { // only IE needs this + win.detachEvent("onunload", this._onunload); + } + this._onunload = null; + this.element = null; + this.tHead = null; + this.tBody = null; + this.document = null; + this._headerOnclick = null; + this.sortTypes = null; + this._asyncsort = null; + this.onsort = null; +}; + +// Adds a sort type to all instance of SortableTable +// sType : String - the identifier of the sort type +// fGetValueFromString : function ( s : string ) : T - A function that takes a +// string and casts it to a desired format. If left out the string is just +// returned +// fCompareFunction : function ( n1 : T, n2 : T ) : Number - A normal JS sort +// compare function. Takes two values and compares them. If left out less than, +// <, compare is used +// fGetRowValue : function( oRow : HTMLTRElement, nColumn : int ) : T - A function +// that takes the row and the column index and returns the value used to compare. +// If left out then the innerText is first taken for the cell and then the +// fGetValueFromString is used to convert that string the desired value and type + +SortableTable.prototype.addSortType = function (sType, fGetValueFromString, fCompareFunction, fGetRowValue) { + this._sortTypeInfo[sType] = { + type: sType, + getValueFromString: fGetValueFromString || SortableTable.idFunction, + compare: fCompareFunction || SortableTable.basicCompare, + getRowValue: fGetRowValue + }; +}; + +// this removes the sort type from all instances of SortableTable +SortableTable.prototype.removeSortType = function (sType) { + delete this._sortTypeInfo[sType]; +}; + +SortableTable.basicCompare = function compare(n1, n2) { + if (n1.value < n2.value) + return -1; + if (n2.value < n1.value) + return 1; + return 0; +}; + +SortableTable.idFunction = function (x) { + return x; +}; + +SortableTable.toUpperCase = function (s) { + return s.toUpperCase(); +}; + +SortableTable.toDate = function (s) { + var parts = s.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); +}; + + +// add sort types +SortableTable.prototype.addSortType("Number", Number); +SortableTable.prototype.addSortType("CaseInsensitiveString", SortableTable.toUpperCase); +SortableTable.prototype.addSortType("Date", SortableTable.toDate); +SortableTable.prototype.addSortType("String"); +// None is a special case diff --git a/css/dependency-check-cli/cobertura/js/stringbuilder.js b/css/dependency-check-cli/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/css/dependency-check-cli/cobertura/js/stringbuilder.js @@ -0,0 +1,79 @@ +/*----------------------------------------------------------------------------\ +| String Builder 1.02 | +|-----------------------------------------------------------------------------| +| Created by Erik Arvidsson | +| (http://webfx.eae.net/contact.html#erik) | +| For WebFX (http://webfx.eae.net/) | +|-----------------------------------------------------------------------------| +| A class that allows more efficient building of strings than concatenation. | +|-----------------------------------------------------------------------------| +| Copyright (c) 1999 - 2002 Erik Arvidsson | +|-----------------------------------------------------------------------------| +| This software is provided "as is", without warranty of any kind, express or | +| implied, including but not limited to the warranties of merchantability, | +| fitness for a particular purpose and noninfringement. In no event shall the | +| authors or copyright holders be liable for any claim, damages or other | +| liability, whether in an action of contract, tort or otherwise, arising | +| from, out of or in connection with the software or the use or other | +| dealings in the software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| This software is available under the three different licenses mentioned | +| below. To use this software you must chose, and qualify, for one of those. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Non-Commercial License http://webfx.eae.net/license.html | +| Permits anyone the right to use the software in a non-commercial context | +| free of charge. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Commercial license http://webfx.eae.net/commercial.html | +| Permits the license holder the right to use the software in a commercial | +| context. Such license must be specifically obtained, however it's valid for | +| any number of implementations of the licensed software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| GPL - The GNU General Public License http://www.gnu.org/licenses/gpl.txt | +| Permits anyone the right to use and modify the software without limitations | +| as long as proper credits are given and the original and modified source | +| code are included. Requires that the final product, software derivate from | +| the original source or any software utilizing a GPL component, such as | +| this, is also licensed under the GPL license. | +|-----------------------------------------------------------------------------| +| 2000-10-02 | First version | +| 2000-10-05 | Added a cache of the string so that it does not need to be | +| | regenerated every time in toString | +| 2002-10-03 | Added minor improvement in the toString method | +|-----------------------------------------------------------------------------| +| Created 2000-10-02 | All changes are in the log above. | Updated 2002-10-03 | +\----------------------------------------------------------------------------*/ function StringBuilder(sString) { + + // public + this.length = 0; + + this.append = function (sString) { + // append argument + this.length += (this._parts[this._current++] = String(sString)).length; + + // reset cache + this._string = null; + return this; + }; + + this.toString = function () { + if (this._string != null) + return this._string; + + var s = this._parts.join(""); + this._parts = [s]; + this._current = 1; + this.length = s.length; + + return this._string = s; + }; + + // private + this._current = 0; + this._parts = []; + this._string = null; // used to cache the string + + // init + if (sString != null) + this.append(sString); +} diff --git a/css/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html b/css/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html new file mode 100644 index 000000000..c302d863d --- /dev/null +++ b/css/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html @@ -0,0 +1,359 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.App
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    App
    0%
    0/75
    0%
    0/36
    7.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-cli.
     3  
      *
     4  
      * Dependency-check-cli is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-cli is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-cli. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileNotFoundException;
     23  
     import java.io.IOException;
     24  
     import java.io.InputStream;
     25  
     import java.util.List;
     26  
     import java.util.logging.Level;
     27  
     import java.util.logging.Logger;
     28  
     import org.apache.commons.cli.ParseException;
     29  
     import org.owasp.dependencycheck.reporting.ReportGenerator;
     30  
     import org.owasp.dependencycheck.dependency.Dependency;
     31  
     import org.owasp.dependencycheck.cli.CliParser;
     32  
     import org.owasp.dependencycheck.utils.LogUtils;
     33  
     import org.owasp.dependencycheck.utils.Settings;
     34  
     
     35  
     /*
     36  
      * This file is part of App.
     37  
      *
     38  
      * App is free software: you can redistribute it and/or modify it under the
     39  
      * terms of the GNU General Public License as published by the Free Software
     40  
      * Foundation, either version 3 of the License, or (at your option) any later
     41  
      * version.
     42  
      *
     43  
      * App is distributed in the hope that it will be useful, but WITHOUT ANY
     44  
      * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
     45  
      * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
     46  
      *
     47  
      * You should have received a copy of the GNU General Public License along with
     48  
      * App. If not, see http://www.gnu.org/licenses/.
     49  
      *
     50  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     51  
      */
     52  
     /**
     53  
      * The command line interface for the DependencyCheck application.
     54  
      *
     55  
      * @author Jeremy Long (jeremy.long@owasp.org)
     56  
      */
     57  0
     public class App {
     58  
     
     59  
         /**
     60  
          * The location of the log properties configuration file.
     61  
          */
     62  
         private static final String LOG_PROPERTIES_FILE = "log.properties";
     63  
     
     64  
         /**
     65  
          * The main method for the application.
     66  
          *
     67  
          * @param args the command line arguments
     68  
          */
     69  
         public static void main(String[] args) {
     70  0
             final App app = new App();
     71  0
             app.run(args);
     72  0
         }
     73  
     
     74  
         /**
     75  
          * Main CLI entry-point into the application.
     76  
          *
     77  
          * @param args the command line arguments
     78  
          */
     79  
         public void run(String[] args) {
     80  
     
     81  0
             final CliParser cli = new CliParser();
     82  
             try {
     83  0
                 cli.parse(args);
     84  0
             } catch (FileNotFoundException ex) {
     85  0
                 System.err.println(ex.getMessage());
     86  0
                 cli.printHelp();
     87  0
                 return;
     88  0
             } catch (ParseException ex) {
     89  0
                 System.err.println(ex.getMessage());
     90  0
                 cli.printHelp();
     91  0
                 return;
     92  0
             }
     93  
     
     94  0
             final InputStream in = App.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
     95  0
             LogUtils.prepareLogger(in, cli.getVerboseLog());
     96  
     
     97  0
             if (cli.isGetVersion()) {
     98  0
                 cli.printVersionInfo();
     99  0
             } else if (cli.isRunScan()) {
     100  0
                 updateSettings(cli.isAutoUpdate(), cli.getConnectionTimeout(), cli.getProxyUrl(),
     101  
                         cli.getProxyPort(), cli.getProxyUsername(), cli.getProxyPassword(),
     102  
                         cli.getDataDirectory(), cli.getPropertiesFile(), cli.getSuppressionFile());
     103  0
                 runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles());
     104  
             } else {
     105  0
                 cli.printHelp();
     106  
             }
     107  0
         }
     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  
          */
     119  
         private void runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) {
     120  0
             final Engine scanner = new Engine();
     121  
     
     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 proxyUser the proxy user name
     151  
          * @param proxyPass the password for the proxy
     152  
          * @param dataDirectory the directory to store/retrieve persistent data from
     153  
          * @param propertiesFile the properties file to utilize
     154  
          * @param suppressionFile the path to the suppression file
     155  
          */
     156  
         private void updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, String proxyPort,
     157  
                 String proxyUser, String proxyPass, String dataDirectory, File propertiesFile,
     158  
                 String suppressionFile) {
     159  
     
     160  0
             if (propertiesFile != null) {
     161  
                 try {
     162  0
                     Settings.mergeProperties(propertiesFile);
     163  0
                 } catch (FileNotFoundException ex) {
     164  0
                     final String msg = String.format("Unable to load 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
                 } catch (IOException ex) {
     168  0
                     final String msg = String.format("Unable to find properties file '%s'", propertiesFile.getPath());
     169  0
                     Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg);
     170  0
                     Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex);
     171  0
                 }
     172  
             }
     173  0
             if (dataDirectory != null) {
     174  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
     175  0
             } else if (System.getProperty("basedir") != null) {
     176  0
                 final File dataDir = new File(System.getProperty("basedir"), "data");
     177  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
     178  0
             } else {
     179  0
                 final File jarPath = new File(App.class.getProtectionDomain().getCodeSource().getLocation().getPath());
     180  0
                 final File base = jarPath.getParentFile();
     181  0
                 final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
     182  0
                 final File dataDir = new File(base, sub);
     183  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
     184  
             }
     185  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
     186  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
     187  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
     188  
             }
     189  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
     190  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
     191  
             }
     192  0
             if (proxyUser != null && !proxyUser.isEmpty()) {
     193  0
                 Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUser);
     194  
             }
     195  0
             if (proxyPass != null && !proxyPass.isEmpty()) {
     196  0
                 Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPass);
     197  
             }
     198  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
     199  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
     200  
             }
     201  0
             if (suppressionFile != null && !suppressionFile.isEmpty()) {
     202  0
                 Settings.setString(Settings.KEYS.SUPPRESSION_FILE, suppressionFile);
     203  
             }
     204  0
         }
     205  
     }
    + + + + diff --git a/css/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html b/css/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html new file mode 100644 index 000000000..2e035cff3 --- /dev/null +++ b/css/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html @@ -0,0 +1,1086 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.cli.CliParser
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CliParser
    76%
    73/95
    71%
    23/32
    1.68
    CliParser$ArgumentName
    0%
    0/1
    N/A
    1.68
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-cli.
     3  
      *
     4  
      * Dependency-check-cli is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-cli is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-cli. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.cli;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileNotFoundException;
     23  
     import org.apache.commons.cli.CommandLine;
     24  
     import org.apache.commons.cli.CommandLineParser;
     25  
     import org.apache.commons.cli.HelpFormatter;
     26  
     import org.apache.commons.cli.Option;
     27  
     import org.apache.commons.cli.OptionBuilder;
     28  
     import org.apache.commons.cli.OptionGroup;
     29  
     import org.apache.commons.cli.Options;
     30  
     import org.apache.commons.cli.ParseException;
     31  
     import org.apache.commons.cli.PosixParser;
     32  
     import org.owasp.dependencycheck.reporting.ReportGenerator.Format;
     33  
     import org.owasp.dependencycheck.utils.Settings;
     34  
     
     35  
     /**
     36  
      * A utility to parse command line arguments for the DependencyCheck.
     37  
      *
     38  
      * @author Jeremy Long (jeremy.long@owasp.org)
     39  
      */
     40  9
     public final class CliParser {
     41  
     
     42  
         /**
     43  
          * The command line.
     44  
          */
     45  
         private CommandLine line;
     46  
         /**
     47  
          * The options for the command line parser.
     48  
          */
     49  9
         private final Options options = createCommandLineOptions();
     50  
         /**
     51  
          * Indicates whether the arguments are valid.
     52  
          */
     53  9
         private boolean isValid = true;
     54  
     
     55  
         /**
     56  
          * Parses the arguments passed in and captures the results for later use.
     57  
          *
     58  
          * @param args the command line arguments
     59  
          * @throws FileNotFoundException is thrown when a 'file' argument does not
     60  
          * point to a file that exists.
     61  
          * @throws ParseException is thrown when a Parse Exception occurs.
     62  
          */
     63  
         public void parse(String[] args) throws FileNotFoundException, ParseException {
     64  9
             line = parseArgs(args);
     65  
     
     66  8
             if (line != null) {
     67  8
                 validateArgs();
     68  
             }
     69  7
         }
     70  
     
     71  
         /**
     72  
          * Parses the command line arguments.
     73  
          *
     74  
          * @param args the command line arguments
     75  
          * @return the results of parsing the command line arguments
     76  
          * @throws ParseException if the arguments are invalid
     77  
          */
     78  
         private CommandLine parseArgs(String[] args) throws ParseException {
     79  9
             final CommandLineParser parser = new PosixParser();
     80  9
             return parser.parse(options, args);
     81  
         }
     82  
     
     83  
         /**
     84  
          * Validates that the command line arguments are valid.
     85  
          *
     86  
          * @throws FileNotFoundException if there is a file specified by either the
     87  
          * SCAN or CPE command line arguments that does not exist.
     88  
          * @throws ParseException is thrown if there is an exception parsing the
     89  
          * command line.
     90  
          */
     91  
         private void validateArgs() throws FileNotFoundException, ParseException {
     92  8
             if (isRunScan()) {
     93  2
                 validatePathExists(getScanFiles(), "scan");
     94  1
                 validatePathExists(getReportDirectory(), "out");
     95  1
                 if (!line.hasOption(ArgumentName.APP_NAME)) {
     96  0
                     throw new ParseException("Missing 'app' argument; the scan cannot be run without the an application name.");
     97  
                 }
     98  1
                 if (line.hasOption(ArgumentName.OUTPUT_FORMAT)) {
     99  0
                     final String format = line.getOptionValue(ArgumentName.OUTPUT_FORMAT);
     100  
                     try {
     101  0
                         Format.valueOf(format);
     102  0
                     } catch (IllegalArgumentException ex) {
     103  0
                         final String msg = String.format("An invalid 'format' of '%s' was specified. Supported output formats are XML, HTML, VULN, or ALL", format);
     104  0
                         throw new ParseException(msg);
     105  0
                     }
     106  
                 }
     107  
             }
     108  7
         }
     109  
     
     110  
         /**
     111  
          * Validates whether or not the path(s) points at a file that exists; if the
     112  
          * path(s) does not point to an existing file a FileNotFoundException is
     113  
          * thrown.
     114  
          *
     115  
          * @param paths the paths to validate if they exists
     116  
          * @param optType the option being validated (e.g. scan, out, etc.)
     117  
          * @throws FileNotFoundException is thrown if one of the paths being
     118  
          * validated does not exist.
     119  
          */
     120  
         private void validatePathExists(String[] paths, String optType) throws FileNotFoundException {
     121  3
             for (String path : paths) {
     122  2
                 validatePathExists(path, optType);
     123  
             }
     124  1
         }
     125  
     
     126  
         /**
     127  
          * Validates whether or not the path points at a file that exists; if the
     128  
          * path does not point to an existing file a FileNotFoundException is
     129  
          * thrown.
     130  
          *
     131  
          * @param path the paths to validate if they exists
     132  
          * @param optType the option being validated (e.g. scan, out, etc.)
     133  
          * @throws FileNotFoundException is thrown if the path being validated does
     134  
          * not exist.
     135  
          */
     136  
         private void validatePathExists(String path, String optType) throws FileNotFoundException {
     137  3
             final File f = new File(path);
     138  3
             if (!f.exists()) {
     139  1
                 isValid = false;
     140  1
                 final String msg = String.format("Invalid '%s' argument: '%s'", optType, path);
     141  1
                 throw new FileNotFoundException(msg);
     142  
             }
     143  2
         }
     144  
     
     145  
         /**
     146  
          * Generates an Options collection that is used to parse the command line
     147  
          * and to display the help message.
     148  
          *
     149  
          * @return the command line options used for parsing the command line
     150  
          */
     151  
         @SuppressWarnings("static-access")
     152  
         private Options createCommandLineOptions() {
     153  9
             final Option help = new Option(ArgumentName.HELP_SHORT, ArgumentName.HELP, false,
     154  
                     "Print this message.");
     155  
     
     156  9
             final Option version = new Option(ArgumentName.VERSION_SHORT, ArgumentName.VERSION,
     157  
                     false, "Print the version information.");
     158  
     
     159  9
             final Option noUpdate = new Option(ArgumentName.DISABLE_AUTO_UPDATE_SHORT, ArgumentName.DISABLE_AUTO_UPDATE,
     160  
                     false, "Disables the automatic updating of the CPE data.");
     161  
     
     162  9
             final Option appName = OptionBuilder.withArgName("name").hasArg().withLongOpt(ArgumentName.APP_NAME)
     163  
                     .withDescription("The name of the application being scanned. This is a required argument.")
     164  
                     .create(ArgumentName.APP_NAME_SHORT);
     165  
     
     166  9
             final Option connectionTimeout = OptionBuilder.withArgName("timeout").hasArg().withLongOpt(ArgumentName.CONNECTION_TIMEOUT)
     167  
                     .withDescription("The connection timeout (in milliseconds) to use when downloading resources.")
     168  
                     .create(ArgumentName.CONNECTION_TIMEOUT_SHORT);
     169  
     
     170  9
             final Option proxyUrl = OptionBuilder.withArgName("url").hasArg().withLongOpt(ArgumentName.PROXY_URL)
     171  
                     .withDescription("The proxy url to use when downloading resources.")
     172  
                     .create(ArgumentName.PROXY_URL_SHORT);
     173  
     
     174  9
             final Option proxyPort = OptionBuilder.withArgName("port").hasArg().withLongOpt(ArgumentName.PROXY_PORT)
     175  
                     .withDescription("The proxy port to use when downloading resources.")
     176  
                     .create(ArgumentName.PROXY_PORT_SHORT);
     177  
     
     178  9
             final 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  
     
     182  9
             final 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  
     
     186  9
             final 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  
     
     190  9
             final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP)
     191  
                     .withDescription("A property file to load.")
     192  
                     .create(ArgumentName.PROP_SHORT);
     193  
     
     194  9
             final 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  
     
     198  9
             final 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  
     
     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  
     
     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  
     
     210  9
             final Option suppressionFile = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.SUPPRESION_FILE)
     211  
                     .withDescription("The file path to the suppression XML file.")
     212  
                     .create(ArgumentName.SUPPRESION_FILE_SHORT);
     213  
     
     214  
     
     215  9
             final OptionGroup og = new OptionGroup();
     216  9
             og.addOption(path);
     217  
     
     218  9
             final Options opts = new Options();
     219  9
             opts.addOptionGroup(og);
     220  9
             opts.addOption(out);
     221  9
             opts.addOption(outputFormat);
     222  9
             opts.addOption(appName);
     223  9
             opts.addOption(version);
     224  9
             opts.addOption(help);
     225  9
             opts.addOption(noUpdate);
     226  9
             opts.addOption(props);
     227  9
             opts.addOption(data);
     228  9
             opts.addOption(verboseLog);
     229  9
             opts.addOption(suppressionFile);
     230  9
             opts.addOption(proxyPort);
     231  9
             opts.addOption(proxyUrl);
     232  9
             opts.addOption(proxyUsername);
     233  9
             opts.addOption(proxyPassword);
     234  9
             opts.addOption(connectionTimeout);
     235  
     
     236  9
             return opts;
     237  
         }
     238  
     
     239  
         /**
     240  
          * Determines if the 'version' command line argument was passed in.
     241  
          *
     242  
          * @return whether or not the 'version' command line argument was passed in
     243  
          */
     244  
         public boolean isGetVersion() {
     245  7
             return (line != null) && line.hasOption(ArgumentName.VERSION);
     246  
         }
     247  
     
     248  
         /**
     249  
          * Determines if the 'help' command line argument was passed in.
     250  
          *
     251  
          * @return whether or not the 'help' command line argument was passed in
     252  
          */
     253  
         public boolean isGetHelp() {
     254  7
             return (line != null) && line.hasOption(ArgumentName.HELP);
     255  
         }
     256  
     
     257  
         /**
     258  
          * Determines if the 'scan' command line argument was passed in.
     259  
          *
     260  
          * @return whether or not the 'scan' command line argument was passed in
     261  
          */
     262  
         public boolean isRunScan() {
     263  15
             return (line != null) && isValid && line.hasOption(ArgumentName.SCAN);
     264  
         }
     265  
     
     266  
         /**
     267  
          * Displays the command line help message to the standard output.
     268  
          */
     269  
         public void printHelp() {
     270  2
             final HelpFormatter formatter = new HelpFormatter();
     271  2
             final String nl = System.getProperty("line.separator");
     272  
     
     273  2
             formatter.printHelp(Settings.getString("application.name", "DependencyCheck"),
     274  
                     nl + Settings.getString("application.name", "DependencyCheck")
     275  
                     + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. "
     276  
                     + Settings.getString("application.name", "DependencyCheck")
     277  
                     + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl,
     278  
                     options,
     279  
                     "",
     280  
                     true);
     281  2
         }
     282  
     
     283  
         /**
     284  
          * Retrieves the file command line parameter(s) specified for the 'scan'
     285  
          * argument.
     286  
          *
     287  
          * @return the file paths specified on the command line for scan
     288  
          */
     289  
         public String[] getScanFiles() {
     290  3
             return line.getOptionValues(ArgumentName.SCAN);
     291  
         }
     292  
     
     293  
         /**
     294  
          * Returns the directory to write the reports to specified on the command
     295  
          * line.
     296  
          *
     297  
          * @return the path to the reports directory.
     298  
          */
     299  
         public String getReportDirectory() {
     300  1
             return line.getOptionValue(ArgumentName.OUT, ".");
     301  
         }
     302  
     
     303  
         /**
     304  
          * Returns the output format specified on the command line. Defaults to HTML
     305  
          * if no format was specified.
     306  
          *
     307  
          * @return the output format name.
     308  
          */
     309  
         public String getReportFormat() {
     310  0
             return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML");
     311  
         }
     312  
     
     313  
         /**
     314  
          * Returns the application name specified on the command line.
     315  
          *
     316  
          * @return the application name.
     317  
          */
     318  
         public String getApplicationName() {
     319  0
             return line.getOptionValue(ArgumentName.APP_NAME);
     320  
         }
     321  
     
     322  
         /**
     323  
          * Returns the connection timeout.
     324  
          *
     325  
          * @return the connection timeout
     326  
          */
     327  
         public String getConnectionTimeout() {
     328  0
             return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT);
     329  
         }
     330  
     
     331  
         /**
     332  
          * Returns the proxy url.
     333  
          *
     334  
          * @return the proxy url
     335  
          */
     336  
         public String getProxyUrl() {
     337  0
             return line.getOptionValue(ArgumentName.PROXY_URL);
     338  
         }
     339  
     
     340  
         /**
     341  
          * Returns the proxy port.
     342  
          *
     343  
          * @return the proxy port
     344  
          */
     345  
         public String getProxyPort() {
     346  0
             return line.getOptionValue(ArgumentName.PROXY_PORT);
     347  
         }
     348  
     
     349  
         /**
     350  
          * Returns the proxy username.
     351  
          *
     352  
          * @return the proxy username
     353  
          */
     354  
         public String getProxyUsername() {
     355  0
             return line.getOptionValue(ArgumentName.PROXY_USERNAME);
     356  
         }
     357  
     
     358  
         /**
     359  
          * Returns the proxy password.
     360  
          *
     361  
          * @return the proxy password
     362  
          */
     363  
         public String getProxyPassword() {
     364  0
             return line.getOptionValue(ArgumentName.PROXY_PASSWORD);
     365  
         }
     366  
     
     367  
         /**
     368  
          * Get the value of dataDirectory.
     369  
          *
     370  
          * @return the value of dataDirectory
     371  
          */
     372  
         public String getDataDirectory() {
     373  0
             return line.getOptionValue(ArgumentName.DATA_DIRECTORY);
     374  
         }
     375  
     
     376  
         /**
     377  
          * Returns the properties file specified on the command line.
     378  
          *
     379  
          * @return the properties file specified on the command line
     380  
          */
     381  
         public File getPropertiesFile() {
     382  0
             final String path = line.getOptionValue(ArgumentName.PROP);
     383  0
             if (path != null) {
     384  0
                 return new File(path);
     385  
             }
     386  0
             return null;
     387  
         }
     388  
     
     389  
         /**
     390  
          * Returns the path to the verbose log file.
     391  
          *
     392  
          * @return the path to the verbose log file
     393  
          */
     394  
         public String getVerboseLog() {
     395  0
             return line.getOptionValue(ArgumentName.VERBOSE_LOG);
     396  
         }
     397  
     
     398  
         /**
     399  
          * Returns the path to the suppression file.
     400  
          *
     401  
          * @return the path to the suppression file
     402  
          */
     403  
         public String getSuppressionFile() {
     404  0
             return line.getOptionValue(ArgumentName.SUPPRESION_FILE);
     405  
         }
     406  
     
     407  
         /**
     408  
          * <p>Prints the manifest information to standard output.</p>
     409  
          * <ul><li>Implementation-Title: ${pom.name}</li>
     410  
          * <li>Implementation-Version: ${pom.version}</li></ul>
     411  
          */
     412  
         public void printVersionInfo() {
     413  1
             final String version = String.format("%s version %s",
     414  
                     Settings.getString("application.name", "DependencyCheck"),
     415  
                     Settings.getString("application.version", "Unknown"));
     416  1
             System.out.println(version);
     417  1
         }
     418  
     
     419  
         /**
     420  
          * Checks if the auto update feature has been disabled. If it has been
     421  
          * disabled via the command line this will return false.
     422  
          *
     423  
          * @return if auto-update is allowed.
     424  
          */
     425  
         public boolean isAutoUpdate() {
     426  0
             return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE);
     427  
         }
     428  
     
     429  
         /**
     430  
          * A collection of static final strings that represent the possible command
     431  
          * line arguments.
     432  
          */
     433  9
         public static class ArgumentName {
     434  
     
     435  
             /**
     436  
              * The long CLI argument name specifying the directory/file to scan.
     437  
              */
     438  
             public static final String SCAN = "scan";
     439  
             /**
     440  
              * The short CLI argument name specifying the directory/file to scan.
     441  
              */
     442  
             public static final String SCAN_SHORT = "s";
     443  
             /**
     444  
              * The long CLI argument name specifying that the CPE/CVE/etc. data
     445  
              * should not be automatically updated.
     446  
              */
     447  
             public static final String DISABLE_AUTO_UPDATE = "noupdate";
     448  
             /**
     449  
              * The short CLI argument name specifying that the CPE/CVE/etc. data
     450  
              * should not be automatically updated.
     451  
              */
     452  
             public static final String DISABLE_AUTO_UPDATE_SHORT = "n";
     453  
             /**
     454  
              * The long CLI argument name specifying the directory to write the
     455  
              * reports to.
     456  
              */
     457  
             public static final String OUT = "out";
     458  
             /**
     459  
              * The short CLI argument name specifying the directory to write the
     460  
              * reports to.
     461  
              */
     462  
             public static final String OUT_SHORT = "o";
     463  
             /**
     464  
              * The long CLI argument name specifying the output format to write the
     465  
              * reports to.
     466  
              */
     467  
             public static final String OUTPUT_FORMAT = "format";
     468  
             /**
     469  
              * The short CLI argument name specifying the output format to write the
     470  
              * reports to.
     471  
              */
     472  
             public static final String OUTPUT_FORMAT_SHORT = "f";
     473  
             /**
     474  
              * The long CLI argument name specifying the name of the application to
     475  
              * be scanned.
     476  
              */
     477  
             public static final String APP_NAME = "app";
     478  
             /**
     479  
              * The short CLI argument name specifying the name of the application to
     480  
              * be scanned.
     481  
              */
     482  
             public static final String APP_NAME_SHORT = "a";
     483  
             /**
     484  
              * The long CLI argument name asking for help.
     485  
              */
     486  
             public static final String HELP = "help";
     487  
             /**
     488  
              * The short CLI argument name asking for help.
     489  
              */
     490  
             public static final String HELP_SHORT = "h";
     491  
             /**
     492  
              * The long CLI argument name asking for the version.
     493  
              */
     494  
             public static final String VERSION_SHORT = "v";
     495  
             /**
     496  
              * The short CLI argument name asking for the version.
     497  
              */
     498  
             public static final String VERSION = "version";
     499  
             /**
     500  
              * The short CLI argument name indicating the proxy port.
     501  
              */
     502  
             public static final String PROXY_PORT_SHORT = "p";
     503  
             /**
     504  
              * The CLI argument name indicating the proxy port.
     505  
              */
     506  
             public static final String PROXY_PORT = "proxyport";
     507  
             /**
     508  
              * The short CLI argument name indicating the proxy url.
     509  
              */
     510  
             public static final String PROXY_URL_SHORT = "u";
     511  
             /**
     512  
              * The CLI argument name indicating the proxy url.
     513  
              */
     514  
             public static final String PROXY_URL = "proxyurl";
     515  
             /**
     516  
              * The short CLI argument name indicating the proxy username.
     517  
              */
     518  
             public static final String PROXY_USERNAME_SHORT = "pu";
     519  
             /**
     520  
              * The CLI argument name indicating the proxy username.
     521  
              */
     522  
             public static final String PROXY_USERNAME = "proxyuser";
     523  
             /**
     524  
              * The short CLI argument name indicating the proxy password.
     525  
              */
     526  
             public static final String PROXY_PASSWORD_SHORT = "pp";
     527  
             /**
     528  
              * The CLI argument name indicating the proxy password.
     529  
              */
     530  
             public static final String PROXY_PASSWORD = "proxypass";
     531  
             /**
     532  
              * The short CLI argument name indicating the connection timeout.
     533  
              */
     534  
             public static final String CONNECTION_TIMEOUT_SHORT = "c";
     535  
             /**
     536  
              * The CLI argument name indicating the connection timeout.
     537  
              */
     538  
             public static final String CONNECTION_TIMEOUT = "connectiontimeout";
     539  
             /**
     540  
              * The short CLI argument name for setting the location of an additional
     541  
              * properties file.
     542  
              */
     543  
             public static final String PROP_SHORT = "p";
     544  
             /**
     545  
              * The CLI argument name for setting the location of an additional
     546  
              * properties file.
     547  
              */
     548  
             public static final String PROP = "propertyfile";
     549  
             /**
     550  
              * The CLI argument name for setting the location of the data directory.
     551  
              */
     552  
             public static final String DATA_DIRECTORY = "data";
     553  
             /**
     554  
              * The short CLI argument name for setting the location of the data
     555  
              * directory.
     556  
              */
     557  
             public static final String DATA_DIRECTORY_SHORT = "d";
     558  
             /**
     559  
              * The CLI argument name for setting the location of the data directory.
     560  
              */
     561  
             public static final String VERBOSE_LOG = "log";
     562  
             /**
     563  
              * The short CLI argument name for setting the location of the data
     564  
              * directory.
     565  
              */
     566  
             public static final String VERBOSE_LOG_SHORT = "l";
     567  
             /**
     568  
              * The CLI argument name for setting the location of the suppression
     569  
              * file.
     570  
              */
     571  
             public static final String SUPPRESION_FILE = "suppression";
     572  
             /**
     573  
              * The short CLI argument name for setting the location of the
     574  
              * suppression file.
     575  
              */
     576  
             public static final String SUPPRESION_FILE_SHORT = "sf";
     577  
         }
     578  
     }
    + + + + diff --git a/css/dependency-check-cli/cpd.html b/css/dependency-check-cli/cpd.html new file mode 100644 index 000000000..e7882a62b --- /dev/null +++ b/css/dependency-check-cli/cpd.html @@ -0,0 +1,251 @@ + + + + + + + + + dependency-check-cli - CPD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    CPD Results

    +

    The following document contains the results of PMD's CPD 5.0.2.

    +
    +

    Duplications

    +

    CPD found no problems in your source code.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css b/css/dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/css/dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.1.0 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:20px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:1;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1{font-size:36px;line-height:40px}h2{font-size:30px;line-height:40px}h3{font-size:24px;line-height:40px}h4{font-size:18px;line-height:20px}h5{font-size:14px;line-height:20px}h6{font-size:12px;line-height:20px}h1 small{font-size:24px}h2 small{font-size:18px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal dt{float:left;width:120px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:130px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:9px;font-size:14px;line-height:20px;color:#555;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}input,textarea{width:210px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #bbb}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:18px;padding-left:18px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-18px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"]{float:left}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;font-size:14px;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{margin-left:-1px;vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:160px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:160px}.form-horizontal .help-block{margin-top:10px;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-right-topleft:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table [class*=span],.row-fluid table [class*=span]{display:table-cell;float:none;margin-left:0}table .span1{float:none;width:44px;margin-left:0}table .span2{float:none;width:124px;margin-left:0}table .span3{float:none;width:204px;margin-left:0}table .span4{float:none;width:284px;margin-left:0}table .span5{float:none;width:364px;margin-left:0}table .span6{float:none;width:444px;margin-left:0}table .span7{float:none;width:524px;margin-left:0}table .span8{float:none;width:604px;margin-left:0}table .span9{float:none;width:684px;margin-left:0}table .span10{float:none;width:764px;margin-left:0}table .span11{float:none;width:844px;margin-left:0}table .span12{float:none;width:924px;margin-left:0}table .span13{float:none;width:1004px;margin-left:0}table .span14{float:none;width:1084px;margin-left:0}table .span15{float:none;width:1164px;margin-left:0}table .span16{float:none;width:1244px;margin-left:0}table .span17{float:none;width:1324px;margin-left:0}table .span18{float:none;width:1404px;margin-left:0}table .span19{float:none;width:1484px;margin-left:0}table .span20{float:none;width:1564px;margin-left:0}table .span21{float:none;width:1644px;margin-left:0}table .span22{float:none;width:1724px;margin-left:0}table .span23{float:none;width:1804px;margin-left:0}table .span24{float:none;width:1884px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.info td{background-color:#d9edf7}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav>.active>a>[class^="icon-"],.nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:linear-gradient(to bottom,#08c,#0077b3);background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover .dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;overflow:visible \9;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 14px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:9px 14px;font-size:16px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.btn-large [class^="icon-"]{margin-top:2px}.btn-small{padding:3px 9px;font-size:12px;line-height:18px}.btn-small [class^="icon-"]{margin-top:0}.btn-mini{padding:2px 6px;font-size:11px;line-height:16px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-image:-moz-linear-gradient(top,#08c,#04c);background-repeat:repeat-x;border-color:#04c #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-image:-moz-linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-image:-moz-linear-gradient(top,#444,#222);background-repeat:repeat-x;border-color:#222 #222222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-group{position:relative;*margin-left:.3em;font-size:0;white-space:nowrap}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn-group{display:inline-block;*display:inline;*zoom:1}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-top:0;border-bottom:5px solid #000}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eeeeee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #dddddd #eee #eeeeee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eeeeee #eee #dddddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#555}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar .container{width:auto}.nav-collapse.collapse{height:auto}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#555;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#555}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:6px}.navbar .btn-group .btn{margin:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;width:100%;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner,.navbar-static-top .navbar-inner{border:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#555;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-image:-moz-linear-gradient(top,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{height:40px;margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination li{display:inline}.pagination a,.pagination span{float:left;padding:0 14px;line-height:38px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination a:hover,.pagination .active a,.pagination .active span{background-color:#f5f5f5}.pagination .active a,.pagination .active span{color:#999;cursor:default}.pagination .disabled span,.pagination .disabled a,.pagination .disabled a:hover{color:#999;cursor:default;background-color:transparent}.pagination li:first-child a,.pagination li:first-child span{border-left-width:1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.pagination li:last-child a,.pagination li:last-child span{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager a{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next a{float:right}.pager .previous a{float:left}.pager .disabled a,.pager .disabled a:hover{color:#999;cursor:default;background-color:#fff}.modal-open .dropdown-menu{z-index:2050}.modal-open .dropdown.open{*z-index:2050}.modal-open .popover{z-index:2060}.modal-open .tooltip{z-index:2080}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;overflow:auto;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-bottom:10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-right:10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.label,.badge{font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{padding:1px 4px 2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding:1px 9px 2px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit p{font-size:18px;font-weight:200;line-height:30px;color:inherit}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}.clear{clear:both;visibility:hidden}.clear hr{display:none}.section p,.section p,.section dt,.section dt{margin-right:7px;margin-left:7px}#ohloh{margin-bottom:10px}#poweredBy{text-align:center}a.externalLink{background:url('../images/external.png') right center no-repeat;padding-right:18px}a.newWindow{background:url('../images/window-new.png') right center no-repeat;padding-right:18px}a.externalLink[href^=http]{background:url('../images/internet-web-browser.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".asc"]{background:url('../images/accessories-text-editor.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".jpg"],a.externalLink[href$=".jpeg"],a.externalLink[href$=".gif"],a.externalLink[href$=".png"]{background:url('../images/image-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".tar.gz"],a.externalLink[href$=".zip"]{background:url('../images/package-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".md5"],a.externalLink[href$=".sha1"]{background:url('../images/document-properties.png') right center no-repeat;padding-right:18px}a.externalLink[href^=https]{background:url('../images/application-certificate.png') right center no-repeat;padding-right:18px}a.externalLink[href^=file]{background:url('../images/drive-harddisk.png') right center no-repeat;padding-right:18px}a.externalLink[href^=ftp]{background:url('../images/network-server.png') right center no-repeat;padding-right:18px}a.externalLink[href^=mailto]{background:url('../images/contact-new.png') right center no-repeat;padding-right:18px}li.none{list-style:none}.search-query{background-image:url(http://www.google.com/cse/intl/en/images/google_custom_search_watermark.gif);background-attachment:initial;background-origin:initial;background-clip:initial;background-color:#fff;background-position:0 50%;background-repeat:no-repeat no-repeat;width:95%}body.topBarEnabled{padding-top:60px}body.topBarDisabled{padding-top:20px}.builtBy{display:block}img.builtBy{margin:10px auto}#search-form{margin-left:9px;margin-right:9px}.hero-unit h2{font-size:60px}tt{padding:0 3px 2px;font-family:Monaco,Andale Mono,Courier New,monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#fee9cc;color:rgba(0,0,0,0.75);padding:1px 3px}li{color:#404040}table.zebra-striped{background-color:#FFF}.footer{background-color:#EEE}.sidebar-nav{padding-left:0;padding-right:0}.sidebar-nav .icon-chevron-right,.sidebar-nav .icon-chevron-down{margin-top:2px;margin-right:-6px;float:right;opacity:.25}.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0;padding-left:15px}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/css/dependency-check-cli/css/print.css b/css/dependency-check-cli/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/css/dependency-check-cli/css/print.css @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/* $Id: print.css 1201871 2011-11-14 20:18:24Z simonetripodi $ */ + +#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/css/dependency-check-cli/css/site.css b/css/dependency-check-cli/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/css/dependency-check-cli/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/css/dependency-check-cli/dependency-updates-report.html b/css/dependency-check-cli/dependency-updates-report.html new file mode 100644 index 000000000..165cddb67 --- /dev/null +++ b/css/dependency-check-cli/dependency-updates-report.html @@ -0,0 +1,410 @@ + + + + + + + + + dependency-check-cli - Dependency Updates Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This report summarizes newer versions that may be available for your project's various dependencies.

    + + + + + + + + + + + + + + + + + + + + +
    # of dependencies using the latest version available3
    # of dependencies where the next version available is smaller than an incremental version update0
    # of dependencies where the next version available is an incremental version update0
    # of dependencies where the next version available is a minor version update0
    # of dependencies where the next version available is a major version update0
    +
    +

    Dependency Management

    +

    This project does not declare any dependencies in a dependencyManagement section.

    +
    +

    Dependencies

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    commons-clicommons-cli1.2compilejar
    junitjunit4.11testjar
    org.owaspdependency-check-core1.0.6compilejar
    StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

    Dependency Updates

    +

    +
    +

    commons-cli:commons-cli

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idcommons-cli
    Artifact Idcommons-cli
    Current Version1.2
    Scopecompile
    Classifier
    Typejar
    +
    +

    junit:junit

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idjunit
    Artifact Idjunit
    Current Version4.11
    Scopetest
    Classifier
    Typejar
    +
    +

    org.owasp:dependency-check-core

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.owasp
    Artifact Iddependency-check-core
    Current Version1.0.6
    Scopecompile
    Classifier
    Typejar
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/findbugs.html b/css/dependency-check-cli/findbugs.html new file mode 100644 index 000000000..bd719d7e6 --- /dev/null +++ b/css/dependency-check-cli/findbugs.html @@ -0,0 +1,270 @@ + + + + + + + + + dependency-check-cli - FindBugs Bug Detector Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    FindBugs Bug Detector Report

    +

    The following document contains the results of FindBugs Report

    +

    FindBugs Version is 2.0.1

    +

    Threshold is medium

    +

    Effort is min

    +
    +

    Summary

    + + + + + + + + + + +
    ClassesBugsErrorsMissing Classes
    3000
    +
    +

    Files

    + + + +
    ClassBugs
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/images/accessories-text-editor.png b/css/dependency-check-cli/images/accessories-text-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..abc3366edad864f1c06e1354c2f7cd0ee1f2a080 GIT binary patch literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z!(tV6XFWw9$CP!U~&MEL_-~2 zturUYuc~G2k7NQOAQwpPnVm8{M-46l)ZW(7+}_y&l!c=+t7L#iU0Nn~YlG3l-F|15 z@P0VoetaRz%cI#-`!i3iRywta^WbvRtIMVKukt^?RPfMZskwP_>zl3S&Y%79fJLFr)R5u{`~pcwQJ|jo!h;8_nch0Czn_4o{=~$Tdkui?!}82 zPoF-0^5jWpw9vyV8+S~Jn~|&5P#DqD)^z{={fV`486gG>yE10vs7-0jnK^T2duMA= zxOS1hU{#Kw#hCr%tWa%9@{DF+T5IJs^5$&)9i&zL%I{+xaL_HEjdBN!3HH6)q7{X9{`;59Zq8_K&a?NFvhbtJ!a#ML1s;*b3=G^r zHn%V%!>lqE9PESpH$neQx=aVO*B2%Y?K6$dU zvO@Al$kmjqrY2jrl%|w^{UQ0|3oj3EZ%?m}Pw82fGm<}abk?qEJm7ZynqNRiHh(Bgn?ad9p@g!lX0?hAY$6qZbCW z0lmYZTH+c}l9E`GYL#4+3Zxi}3=9o*fylrz#K6+Z#K6kbLfgR5%D~`Tz=gvo8glbf ZGSez?YiQ@qs0V6b@O1TaS?83{1OS^WRoMUl literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/add.gif b/css/dependency-check-cli/images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..1cb3dbf936e38b5c5efdc3e247a042eb1b1d23e9 GIT binary patch literal 397 zcmV;80doFFNk%w1VGsZi0Hrwqfq{XHjC_`scb}hfo}Qksu4?V%HuUQ#_Ut72?;iT^ zBKq(m_wPpc?_K-yJooTv`tnWp@M`+UP{`_CX>@2HM@dakAa8CUVIWOmV*nxf1OW;FKL9KM0000G01yBG z28=)gU`QMW1_i@!3CKC0&ddYCI52ah&u7HtL@q0qBk^l$xg^p?lB(HEigIo{N|QVi z)(zKM$kAyhAQ&1iFcb)XbtESzDjgOT6Af33jV>-IB_SdLSAi#(F{3g$0H2JZE~KTW ra*U!eGBdQMSC^|Yvokcda+j>Uy{=7A#!jw6Max43OV7~J&_Mt@cAw$D literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/apache-maven-project-2.png b/css/dependency-check-cli/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c096ec0c7d50ecca14e76dd49b1fcb9382c3d07 GIT binary patch literal 33442 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 AyZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/contact-new.png b/css/dependency-check-cli/images/contact-new.png new file mode 100644 index 0000000000000000000000000000000000000000..ebc4316d844dea7c644b636a768348a4a105fefe GIT binary patch literal 736 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z~~#`6XFWw{(0&D=T+#RHwAw` z&Hnpo&YySH^B2wT=xUuXq4DDJ;vXMY{rmmm?~n68U)N8b+W+is-}IT2Cr_OKQ8Rn) zjLlm%?%28R-u1=5z8w7b_w%10wGpKB`?6U6pFe*dJ9ccrf(7f>ue)&m)R!-BCQRynbY{!R9*ZYy+@7p-UY@S-`Sa%w zA3nT)|NhsnUlS(vzIpp-Vt+(alI*llmi}Ot{8X*wt1GWuxpMjPD8G_FtAwYlM(@+7PjBA5dHwqJt5>i7{Q0y0(1MB6!uuu%PnZ(1WB07bk00N^ zfB)XSdp~~s0NV5M7AY?6_YmX)lQk*=z#qM@b= z;jzxa-qG&i{`U`D;5cDwW@u`>eZ!Vb+cs`xE_y2~Gk1<|Ow8SwyS5T3HhcHf*8Kf* zmx-x4rs2+m2^The=s2c1x z@?`Pi#gUPb%a$!mPfyRv%4%q+zjyD}h7B7sGBPqVGdnvwA3b_>`}XY_GiFp&ROIC3 zBqk>2=H`C-^y%l%pKss3eemGH!-o&gojcdo*4Ee8cjwNX^XJbmU%q_Jnl)d(e3_rK zQ5)znu96_XUAfnlM+?I*J`vNB)4cy(~cFE%!y3*C+dtm|AkbLP(0rAtI-WalPl zXQ#h^a3Yue>8TkOmX^DBoNC%>bIn0P>y;XJk*Kt_xlBQUk->(IhZxnF8MX%rzU~pe z)edx+YKdz^NlIc#s#S7PDv)9@GB7mM1tJ5>5Ccmq69X$#3vB~KD+7aX0T&LVXvob^ Z$xN%nt)ZPaqaLV%!PC{xWt~$(69B9}1)l%_ literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/drive-harddisk.png b/css/dependency-check-cli/images/drive-harddisk.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ce475f83900cfe56bc5374932b5bf2ca4dbc8d GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zC&II^`xaJjPLr`yjcXv-mMOEp) zfB$~|{Q2qgr}E0uH*ep*0fM(c8pHz9pFVy1{{8!_SFc~e@M|D=_4?z-kMG~VfBN+4 z=g*&?JbCir!-ub5zrK9=^4G6l&z?Q|^5x6(=g-S4OG?X&9zTA3@7}!^FJ6?E7oReKBW~hUcb538A@(YtL-+^H_dcdDlJpJ=Y$-@O`Fz zG@0+R=gebQ3|6LQE_?ex(qMMck(v6_v=g$+AOFmI(3&Wse&EvEy!Sf~KCI~aV|0G{ zk1FrS2B$YEFiv@18F*(Wd((ez|EgADxttge3!oF5szM@4obz*YQ}ap~7&xwf_C2e8 zRrlN)FW64!{5l*E!$tK_0oAjM#0U}&fdLejY7 zI~FXQH)-jvha*6u#Df8X9ChYuY)a%k^~E2mDLxODNt zmCKi|T)zC|@uR1YAH8|~^39u9@7}$6_wMcc_wPP@0HXIFK79E6`SZ7LU%!9<{_EGT z|C9m6e^Smxsfi`2DGKG8B^e6tp1uJJ`FRS73ciWS42nNl7`Yhi8FUzc0OVr^w%h~r z3p{khINcN{dHm3sxp?^`71bH@yqi{KNeBh-JDpc0PP#ir~m)} literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/icon_error_sml.gif b/css/dependency-check-cli/images/icon_error_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..12e9a01a930c8dfa20992254a9c2b19272d1d491 GIT binary patch literal 633 zcmZ?wbhEHb6krfwIF`;38Xg=L5fUB=M4=H;VNo&RafvaB$?-`k33&xMO~v8m6{R(` zl?_dGEv=0$ZA~rhO>G^`?Hw)coj}yu(b?MG)!Nb3($Ur0+1)m2a{u;z-^o)aPMJDs z`t(UNXHAo#m!w{g?@=WBc~Zm8X~W#g8u zo3?D*v~~ODZQHl}UT^n%gZ1x?R=+k`T;JBTW7oDFySD${^*eoz@Oc*hmRckzCZ2A(L+a%9{G7V>Fe>N z^XJe0KGXR7Y}4;^^*`^=|M7h0?^~=l4^&mpY`6;P-`9HR5qr6O1d8TwsR`3>b@UzlT;FtFnna2=nZ#cumG*CCfUXh`R z+r!d5z(O-R)XZE>lB1r*D>%&0R$Il*Mn_6Qf{%sS(JIbXUpX=*NJ;FP;1pg}V|6*} zv?MJFQE_3;iOj5Q?9#Ex;l6qz5+~F=Ii~BU9y&2WMUzuPiAOcCQYbJ`P)$^n_v8t~ IKm`VC0O`0&yZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/icon_help_sml.gif b/css/dependency-check-cli/images/icon_help_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..aaf20e6eea4148fe8fbb09bdf4595eb98334fff6 GIT binary patch literal 1072 zcmZ?wbhEHb6krfwcs`v$!K+=-yF&?xd^(hUI+cApRs6bC{eh@k&A(ecpj#`rPbZ{T zHx!8a^g{b}!zSp5_v=SYG>n*N6g|Zlh+?Lg#7s4dnQRg})go?+MZ$E8gc;Te)2xza zS|`u4Ntxx4KG!L8zI)~z=dAgzISbu#7kcN-_sn1Ho4>%jXsJ)pQs3fbfo02sDpp2R zERC#K7E-k)vT8+i)$*{KwK3JpV{2AK)o)0wTb10nI<9$BO4FK@rnRX}Ym!%=V3`o!hfJHsy3|$nM;n-n}!oduvYb_N=~Lg}qy|`*#=hZ!es< zJAcyNg30?!r|d17cCdKb!IJ3*D`y_8n0>Tq?!mT&hdUP@>REWOXVJm#rN<{MJ>0+I z#FUlCrmQ_Pd;RIzn=UTca(=iaqXVV+mGGa zb@J}slehPtx^v*n-9zW@9lP}K#FZzfu01_{?di$u&(B2A zoI?4BMCM#(ZeZdNx5?S*;=#(TTgt)U(ejX?g-3ph&!#D=Y`v;IOgUFKENEgEY}K2& zbK&FTQ{0&t&PXaHI(LYby<^~<)WRug%f?Vsn9S(HDV}gdq)=(8*E}P}f0hC+DlA;` z)Ad{zHa+cG#KBxFQ?<#-BSSmll8aH3zyUtzf;|p9o6`Ijt8uE?Ni?%hQnAZc^O50L PaG-&a!$_HjgTWdA|E#c| literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/icon_info_sml.gif b/css/dependency-check-cli/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..b776326703c341ce559f98f028bb92fe4c332a83 GIT binary patch literal 638 zcmZ?wbhEHb6krfwI99}9U|?WrY3AnUX5m?3;Z0M>*4P;bV`&8Ka zl-c-J*!q^)`BgduR5=D#I|r7#hSa%**1Lx{c!gJaL^OLwwt7Xic}F+L#o2`7dnmC(1Rt2?c3!lt^38_VY&t(beHXZDWXIXh-7+1tM2%&evRR;+4S zwr0k}b!V5aoiTgei6v_fuiiLg?#^pV_uW{w@5aglH&-3Jx&6@9oky;1J$7sB@!MNZ zJveyg`hg3N4_$b0@Y0i`mmVIv{N(WECzr2oIC}Nz@oP^{UVDDw>Vp&4U!1=A;>^t# zmu@{ecl+ht`>QY9eSP`<>nji5TzT;J+QYXu9=*N!_}$}YyB<7!`{3D|d(S`KfBxyw z^Y`~(e0uQm)1z0PU%x&0;{BHw@4vo%|K;_EudhFRd-L)8=Wi$9eg5(O^Y^bmPJRCV z>&y3FUw{1i{`2>*-+zDo`TOV3-~U7d#ecdQ$(jmA1_mYyUWwVINeaOwshN4HMO<9Y zMX8A;sVNHOnI#ztAsML(?w-B@42nNl7`Yhg8FUzc02GM~?5i5;o0>S;m|56)n!B60 zjgkxVVs!X>ns_~P6XU}IL#+gR_>6Khb5di2o!vBrx&@MxvJ29p102vbQyButm$y)r=@GSbQ7fuf zG&hu(RxhgI;Nx!Xk#a$OMKhbYL0W}^MFz8kslSGfx4@b6vWfA)m`-W&brNWq_@1%Hm^{yEe1`?BYsvn_wmHvhTm`R8WJ@7psnMoCG5mA-y?dAS}$C^BFZzMd3&ORu3u6b1u&a%gnW4I(EOT#*fRVX@ zj=Hjv*wR)(6J1pWB^l0kHf~;N6*);RcGfnA&uq+0JK1LSU+Ld<{2%8ZVGags09itc As{jB1 literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/icon_warning_sml.gif b/css/dependency-check-cli/images/icon_warning_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac6ad6ada39ea693ac0500810196fe551833b2d0 GIT binary patch literal 625 zcmZ?wbhEHb6krfwI99~a)zjYH+tJh8+1uaM2SgLPCr;{|FsXOac1bJ1)uHC+K>&~59ckkZ5d-v|2$A0(j-F^3{>(7(0`}gnuc^UfX z@x#ZDA3c8Z_|NN&Cy&7yo%%@b}sNzt0Z-eYxt-yV^f*C;fTf`1eES z-w!>1J}>_JdEuYWOa6Xd^!Lk}zhBn<{kq}rw|)P9oc;IX{NEo}|Ngl7@B5>FKhOXB zdEwvh=l_1c{P*YWzd!H({eA!M@Av;i1I2$*&PAz-C8;S2<(VZJ3hti10Sftf3W*B7 ziOCF#KUo;L80r~x7=Qp2V+`yY8tR*xTUy(i#HHHXrMkN7MWySl%=MJ(rA6DMjY2bX z(u0-cWZJ_D^HP)IBjwwzGV=?v5~Cw*Wm|eJbJMa@;-dULC8WeVqzp2WlM-S=yxk;w zTU5hiJ%ZG^dBjB8Rrm$j6kTluIQSS_WQ2shECQX()EphTT0}XuoqXM`9onu0Tx4Ka w$mp{`;N!m2?G#bv7+&QNR_PU4c>CU?Yd7!v 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/logos/build-by-maven-white.png b/css/dependency-check-cli/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/logos/maven-feather.png b/css/dependency-check-cli/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/network-server.png b/css/dependency-check-cli/images/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d12e1938ac4d8817701a555a97b36a42413ff7f GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh0wlLOK8*rWOiAAEE({6J?VYlKJkA1-$YKTt zZXpn6ymYtj4+8_EfTxRNh{R>v^Lzb75+zt4q?_IE(UC6ToMFIeXrjjU_Pbcl8wEu* zmFNogJ4~&tCL!OBSWj@$7M9kE%GC+rI&-8+^}#zUfge$ z%95%FVq)d@YWpHh0*~9IeYCDS=DEjWT6&NB;?38!S{%Af^K0ULzq^XpMf{AfPW9%` z{By-F@#G`{r|bn{ZSl6`PhU_~!26>8WB9W7wxA3jxWq>uP}{$dFi` z{%E$YFs9ZZ#)XBd3yahj7HcdhP@0i0c5-Fei4|q1R+pb%U2$f0$(hxq%c@PLC-F^7 z;+vfzx~NcTNs0RMD#LrH*W5ZZ>(GMCN2iutSY3E&UD>s*_1Cu4-#;|z!_Cdtc6J?G zUUG6}>4z(;KU`e+;r#6P=Vrb?Gxgo+Deq2AczdGv?eU&>7nf}8_Wf{u{fF!8K3rS- z;o6$_*H*v3y88XKb$9o403A6wmUUi^)Rkq4C;QDWElr%4Ewvz5_U@*FYx8|>Z^)aU zBeO7H?&+SoN9z+G?W$goC%33j@%7nxua0&%tapcEij439aV6bJZW8_q7iNx>mKsHKHUXu_VbP0l+XkKAq+)H literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/profiles/pre-release.png b/css/dependency-check-cli/images/profiles/pre-release.png new file mode 100644 index 0000000000000000000000000000000000000000..d448e850cd3f885844d0c28da7dddf4457e25300 GIT binary patch literal 32607 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 IO1}yIe}jHRegFUf literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/profiles/retired.png b/css/dependency-check-cli/images/profiles/retired.png new file mode 100644 index 0000000000000000000000000000000000000000..f89f6a29c6b61beafd8d2f729085fbf1d17b0e86 GIT binary patch literal 22003 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/images/profiles/sandbox.png b/css/dependency-check-cli/images/profiles/sandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..f88b3626761f591fefcb7408ff290b4f48ebe0d9 GIT binary patch literal 33010 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 OGkCiCxvXLW=UkO8ip# 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 B7G?kd literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/img/glyphicons-halflings.png b/css/dependency-check-cli/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-cli/index.html b/css/dependency-check-cli/index.html new file mode 100644 index 000000000..2d3e0217e --- /dev/null +++ b/css/dependency-check-cli/index.html @@ -0,0 +1,185 @@ + + + + + + + + + dependency-check-cli - About + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    About Dependency-Check Command Line

    +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/installation.html b/css/dependency-check-cli/installation.html new file mode 100644 index 000000000..65dc53da0 --- /dev/null +++ b/css/dependency-check-cli/installation.html @@ -0,0 +1,178 @@ + + + + + + + + + dependency-check-cli - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    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:

    + +
    +
    $ chmod +777 dependency-check.sh
    +
    +

    To scan a folder on the system you can run:

    + +
    +
    dependency-check.bat --app "My App Name" --scan "c:\java\application\lib"
    +
    +dependency-check.sh --app "My App Name" --scan "/java/application/lib"
    +
    +

    To view the command line arguments, see the arguments page, or you can run: dependency-check.bat –help

    + +
    +
    dependency-check.sh --help
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js b/css/dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/css/dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js @@ -0,0 +1,21 @@ +/*! + * jQuery JavaScript Library v1.8.0 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: Thu Aug 09 2012 16:24:48 GMT-0400 (Eastern Daylight Time) + */ +(function(a2,aB){var x,af,o=a2.document,aI=a2.location,d=a2.navigator,bg=a2.jQuery,I=a2.$,am=Array.prototype.push,a4=Array.prototype.slice,aK=Array.prototype.indexOf,A=Object.prototype.toString,V=Object.prototype.hasOwnProperty,aN=String.prototype.trim,bG=function(e,bZ){return new bG.fn.init(e,bZ,x)},bx=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,aa=/\S/,aV=/\s+/,D=aa.test("\xA0")?(/^[\s\xA0]+|[\s\xA0]+$/g):/^\s+|\s+$/g,bo=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,a=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,bf=/^[\],:{}\s]*$/,bi=/(?:^|:|,)(?:\s*\[)+/g,bD=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,a0=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,bP=/^-ms-/,aU=/-([\da-z])/gi,N=function(e,bZ){return(bZ+"").toUpperCase()},aF=function(){if(o.addEventListener){o.removeEventListener("DOMContentLoaded",aF,false);bG.ready()}else{if(o.readyState==="complete"){o.detachEvent("onreadystatechange",aF);bG.ready()}}},Z={};bG.fn=bG.prototype={constructor:bG,init:function(e,b2,b1){var b0,b3,bZ,b4;if(!e){return this}if(e.nodeType){this.context=this[0]=e;this.length=1;return this}if(typeof e==="string"){if(e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3){b0=[null,e,null]}else{b0=bo.exec(e)}if(b0&&(b0[1]||!b2)){if(b0[1]){b2=b2 instanceof bG?b2[0]:b2;b4=(b2&&b2.nodeType?b2.ownerDocument||b2:o);e=bG.parseHTML(b0[1],b4,true);if(a.test(b0[1])&&bG.isPlainObject(b2)){this.attr.call(e,b2,true)}return bG.merge(this,e)}else{b3=o.getElementById(b0[2]);if(b3&&b3.parentNode){if(b3.id!==b0[2]){return b1.find(e)}this.length=1;this[0]=b3}this.context=o;this.selector=e;return this}}else{if(!b2||b2.jquery){return(b2||b1).find(e)}else{return this.constructor(b2).find(e)}}}else{if(bG.isFunction(e)){return b1.ready(e)}}if(e.selector!==aB){this.selector=e.selector;this.context=e.context}return bG.makeArray(e,this)},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return a4.call(this)},get:function(e){return e==null?this.toArray():(e<0?this[this.length+e]:this[e])},pushStack:function(bZ,b1,e){var b0=bG.merge(this.constructor(),bZ);b0.prevObject=this;b0.context=this.context;if(b1==="find"){b0.selector=this.selector+(this.selector?" ":"")+e}else{if(b1){b0.selector=this.selector+"."+b1+"("+e+")"}}return b0},each:function(bZ,e){return bG.each(this,bZ,e)},ready:function(e){bG.ready.promise().done(e);return this},eq:function(e){e=+e;return e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(a4.apply(this,arguments),"slice",a4.call(arguments).join(","))},map:function(e){return this.pushStack(bG.map(this,function(b0,bZ){return e.call(b0,bZ,b0)}))},end:function(){return this.prevObject||this.constructor(null)},push:am,sort:[].sort,splice:[].splice};bG.fn.init.prototype=bG.fn;bG.extend=bG.fn.extend=function(){var b7,b0,e,bZ,b4,b5,b3=arguments[0]||{},b2=1,b1=arguments.length,b6=false;if(typeof b3==="boolean"){b6=b3;b3=arguments[1]||{};b2=2}if(typeof b3!=="object"&&!bG.isFunction(b3)){b3={}}if(b1===b2){b3=this;--b2}for(;b20){return}af.resolveWith(o,[bG]);if(bG.fn.trigger){bG(o).trigger("ready").off("ready")}},isFunction:function(e){return bG.type(e)==="function"},isArray:Array.isArray||function(e){return bG.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return !isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):Z[A.call(e)]||"object"},isPlainObject:function(b1){if(!b1||bG.type(b1)!=="object"||b1.nodeType||bG.isWindow(b1)){return false}try{if(b1.constructor&&!V.call(b1,"constructor")&&!V.call(b1.constructor.prototype,"isPrototypeOf")){return false}}catch(b0){return false}var bZ;for(bZ in b1){}return bZ===aB||V.call(b1,bZ)},isEmptyObject:function(bZ){var e;for(e in bZ){return false}return true},error:function(e){throw new Error(e)},parseHTML:function(b1,b0,e){var bZ;if(!b1||typeof b1!=="string"){return null}if(typeof b0==="boolean"){e=b0;b0=0}b0=b0||o;if((bZ=a.exec(b1))){return[b0.createElement(bZ[1])]}bZ=bG.buildFragment([b1],b0,e?null:[]);return bG.merge([],(bZ.cacheable?bG.clone(bZ.fragment):bZ.fragment).childNodes)},parseJSON:function(e){if(!e||typeof e!=="string"){return null}e=bG.trim(e);if(a2.JSON&&a2.JSON.parse){return a2.JSON.parse(e)}if(bf.test(e.replace(bD,"@").replace(a0,"]").replace(bi,""))){return(new Function("return "+e))()}bG.error("Invalid JSON: "+e)},parseXML:function(b1){var bZ,b0;if(!b1||typeof b1!=="string"){return null}try{if(a2.DOMParser){b0=new DOMParser();bZ=b0.parseFromString(b1,"text/xml")}else{bZ=new ActiveXObject("Microsoft.XMLDOM");bZ.async="false";bZ.loadXML(b1)}}catch(b2){bZ=aB}if(!bZ||!bZ.documentElement||bZ.getElementsByTagName("parsererror").length){bG.error("Invalid XML: "+b1)}return bZ},noop:function(){},globalEval:function(e){if(e&&aa.test(e)){(a2.execScript||function(bZ){a2["eval"].call(a2,bZ)})(e)}},camelCase:function(e){return e.replace(bP,"ms-").replace(aU,N)},nodeName:function(bZ,e){return bZ.nodeName&&bZ.nodeName.toUpperCase()===e.toUpperCase()},each:function(b3,b4,b0){var bZ,b1=0,b2=b3.length,e=b2===aB||bG.isFunction(b3);if(b0){if(e){for(bZ in b3){if(b4.apply(b3[bZ],b0)===false){break}}}else{for(;b10&&e[0]&&e[bZ-1])||bZ===0||bG.isArray(e));if(b1){for(;b0-1){b5.splice(ca,1);if(b2){if(ca<=b3){b3--}if(ca<=b4){b4--}}}})}return this},has:function(b9){return bG.inArray(b9,b5)>-1},empty:function(){b5=[];return this},disable:function(){b5=b6=b1=aB;return this},disabled:function(){return !b5},lock:function(){b6=aB;if(!b1){b7.disable()}return this},locked:function(){return !b6},fireWith:function(ca,b9){b9=b9||[];b9=[ca,b9.slice?b9.slice():b9];if(b5&&(!e||b6)){if(b2){b6.push(b9)}else{bZ(b9)}}return this},fire:function(){b7.fireWith(this,arguments);return this},fired:function(){return !!e}};return b7};bG.extend({Deferred:function(b0){var bZ=[["resolve","done",bG.Callbacks("once memory"),"resolved"],["reject","fail",bG.Callbacks("once memory"),"rejected"],["notify","progress",bG.Callbacks("memory")]],b1="pending",b2={state:function(){return b1},always:function(){e.done(arguments).fail(arguments);return this},then:function(){var b3=arguments;return bG.Deferred(function(b4){bG.each(bZ,function(b6,b5){var b8=b5[0],b7=b3[b6];e[b5[1]](bG.isFunction(b7)?function(){var b9=b7.apply(this,arguments);if(b9&&bG.isFunction(b9.promise)){b9.promise().done(b4.resolve).fail(b4.reject).progress(b4.notify)}else{b4[b8+"With"](this===e?b4:this,[b9])}}:b4[b8])});b3=null}).promise()},promise:function(b3){return typeof b3==="object"?bG.extend(b3,b2):b2}},e={};b2.pipe=b2.then;bG.each(bZ,function(b4,b3){var b6=b3[2],b5=b3[3];b2[b3[1]]=b6.add;if(b5){b6.add(function(){b1=b5},bZ[b4^1][2].disable,bZ[2][2].lock)}e[b3[0]]=b6.fire;e[b3[0]+"With"]=b6.fireWith});b2.promise(e);if(b0){b0.call(e,e)}return e},when:function(b2){var b0=0,b4=a4.call(arguments),e=b4.length,bZ=e!==1||(b2&&bG.isFunction(b2.promise))?e:0,b7=bZ===1?b2:bG.Deferred(),b1=function(b9,ca,b8){return function(cb){ca[b9]=this;b8[b9]=arguments.length>1?a4.call(arguments):cb;if(b8===b6){b7.notifyWith(ca,b8)}else{if(!(--bZ)){b7.resolveWith(ca,b8)}}}},b6,b3,b5;if(e>1){b6=new Array(e);b3=new Array(e);b5=new Array(e);for(;b0
    a";ca=b0.getElementsByTagName("*");b8=b0.getElementsByTagName("a")[0];b8.style.cssText="top:1px;float:left;opacity:.5";if(!ca||!ca.length||!b8){return{}}b9=o.createElement("select");b2=b9.appendChild(o.createElement("option"));b7=b0.getElementsByTagName("input")[0];cb={leadingWhitespace:(b0.firstChild.nodeType===3),tbody:!b0.getElementsByTagName("tbody").length,htmlSerialize:!!b0.getElementsByTagName("link").length,style:/top/.test(b8.getAttribute("style")),hrefNormalized:(b8.getAttribute("href")==="/a"),opacity:/^0.5/.test(b8.style.opacity),cssFloat:!!b8.style.cssFloat,checkOn:(b7.value==="on"),optSelected:b2.selected,getSetAttribute:b0.className!=="t",enctype:!!o.createElement("form").enctype,html5Clone:o.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",boxModel:(o.compatMode==="CSS1Compat"),submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true,boxSizingReliable:true,pixelPosition:false};b7.checked=true;cb.noCloneChecked=b7.cloneNode(true).checked;b9.disabled=true;cb.optDisabled=!b2.disabled;try{delete b0.test}catch(b5){cb.deleteExpando=false}if(!b0.addEventListener&&b0.attachEvent&&b0.fireEvent){b0.attachEvent("onclick",bZ=function(){cb.noCloneEvent=false});b0.cloneNode(true).fireEvent("onclick");b0.detachEvent("onclick",bZ)}b7=o.createElement("input");b7.value="t";b7.setAttribute("type","radio");cb.radioValue=b7.value==="t";b7.setAttribute("checked","checked");b7.setAttribute("name","t");b0.appendChild(b7);b6=o.createDocumentFragment();b6.appendChild(b0.lastChild);cb.checkClone=b6.cloneNode(true).cloneNode(true).lastChild.checked;cb.appendChecked=b7.checked;b6.removeChild(b7);b6.appendChild(b0);if(b0.attachEvent){for(b3 in {submit:true,change:true,focusin:true}){b4="on"+b3;b1=(b4 in b0);if(!b1){b0.setAttribute(b4,"return;");b1=(typeof b0[b4]==="function")}cb[b3+"Bubbles"]=b1}}bG(function(){var cc,cg,ce,cf,cd="padding:0;margin:0;border:0;display:block;overflow:hidden;",e=o.getElementsByTagName("body")[0];if(!e){return}cc=o.createElement("div");cc.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";e.insertBefore(cc,e.firstChild);cg=o.createElement("div");cc.appendChild(cg);cg.innerHTML="
    t
    ";ce=cg.getElementsByTagName("td");ce[0].style.cssText="padding:0;margin:0;border:0;display:none";b1=(ce[0].offsetHeight===0);ce[0].style.display="";ce[1].style.display="none";cb.reliableHiddenOffsets=b1&&(ce[0].offsetHeight===0);cg.innerHTML="";cg.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";cb.boxSizing=(cg.offsetWidth===4);cb.doesNotIncludeMarginInBodyOffset=(e.offsetTop!==1);if(a2.getComputedStyle){cb.pixelPosition=(a2.getComputedStyle(cg,null)||{}).top!=="1%";cb.boxSizingReliable=(a2.getComputedStyle(cg,null)||{width:"4px"}).width==="4px";cf=o.createElement("div");cf.style.cssText=cg.style.cssText=cd;cf.style.marginRight=cf.style.width="0";cg.style.width="1px";cg.appendChild(cf);cb.reliableMarginRight=!parseFloat((a2.getComputedStyle(cf,null)||{}).marginRight)}if(typeof cg.style.zoom!=="undefined"){cg.innerHTML="";cg.style.cssText=cd+"width:1px;padding:1px;display:inline;zoom:1";cb.inlineBlockNeedsLayout=(cg.offsetWidth===3);cg.style.display="block";cg.style.overflow="visible";cg.innerHTML="
    ";cg.firstChild.style.width="5px";cb.shrinkWrapBlocks=(cg.offsetWidth!==3);cc.style.zoom=1}e.removeChild(cc);cc=cg=ce=cf=null});b6.removeChild(b0);ca=b8=b9=b2=b7=b6=b0=null;return cb})();var bt=/^(?:\{.*\}|\[.*\])$/,aL=/([A-Z])/g;bG.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(bG.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?bG.cache[e[bG.expando]]:e[bG.expando];return !!e&&!O(e)},data:function(b1,bZ,b3,b2){if(!bG.acceptData(b1)){return}var b4,b6,b7=bG.expando,b5=typeof bZ==="string",b8=b1.nodeType,e=b8?bG.cache:b1,b0=b8?b1[b7]:b1[b7]&&b7;if((!b0||!e[b0]||(!b2&&!e[b0].data))&&b5&&b3===aB){return}if(!b0){if(b8){b1[b7]=b0=bG.deletedIds.pop()||++bG.uuid}else{b0=b7}}if(!e[b0]){e[b0]={};if(!b8){e[b0].toJSON=bG.noop}}if(typeof bZ==="object"||typeof bZ==="function"){if(b2){e[b0]=bG.extend(e[b0],bZ)}else{e[b0].data=bG.extend(e[b0].data,bZ)}}b4=e[b0];if(!b2){if(!b4.data){b4.data={}}b4=b4.data}if(b3!==aB){b4[bG.camelCase(bZ)]=b3}if(b5){b6=b4[bZ];if(b6==null){b6=b4[bG.camelCase(bZ)]}}else{b6=b4}return b6},removeData:function(b1,bZ,b2){if(!bG.acceptData(b1)){return}var b5,b4,b3,b6=b1.nodeType,e=b6?bG.cache:b1,b0=b6?b1[bG.expando]:bG.expando;if(!e[b0]){return}if(bZ){b5=b2?e[b0]:e[b0].data;if(b5){if(!bG.isArray(bZ)){if(bZ in b5){bZ=[bZ]}else{bZ=bG.camelCase(bZ);if(bZ in b5){bZ=[bZ]}else{bZ=bZ.split(" ")}}}for(b4=0,b3=bZ.length;b41,null,false)},removeData:function(e){return this.each(function(){bG.removeData(this,e)})}});function bv(b1,b0,b2){if(b2===aB&&b1.nodeType===1){var bZ="data-"+b0.replace(aL,"-$1").toLowerCase();b2=b1.getAttribute(bZ);if(typeof b2==="string"){try{b2=b2==="true"?true:b2==="false"?false:b2==="null"?null:+b2+""===b2?+b2:bt.test(b2)?bG.parseJSON(b2):b2}catch(b3){}bG.data(b1,b0,b2)}else{b2=aB}}return b2}function O(bZ){var e;for(e in bZ){if(e==="data"&&bG.isEmptyObject(bZ[e])){continue}if(e!=="toJSON"){return false}}return true}bG.extend({queue:function(b0,bZ,b1){var e;if(b0){bZ=(bZ||"fx")+"queue";e=bG._data(b0,bZ);if(b1){if(!e||bG.isArray(b1)){e=bG._data(b0,bZ,bG.makeArray(b1))}else{e.push(b1)}}return e||[]}},dequeue:function(b3,b2){b2=b2||"fx";var bZ=bG.queue(b3,b2),b1=bZ.shift(),e=bG._queueHooks(b3,b2),b0=function(){bG.dequeue(b3,b2)};if(b1==="inprogress"){b1=bZ.shift()}if(b1){if(b2==="fx"){bZ.unshift("inprogress")}delete e.stop;b1.call(b3,b0,e)}if(!bZ.length&&e){e.empty.fire()}},_queueHooks:function(b0,bZ){var e=bZ+"queueHooks";return bG._data(b0,e)||bG._data(b0,e,{empty:bG.Callbacks("once memory").add(function(){bG.removeData(b0,bZ+"queue",true);bG.removeData(b0,e,true)})})}});bG.fn.extend({queue:function(e,bZ){var b0=2;if(typeof e!=="string"){bZ=e;e="fx";b0--}if(arguments.length1)},removeAttr:function(e){return this.each(function(){bG.removeAttr(this,e)})},prop:function(e,bZ){return bG.access(this,bG.prop,e,bZ,arguments.length>1)},removeProp:function(e){e=bG.propFix[e]||e;return this.each(function(){try{this[e]=aB;delete this[e]}catch(bZ){}})},addClass:function(b2){var b4,b0,bZ,b1,b3,b5,e;if(bG.isFunction(b2)){return this.each(function(b6){bG(this).addClass(b2.call(this,b6,this.className))})}if(b2&&typeof b2==="string"){b4=b2.split(aV);for(b0=0,bZ=this.length;b0-1){b2=b2.replace(" "+b1[b5]+" "," ")}}b3.className=b4?bG.trim(b2):""}}}return this},toggleClass:function(b1,bZ){var b0=typeof b1,e=typeof bZ==="boolean";if(bG.isFunction(b1)){return this.each(function(b2){bG(this).toggleClass(b1.call(this,b2,this.className,bZ),bZ)})}return this.each(function(){if(b0==="string"){var b4,b3=0,b2=bG(this),b5=bZ,b6=b1.split(aV);while((b4=b6[b3++])){b5=e?b5:!b2.hasClass(b4);b2[b5?"addClass":"removeClass"](b4)}}else{if(b0==="undefined"||b0==="boolean"){if(this.className){bG._data(this,"__className__",this.className)}this.className=this.className||b1===false?"":bG._data(this,"__className__")||""}}})},hasClass:function(e){var b1=" "+e+" ",b0=0,bZ=this.length;for(;b0-1){return true}}return false},val:function(b1){var e,bZ,b2,b0=this[0];if(!arguments.length){if(b0){e=bG.valHooks[b0.type]||bG.valHooks[b0.nodeName.toLowerCase()];if(e&&"get" in e&&(bZ=e.get(b0,"value"))!==aB){return bZ}bZ=b0.value;return typeof bZ==="string"?bZ.replace(ai,""):bZ==null?"":bZ}return}b2=bG.isFunction(b1);return this.each(function(b4){var b5,b3=bG(this);if(this.nodeType!==1){return}if(b2){b5=b1.call(this,b4,b3.val())}else{b5=b1}if(b5==null){b5=""}else{if(typeof b5==="number"){b5+=""}else{if(bG.isArray(b5)){b5=bG.map(b5,function(b6){return b6==null?"":b6+""})}}}e=bG.valHooks[this.type]||bG.valHooks[this.nodeName.toLowerCase()];if(!e||!("set" in e)||e.set(this,b5,"value")===aB){this.value=b5}})}});bG.extend({valHooks:{option:{get:function(e){var bZ=e.attributes.value;return !bZ||bZ.specified?e.value:e.text}},select:{get:function(e){var b4,bZ,b3,b1,b2=e.selectedIndex,b5=[],b6=e.options,b0=e.type==="select-one";if(b2<0){return null}bZ=b0?b2:0;b3=b0?b2+1:b6.length;for(;bZ=0});if(!e.length){bZ.selectedIndex=-1}return e}}},attrFn:{},attr:function(b4,b1,b5,b3){var b0,e,b2,bZ=b4.nodeType;if(!b4||bZ===3||bZ===8||bZ===2){return}if(b3&&bG.isFunction(bG.fn[b1])){return bG(b4)[b1](b5)}if(typeof b4.getAttribute==="undefined"){return bG.prop(b4,b1,b5)}b2=bZ!==1||!bG.isXMLDoc(b4);if(b2){b1=b1.toLowerCase();e=bG.attrHooks[b1]||(M.test(b1)?bV:a7)}if(b5!==aB){if(b5===null){bG.removeAttr(b4,b1);return}else{if(e&&"set" in e&&b2&&(b0=e.set(b4,b5,b1))!==aB){return b0}else{b4.setAttribute(b1,""+b5);return b5}}}else{if(e&&"get" in e&&b2&&(b0=e.get(b4,b1))!==null){return b0}else{b0=b4.getAttribute(b1);return b0===null?aB:b0}}},removeAttr:function(b1,b3){var b2,b4,bZ,e,b0=0;if(b3&&b1.nodeType===1){b4=b3.split(aV);for(;b0=0)}}})});var bE=/^(?:textarea|input|select)$/i,br=/^([^\.]*|)(?:\.(.+)|)$/,ba=/(?:^|\s)hover(\.\S+|)\b/,a3=/^key/,bK=/^(?:mouse|contextmenu)|click/,by=/^(?:focusinfocus|focusoutblur)$/,aq=function(e){return bG.event.special.hover?e:e.replace(ba,"mouseenter$1 mouseleave$1")};bG.event={add:function(b1,b5,cc,b3,b2){var b6,b4,cd,cb,ca,b8,e,b9,bZ,b0,b7;if(b1.nodeType===3||b1.nodeType===8||!b5||!cc||!(b6=bG._data(b1))){return}if(cc.handler){bZ=cc;cc=bZ.handler;b2=bZ.selector}if(!cc.guid){cc.guid=bG.guid++}cd=b6.events;if(!cd){b6.events=cd={}}b4=b6.handle;if(!b4){b6.handle=b4=function(ce){return typeof bG!=="undefined"&&(!ce||bG.event.triggered!==ce.type)?bG.event.dispatch.apply(b4.elem,arguments):aB};b4.elem=b1}b5=bG.trim(aq(b5)).split(" ");for(cb=0;cb=0){ca=ca.slice(0,-1);b1=true}if(ca.indexOf(".")>=0){b0=ca.split(".");ca=b0.shift();b0.sort()}if((!b4||bG.event.customEvent[ca])&&!bG.event.global[ca]){return}bZ=typeof bZ==="object"?bZ[bG.expando]?bZ:new bG.Event(ca,bZ):new bG.Event(ca);bZ.type=ca;bZ.isTrigger=true;bZ.exclusive=b1;bZ.namespace=b0.join(".");bZ.namespace_re=bZ.namespace?new RegExp("(^|\\.)"+b0.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;b2=ca.indexOf(":")<0?"on"+ca:"";if(!b4){e=bG.cache;for(b7 in e){if(e[b7].events&&e[b7].events[ca]){bG.event.trigger(bZ,b6,e[b7].handle.elem,true)}}return}bZ.result=aB;if(!bZ.target){bZ.target=b4}b6=b6!=null?bG.makeArray(b6):[];b6.unshift(bZ);b9=bG.event.special[ca]||{};if(b9.trigger&&b9.trigger.apply(b4,b6)===false){return}b5=[[b4,b9.bindType||ca]];if(!cd&&!b9.noBubble&&!bG.isWindow(b4)){cc=b9.delegateType||ca;cb=by.test(cc+ca)?b4:b4.parentNode;for(b3=b4;cb;cb=cb.parentNode){b5.push([cb,cc]);b3=cb}if(b3===(b4.ownerDocument||o)){b5.push([b3.defaultView||b3.parentWindow||a2,cc])}}for(b7=0;b7b6){bZ.push({elem:this,matches:b7.slice(b6)})}for(cd=0;cd0?this.on(e,null,b1,b0):this.trigger(e)};if(a3.test(e)){bG.event.fixHooks[e]=bG.event.keyHooks}if(bK.test(e)){bG.event.fixHooks[e]=bG.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://sizzlejs.com/ + */ +(function(cO,cg){var cT,co,cf,b2,b8,b6=cO.document,b9=b6.documentElement,cw="undefined",ca=false,b7=true,ce=0,cj=[].slice,cS=[].push,cW=("sizcache"+Math.random()).replace(".",""),cz="[\\x20\\t\\r\\n\\f]",ci="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",ch=ci.replace("w","w#"),c1="([*^$|!~]?=)",cL="\\["+cz+"*("+ci+")"+cz+"*(?:"+c1+cz+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ch+")|)|)"+cz+"*\\]",c2=":("+ci+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",cB=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",cd=cz+"*([\\x20\\t\\r\\n\\f>+~])"+cz+"*",cc="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+cL+"|"+c2.replace(2,7)+"|[^\\\\(),])+",cU=new RegExp("^"+cz+"+|((?:^|[^\\\\])(?:\\\\.)*)"+cz+"+$","g"),cF=new RegExp("^"+cd),ct=new RegExp(cc+"?(?="+cz+"*,|$)","g"),cJ=new RegExp("^(?:(?!,)(?:(?:^|,)"+cz+"*"+cc+")*?|"+cz+"*(.*?))(\\)|$)"),cZ=new RegExp(cc.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+cd,"g"),cK=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,cP=/[\x20\t\r\n\f]*[+~]/,cX=/:not\($/,cp=/h\d/i,cM=/input|select|textarea|button/i,cs=/\\(?!\\)/g,cE={ID:new RegExp("^#("+ci+")"),CLASS:new RegExp("^\\.("+ci+")"),NAME:new RegExp("^\\[name=['\"]?("+ci+")['\"]?\\]"),TAG:new RegExp("^("+ci.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+cL),PSEUDO:new RegExp("^"+c2),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+cz+"*(even|odd|(([+-]|)(\\d*)n|)"+cz+"*(?:([+-]|)"+cz+"*(\\d+)|))"+cz+"*\\)|)","i"),POS:new RegExp(cB,"ig"),needsContext:new RegExp("^"+cz+"*[>+~]|"+cB,"i")},cR={},cq=[],cl={},cu=[],cY=function(e){e.sizzleFilter=true;return e},b3=function(e){return function(c3){return c3.nodeName.toLowerCase()==="input"&&c3.type===e}},cr=function(e){return function(c4){var c3=c4.nodeName.toLowerCase();return(c3==="input"||c3==="button")&&c4.type===e}},cH=function(c3){var c4=false,c6=b6.createElement("div");try{c4=c3(c6)}catch(c5){}c6=null;return c4},cn=cH(function(c3){c3.innerHTML="";var e=typeof c3.lastChild.getAttribute("multiple");return e!=="boolean"&&e!=="string"}),b0=cH(function(c3){c3.id=cW+0;c3.innerHTML="
    ";b9.insertBefore(c3,b9.firstChild);var e=b6.getElementsByName&&b6.getElementsByName(cW).length===2+b6.getElementsByName(cW+0).length;b8=!b6.getElementById(cW);b9.removeChild(c3);return e}),b5=cH(function(e){e.appendChild(b6.createComment(""));return e.getElementsByTagName("*").length===0}),cD=cH(function(e){e.innerHTML="";return e.firstChild&&typeof e.firstChild.getAttribute!==cw&&e.firstChild.getAttribute("href")==="#"}),cC=cH(function(e){e.innerHTML="";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return false}e.lastChild.className="e";return e.getElementsByClassName("e").length!==1});var cN=function(c5,e,c7,da){c7=c7||[];e=e||b6;var c8,c3,c9,c4,c6=e.nodeType;if(c6!==1&&c6!==9){return[]}if(!c5||typeof c5!=="string"){return c7}c9=ck(e);if(!c9&&!da){if((c8=cK.exec(c5))){if((c4=c8[1])){if(c6===9){c3=e.getElementById(c4);if(c3&&c3.parentNode){if(c3.id===c4){c7.push(c3);return c7}}else{return c7}}else{if(e.ownerDocument&&(c3=e.ownerDocument.getElementById(c4))&&cA(e,c3)&&c3.id===c4){c7.push(c3);return c7}}}else{if(c8[2]){cS.apply(c7,cj.call(e.getElementsByTagName(c5),0));return c7}else{if((c4=c8[3])&&cC&&e.getElementsByClassName){cS.apply(c7,cj.call(e.getElementsByClassName(c4),0));return c7}}}}}return cV(c5,e,c7,da,c9)};var cG=cN.selectors={cacheLength:50,match:cE,order:["ID","TAG"],attrHandle:{},createPseudo:cY,find:{ID:b8?function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e&&e.parentNode?[e]:[]}}:function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e?e.id===c5||typeof e.getAttributeNode!==cw&&e.getAttributeNode("id").value===c5?[e]:cg:[]}},TAG:b5?function(e,c3){if(typeof c3.getElementsByTagName!==cw){return c3.getElementsByTagName(e)}}:function(e,c6){var c5=c6.getElementsByTagName(e);if(e==="*"){var c7,c4=[],c3=0;for(;(c7=c5[c3]);c3++){if(c7.nodeType===1){c4.push(c7)}}return c4}return c5}},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){e[1]=e[1].replace(cs,"");e[3]=(e[4]||e[5]||"").replace(cs,"");if(e[2]==="~="){e[3]=" "+e[3]+" "}return e.slice(0,4)},CHILD:function(e){e[1]=e[1].toLowerCase();if(e[1]==="nth"){if(!e[2]){cN.error(e[0])}e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd"));e[4]=+((e[6]+e[7])||e[2]==="odd")}else{if(e[2]){cN.error(e[0])}}return e},PSEUDO:function(e){var c3,c4=e[4];if(cE.CHILD.test(e[0])){return null}if(c4&&(c3=cJ.exec(c4))&&c3.pop()){e[0]=e[0].slice(0,c3[0].length-c4.length-1);c4=c3[0].slice(0,-1)}e.splice(2,3,c4||e[3]);return e}},filter:{ID:b8?function(e){e=e.replace(cs,"");return function(c3){return c3.getAttribute("id")===e}}:function(e){e=e.replace(cs,"");return function(c4){var c3=typeof c4.getAttributeNode!==cw&&c4.getAttributeNode("id");return c3&&c3.value===e}},TAG:function(e){if(e==="*"){return function(){return true}}e=e.replace(cs,"").toLowerCase();return function(c3){return c3.nodeName&&c3.nodeName.toLowerCase()===e}},CLASS:function(e){var c3=cR[e];if(!c3){c3=cR[e]=new RegExp("(^|"+cz+")"+e+"("+cz+"|$)");cq.push(e);if(cq.length>cG.cacheLength){delete cR[cq.shift()]}}return function(c4){return c3.test(c4.className||(typeof c4.getAttribute!==cw&&c4.getAttribute("class"))||"")}},ATTR:function(c4,c3,e){if(!c3){return function(c5){return cN.attr(c5,c4)!=null}}return function(c6){var c5=cN.attr(c6,c4),c7=c5+"";if(c5==null){return c3==="!="}switch(c3){case"=":return c7===e;case"!=":return c7!==e;case"^=":return e&&c7.indexOf(e)===0;case"*=":return e&&c7.indexOf(e)>-1;case"$=":return e&&c7.substr(c7.length-e.length)===e;case"~=":return(" "+c7+" ").indexOf(e)>-1;case"|=":return c7===e||c7.substr(0,e.length+1)===e+"-"}}},CHILD:function(c3,c5,c6,c4){if(c3==="nth"){var e=ce++;return function(da){var c7,db,c9=0,c8=da;if(c6===1&&c4===0){return true}c7=da.parentNode;if(c7&&(c7[cW]!==e||!da.sizset)){for(c8=c7.firstChild;c8;c8=c8.nextSibling){if(c8.nodeType===1){c8.sizset=++c9;if(c8===da){break}}}c7[cW]=e}db=da.sizset-c4;if(c6===0){return db===0}else{return(db%c6===0&&db/c6>=0)}}}return function(c8){var c7=c8;switch(c3){case"only":case"first":while((c7=c7.previousSibling)){if(c7.nodeType===1){return false}}if(c3==="first"){return true}c7=c8;case"last":while((c7=c7.nextSibling)){if(c7.nodeType===1){return false}}return true}}},PSEUDO:function(c6,c5,c3,e){var c4=cG.pseudos[c6]||cG.pseudos[c6.toLowerCase()];if(!c4){cN.error("unsupported pseudo: "+c6)}if(!c4.sizzleFilter){return c4}return c4(c5,c3,e)}},pseudos:{not:cY(function(e,c4,c3){var c5=cb(e.replace(cU,"$1"),c4,c3);return function(c6){return !c5(c6)}}),enabled:function(e){return e.disabled===false},disabled:function(e){return e.disabled===true},checked:function(e){var c3=e.nodeName.toLowerCase();return(c3==="input"&&!!e.checked)||(c3==="option"&&!!e.selected)},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !cG.pseudos.empty(e)},empty:function(c3){var e;c3=c3.firstChild;while(c3){if(c3.nodeName>"@"||(e=c3.nodeType)===3||e===4){return false}c3=c3.nextSibling}return true},contains:cY(function(e){return function(c3){return(c3.textContent||c3.innerText||bZ(c3)).indexOf(e)>-1}}),has:cY(function(e){return function(c3){return cN(e,c3).length>0}}),header:function(e){return cp.test(e.nodeName)},text:function(c4){var c3,e;return c4.nodeName.toLowerCase()==="input"&&(c3=c4.type)==="text"&&((e=c4.getAttribute("type"))==null||e.toLowerCase()===c3)},radio:b3("radio"),checkbox:b3("checkbox"),file:b3("file"),password:b3("password"),image:b3("image"),submit:cr("submit"),reset:cr("reset"),button:function(c3){var e=c3.nodeName.toLowerCase();return e==="input"&&c3.type==="button"||e==="button"},input:function(e){return cM.test(e.nodeName)},focus:function(e){var c3=e.ownerDocument;return e===c3.activeElement&&(!c3.hasFocus||c3.hasFocus())&&!!(e.type||e.href)},active:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(c4,c3,e){return e?c4.slice(1):[c4[0]]},last:function(c5,c4,c3){var e=c5.pop();return c3?c5:[e]},even:function(c7,c6,c5){var c4=[],c3=c5?1:0,e=c7.length;for(;c30?c6(c5,c8,c7):[]}function cQ(dc,e,da,c4,dg){var c7,c3,c6,di,c9,dh,db,df,dd=0,de=dg.length,c5=cE.POS,c8=new RegExp("^"+c5.source+"(?!"+cz+")","i"),dj=function(){var dl=1,dk=arguments.length-2;for(;dlc6){db=dc.slice(c6,c7.index);c6=df;dh=[e];if(cF.test(db)){if(c9){dh=c9}c9=c4}if((c3=cX.test(db))){db=db.slice(0,-5).replace(cF,"$&*")}if(c7.length>1){c7[0].replace(c8,dj)}c9=cI(db,c7[1],c7[2],dh,c9,c3)}}if(c9){di=di.concat(c9);if((db=dc.slice(c6))&&db!==")"){if(cF.test(db)){cm(db,di,da,c4)}else{cN(db,e,da,c4?c4.concat(c9):c9)}}else{cS.apply(da,di)}}else{cN(dc,e,da,c4)}}return de===1?da:cN.uniqueSort(da)}function b1(c8,c4,db){var dd,dc,de,c6=[],c9=0,da=cJ.exec(c8),c3=!da.pop()&&!da.pop(),df=c3&&c8.match(ct)||[""],e=cG.preFilter,c5=cG.filter,c7=!db&&c4!==b6;for(;(dc=df[c9])!=null&&c3;c9++){c6.push(dd=[]);if(c7){dc=" "+dc}while(dc){c3=false;if((da=cF.exec(dc))){dc=dc.slice(da[0].length);c3=dd.push({part:da.pop().replace(cU," "),captures:da})}for(de in c5){if((da=cE[de].exec(dc))&&(!e[de]||(da=e[de](da,c4,db)))){dc=dc.slice(da.shift().length);c3=dd.push({part:de,captures:da})}}if(!c3){break}}}if(!c3){cN.error(c8)}return c6}function cx(c6,c5,c4){var e=c5.dir,c3=ce++;if(!c6){c6=function(c7){return c7===c4}}return c5.first?function(c8,c7){while((c8=c8[e])){if(c8.nodeType===1){return c6(c8,c7)&&c8}}}:function(c9,c8){var c7,da=c3+"."+co,db=da+"."+cT;while((c9=c9[e])){if(c9.nodeType===1){if((c7=c9[cW])===db){return c9.sizset}else{if(typeof c7==="string"&&c7.indexOf(da)===0){if(c9.sizset){return c9}}else{c9[cW]=db;if(c6(c9,c8)){c9.sizset=true;return c9}c9.sizset=false}}}}}}function cv(e,c3){return e?function(c6,c5){var c4=c3(c6,c5);return c4&&e(c4===true?c6:c4,c5)}:c3}function cy(c7,c5,e){var c4,c6,c3=0;for(;(c4=c7[c3]);c3++){if(cG.relative[c4.part]){c6=cx(c6,cG.relative[c4.part],c5)}else{c4.captures.push(c5,e);c6=cv(c6,cG.filter[c4.part].apply(null,c4.captures))}}return c6}function b4(e){return function(c5,c4){var c6,c3=0;for(;(c6=e[c3]);c3++){if(c6(c5,c4)){return true}}return false}}var cb=cN.compile=function(e,c5,c3){var c8,c7,c4,c6=cl[e];if(c6&&c6.context===c5){return c6}c7=b1(e,c5,c3);for(c4=0;(c8=c7[c4]);c4++){c7[c4]=cy(c8,c5,c3)}c6=cl[e]=b4(c7);c6.context=c5;c6.runs=c6.dirruns=0;cu.push(e);if(cu.length>cG.cacheLength){delete cl[cu.shift()]}return c6};cN.matches=function(c3,e){return cN(c3,null,null,e)};cN.matchesSelector=function(e,c3){return cN(c3,null,null,[e]).length>0};var cV=function(c6,c3,c8,dc,db){c6=c6.replace(cU,"$1");var e,dd,c9,de,c4,c5,dg,dh,c7,da=c6.match(ct),df=c6.match(cZ),di=c3.nodeType;if(cE.POS.test(c6)){return cQ(c6,c3,c8,dc,da)}if(dc){e=cj.call(dc,0)}else{if(da&&da.length===1){if(df.length>1&&di===9&&!db&&(da=cE.ID.exec(df[0]))){c3=cG.find.ID(da[1],c3,db)[0];if(!c3){return c8}c6=c6.slice(df.shift().length)}dh=((da=cP.exec(df[0]))&&!da.index&&c3.parentNode)||c3;c7=df.pop();c5=c7.split(":not")[0];for(c9=0,de=cG.order.length;c9";if(!c9.querySelectorAll("[selected]").length){c3.push("\\["+cz+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)")}if(!c9.querySelectorAll(":checked").length){c3.push(":checked")}});cH(function(c9){c9.innerHTML="

    ";if(c9.querySelectorAll("[test^='']").length){c3.push("[*^$]="+cz+"*(?:\"\"|'')")}c9.innerHTML="";if(!c9.querySelectorAll(":enabled").length){c3.push(":enabled",":disabled")}});c3=c3.length&&new RegExp(c3.join("|"));cV=function(de,da,df,dh,dg){if(!dh&&!dg&&(!c3||!c3.test(de))){if(da.nodeType===9){try{cS.apply(df,cj.call(da.querySelectorAll(de),0));return df}catch(dd){}}else{if(da.nodeType===1&&da.nodeName.toLowerCase()!=="object"){var dc=da.getAttribute("id"),c9=dc||cW,db=cP.test(de)&&da.parentNode||da;if(dc){c9=c9.replace(c6,"\\$&")}else{da.setAttribute("id",c9)}try{cS.apply(df,cj.call(db.querySelectorAll(de.replace(ct,"[id='"+c9+"'] $&")),0));return df}catch(dd){}finally{if(!dc){da.removeAttribute("id")}}}}}return c8(de,da,df,dh,dg)};if(c5){cH(function(da){c7=c5.call(da,"div");try{c5.call(da,"[test!='']:sizzle");e.push(cG.match.PSEUDO)}catch(c9){}});e=new RegExp(e.join("|"));cN.matchesSelector=function(da,dc){dc=dc.replace(c4,"='$1']");if(!ck(da)&&!e.test(dc)&&(!c3||!c3.test(dc))){try{var c9=c5.call(da,dc);if(c9||c7||da.document&&da.document.nodeType!==11){return c9}}catch(db){}}return cN(dc,null,null,[da]).length>0}}})()}cN.attr=bG.attr;bG.find=cN;bG.expr=cN.selectors;bG.expr[":"]=bG.expr.pseudos;bG.unique=cN.uniqueSort;bG.text=cN.getText;bG.isXMLDoc=cN.isXML;bG.contains=cN.contains})(a2);var ag=/Until$/,bq=/^(?:parents|prev(?:Until|All))/,al=/^.[^:#\[\.,]*$/,z=bG.expr.match.needsContext,bu={children:true,contents:true,next:true,prev:true};bG.fn.extend({find:function(e){var b2,bZ,b4,b5,b3,b1,b0=this;if(typeof e!=="string"){return bG(e).filter(function(){for(b2=0,bZ=b0.length;b20){for(b5=b4;b5=0:bG.filter(e,this).length>0:this.filter(e).length>0)},closest:function(b2,b1){var b3,b0=0,e=this.length,bZ=[],b4=z.test(b2)||typeof b2!=="string"?bG(b2,b1||this.context):0;for(;b0-1:bG.find.matchesSelector(b3,b2)){bZ.push(b3);break}b3=b3.parentNode}}bZ=bZ.length>1?bG.unique(bZ):bZ;return this.pushStack(bZ,"closest",b2)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return bG.inArray(this[0],bG(e))}return bG.inArray(e.jquery?e[0]:e,this)},add:function(e,bZ){var b1=typeof e==="string"?bG(e,bZ):bG.makeArray(e&&e.nodeType?[e]:e),b0=bG.merge(this.get(),b1);return this.pushStack(aR(b1[0])||aR(b0[0])?b0:bG.unique(b0))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});bG.fn.andSelf=bG.fn.addBack;function aR(e){return !e||!e.parentNode||e.parentNode.nodeType===11}function aY(bZ,e){do{bZ=bZ[e]}while(bZ&&bZ.nodeType!==1);return bZ}bG.each({parent:function(bZ){var e=bZ.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return bG.dir(e,"parentNode")},parentsUntil:function(bZ,e,b0){return bG.dir(bZ,"parentNode",b0)},next:function(e){return aY(e,"nextSibling")},prev:function(e){return aY(e,"previousSibling")},nextAll:function(e){return bG.dir(e,"nextSibling")},prevAll:function(e){return bG.dir(e,"previousSibling")},nextUntil:function(bZ,e,b0){return bG.dir(bZ,"nextSibling",b0)},prevUntil:function(bZ,e,b0){return bG.dir(bZ,"previousSibling",b0)},siblings:function(e){return bG.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return bG.sibling(e.firstChild)},contents:function(e){return bG.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:bG.merge([],e.childNodes)}},function(e,bZ){bG.fn[e]=function(b2,b0){var b1=bG.map(this,bZ,b2);if(!ag.test(e)){b0=b2}if(b0&&typeof b0==="string"){b1=bG.filter(b0,b1)}b1=this.length>1&&!bu[e]?bG.unique(b1):b1;if(this.length>1&&bq.test(e)){b1=b1.reverse()}return this.pushStack(b1,e,a4.call(arguments).join(","))}});bG.extend({filter:function(b0,e,bZ){if(bZ){b0=":not("+b0+")"}return e.length===1?bG.find.matchesSelector(e[0],b0)?[e[0]]:[]:bG.find.matches(b0,e)},dir:function(b0,bZ,b2){var e=[],b1=b0[bZ];while(b1&&b1.nodeType!==9&&(b2===aB||b1.nodeType!==1||!bG(b1).is(b2))){if(b1.nodeType===1){e.push(b1)}b1=b1[bZ]}return e},sibling:function(b0,bZ){var e=[];for(;b0;b0=b0.nextSibling){if(b0.nodeType===1&&b0!==bZ){e.push(b0)}}return e}});function aM(b1,b0,e){b0=b0||0;if(bG.isFunction(b0)){return bG.grep(b1,function(b3,b2){var b4=!!b0.call(b3,b2,b3);return b4===e})}else{if(b0.nodeType){return bG.grep(b1,function(b3,b2){return(b3===b0)===e})}else{if(typeof b0==="string"){var bZ=bG.grep(b1,function(b2){return b2.nodeType===1});if(al.test(b0)){return bG.filter(b0,bZ,!e)}else{b0=bG.filter(b0,bZ)}}}}return bG.grep(b1,function(b3,b2){return(bG.inArray(b3,b0)>=0)===e})}function B(e){var b0=c.split("|"),bZ=e.createDocumentFragment();if(bZ.createElement){while(b0.length){bZ.createElement(b0.pop())}}return bZ}var c="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",av=/ jQuery\d+="(?:null|\d+)"/g,bY=/^\s+/,ay=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,p=/<([\w:]+)/,bT=/]","i"),aE=/^(?:checkbox|radio)$/,bR=/checked\s*(?:[^=]|=\s*.checked.)/i,bw=/\/(java|ecma)script/i,aH=/^\s*\s*$/g,T={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},aQ=B(o),l=aQ.appendChild(o.createElement("div"));T.optgroup=T.option;T.tbody=T.tfoot=T.colgroup=T.caption=T.thead;T.th=T.td;if(!bG.support.htmlSerialize){T._default=[1,"X
    ","
    "]}bG.fn.extend({text:function(e){return bG.access(this,function(bZ){return bZ===aB?bG.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).createTextNode(bZ))},null,e,arguments.length)},wrapAll:function(e){if(bG.isFunction(e)){return this.each(function(b0){bG(this).wrapAll(e.call(this,b0))})}if(this[0]){var bZ=bG(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bZ.insertBefore(this[0])}bZ.map(function(){var b0=this;while(b0.firstChild&&b0.firstChild.nodeType===1){b0=b0.firstChild}return b0}).append(this)}return this},wrapInner:function(e){if(bG.isFunction(e)){return this.each(function(bZ){bG(this).wrapInner(e.call(this,bZ))})}return this.each(function(){var bZ=bG(this),b0=bZ.contents();if(b0.length){b0.wrapAll(e)}else{bZ.append(e)}})},wrap:function(e){var bZ=bG.isFunction(e);return this.each(function(b0){bG(this).wrapAll(bZ?e.call(this,b0):e)})},unwrap:function(){return this.parent().each(function(){if(!bG.nodeName(this,"body")){bG(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.insertBefore(e,this.firstChild)}})},before:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(e,this),"before",this.selector)}},after:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this.nextSibling)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(this,e),"after",this.selector)}},remove:function(e,b1){var b0,bZ=0;for(;(b0=this[bZ])!=null;bZ++){if(!e||bG.filter(e,[b0]).length){if(!b1&&b0.nodeType===1){bG.cleanData(b0.getElementsByTagName("*"));bG.cleanData([b0])}if(b0.parentNode){b0.parentNode.removeChild(b0)}}}return this},empty:function(){var bZ,e=0;for(;(bZ=this[e])!=null;e++){if(bZ.nodeType===1){bG.cleanData(bZ.getElementsByTagName("*"))}while(bZ.firstChild){bZ.removeChild(bZ.firstChild)}}return this},clone:function(bZ,e){bZ=bZ==null?false:bZ;e=e==null?bZ:e;return this.map(function(){return bG.clone(this,bZ,e)})},html:function(e){return bG.access(this,function(b2){var b1=this[0]||{},b0=0,bZ=this.length;if(b2===aB){return b1.nodeType===1?b1.innerHTML.replace(av,""):aB}if(typeof b2==="string"&&!aj.test(b2)&&(bG.support.htmlSerialize||!K.test(b2))&&(bG.support.leadingWhitespace||!bY.test(b2))&&!T[(p.exec(b2)||["",""])[1].toLowerCase()]){b2=b2.replace(ay,"<$1>");try{for(;b01&&typeof b5==="string"&&bR.test(b5)){return this.each(function(){bG(this).domManip(b4,b8,b7)})}if(bG.isFunction(b5)){return this.each(function(ca){var b9=bG(this);b4[0]=b5.call(this,ca,b8?b9.html():aB);b9.domManip(b4,b8,b7)})}if(this[0]){b0=bG.buildFragment(b4,this,bZ);b3=b0.fragment;b2=b3.firstChild;if(b3.childNodes.length===1){b3=b2}if(b2){b8=b8&&bG.nodeName(b2,"tr");for(b6=b0.cacheable||e-1;b10?this.clone(true):this).get();bG(b6[b4])[bZ](b2);b3=b3.concat(b2)}return this.pushStack(b3,e,b6.selector)}}});function m(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function bS(e){if(aE.test(e.type)){e.defaultChecked=e.checked}}bG.extend({clone:function(b2,b4,b0){var e,bZ,b1,b3;if(bG.support.html5Clone||bG.isXMLDoc(b2)||!K.test("<"+b2.nodeName+">")){b3=b2.cloneNode(true)}else{l.innerHTML=b2.outerHTML;l.removeChild(b3=l.firstChild)}if((!bG.support.noCloneEvent||!bG.support.noCloneChecked)&&(b2.nodeType===1||b2.nodeType===11)&&!bG.isXMLDoc(b2)){G(b2,b3);e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){if(bZ[b1]){G(e[b1],bZ[b1])}}}if(b4){ao(b2,b3);if(b0){e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){ao(e[b1],bZ[b1])}}}e=bZ=null;return b3},clean:function(cb,b0,e,b1){var b7,b3,ca,cf,b4,ce,b5,b2,bZ,b9,cd,b6,b8=0,cc=[];if(!b0||typeof b0.createDocumentFragment==="undefined"){b0=o}for(b3=b0===o&&aQ;(ca=cb[b8])!=null;b8++){if(typeof ca==="number"){ca+=""}if(!ca){continue}if(typeof ca==="string"){if(!J.test(ca)){ca=b0.createTextNode(ca)}else{b3=b3||B(b0);b5=b5||b3.appendChild(b0.createElement("div"));ca=ca.replace(ay,"<$1>");cf=(p.exec(ca)||["",""])[1].toLowerCase();b4=T[cf]||T._default;ce=b4[0];b5.innerHTML=b4[1]+ca+b4[2];while(ce--){b5=b5.lastChild}if(!bG.support.tbody){b2=bT.test(ca);bZ=cf==="table"&&!b2?b5.firstChild&&b5.firstChild.childNodes:b4[1]===""&&!b2?b5.childNodes:[];for(b7=bZ.length-1;b7>=0;--b7){if(bG.nodeName(bZ[b7],"tbody")&&!bZ[b7].childNodes.length){bZ[b7].parentNode.removeChild(bZ[b7])}}}if(!bG.support.leadingWhitespace&&bY.test(ca)){b5.insertBefore(b0.createTextNode(bY.exec(ca)[0]),b5.firstChild)}ca=b5.childNodes;b5=b3.lastChild}}if(ca.nodeType){cc.push(ca)}else{cc=bG.merge(cc,ca)}}if(b5){b3.removeChild(b5);ca=b5=b3=null}if(!bG.support.appendChecked){for(b8=0;(ca=cc[b8])!=null;b8++){if(bG.nodeName(ca,"input")){bS(ca)}else{if(typeof ca.getElementsByTagName!=="undefined"){bG.grep(ca.getElementsByTagName("input"),bS)}}}}if(e){cd=function(cg){if(!cg.type||bw.test(cg.type)){return b1?b1.push(cg.parentNode?cg.parentNode.removeChild(cg):cg):e.appendChild(cg)}};for(b8=0;(ca=cc[b8])!=null;b8++){if(!(bG.nodeName(ca,"script")&&cd(ca))){e.appendChild(ca);if(typeof ca.getElementsByTagName!=="undefined"){b6=bG.grep(bG.merge([],ca.getElementsByTagName("script")),cd);cc.splice.apply(cc,[b8+1,0].concat(b6));b8+=b6.length}}}}return cc},cleanData:function(bZ,b7){var b2,b0,b1,b6,b3=0,b8=bG.expando,e=bG.cache,b4=bG.support.deleteExpando,b5=bG.event.special;for(;(b1=bZ[b3])!=null;b3++){if(b7||bG.acceptData(b1)){b0=b1[b8];b2=b0&&e[b0];if(b2){if(b2.events){for(b6 in b2.events){if(b5[b6]){bG.event.remove(b1,b6)}else{bG.removeEvent(b1,b6,b2.handle)}}}if(e[b0]){delete e[b0];if(b4){delete b1[b8]}else{if(b1.removeAttribute){b1.removeAttribute(b8)}else{b1[b8]=null}}bG.deletedIds.push(b0)}}}}}});(function(){var e,bZ;bG.uaMatch=function(b1){b1=b1.toLowerCase();var b0=/(chrome)[ \/]([\w.]+)/.exec(b1)||/(webkit)[ \/]([\w.]+)/.exec(b1)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(b1)||/(msie) ([\w.]+)/.exec(b1)||b1.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}};e=bG.uaMatch(d.userAgent);bZ={};if(e.browser){bZ[e.browser]=true;bZ.version=e.version}if(bZ.webkit){bZ.safari=true}bG.browser=bZ;bG.sub=function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bG.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bG&&!(b4 instanceof b0)){b4=b0(b4)}return bG.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(o);return b0}})();var F,az,aW,be=/alpha\([^)]*\)/i,aS=/opacity=([^)]*)/,bk=/^(top|right|bottom|left)$/,aZ=/^margin/,a8=new RegExp("^("+bx+")(.*)$","i"),W=new RegExp("^("+bx+")(?!px)[a-z%]+$","i"),S=new RegExp("^([-+])=("+bx+")","i"),bh={},a9={position:"absolute",visibility:"hidden",display:"block"},bA={letterSpacing:0,fontWeight:400,lineHeight:1},bQ=["Top","Right","Bottom","Left"],ar=["Webkit","O","Moz","ms"],aJ=bG.fn.toggle;function b(b1,bZ){if(bZ in b1){return bZ}var b2=bZ.charAt(0).toUpperCase()+bZ.slice(1),e=bZ,b0=ar.length;while(b0--){bZ=ar[b0]+b2;if(bZ in b1){return bZ}}return e}function Q(bZ,e){bZ=e||bZ;return bG.css(bZ,"display")==="none"||!bG.contains(bZ.ownerDocument,bZ)}function t(b3,e){var b2,b4,bZ=[],b0=0,b1=b3.length;for(;b01)},show:function(){return t(this,true)},hide:function(){return t(this)},toggle:function(b0,bZ){var e=typeof b0==="boolean";if(bG.isFunction(b0)&&bG.isFunction(bZ)){return aJ.apply(this,arguments)}return this.each(function(){if(e?b0:Q(this)){bG(this).show()}else{bG(this).hide()}})}});bG.extend({cssHooks:{opacity:{get:function(b0,bZ){if(bZ){var e=F(b0,"opacity");return e===""?"1":e}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":bG.support.cssFloat?"cssFloat":"styleFloat"},style:function(b1,b0,b7,b2){if(!b1||b1.nodeType===3||b1.nodeType===8||!b1.style){return}var b5,b6,b8,b3=bG.camelCase(b0),bZ=b1.style;b0=bG.cssProps[b3]||(bG.cssProps[b3]=b(bZ,b3));b8=bG.cssHooks[b0]||bG.cssHooks[b3];if(b7!==aB){b6=typeof b7;if(b6==="string"&&(b5=S.exec(b7))){b7=(b5[1]+1)*b5[2]+parseFloat(bG.css(b1,b0));b6="number"}if(b7==null||b6==="number"&&isNaN(b7)){return}if(b6==="number"&&!bG.cssNumber[b3]){b7+="px"}if(!b8||!("set" in b8)||(b7=b8.set(b1,b7,b2))!==aB){try{bZ[b0]=b7}catch(b4){}}}else{if(b8&&"get" in b8&&(b5=b8.get(b1,false,b2))!==aB){return b5}return bZ[b0]}},css:function(b4,b2,b3,bZ){var b5,b1,e,b0=bG.camelCase(b2);b2=bG.cssProps[b0]||(bG.cssProps[b0]=b(b4.style,b0));e=bG.cssHooks[b2]||bG.cssHooks[b0];if(e&&"get" in e){b5=e.get(b4,true,bZ)}if(b5===aB){b5=F(b4,b2)}if(b5==="normal"&&b2 in bA){b5=bA[b2]}if(b3||bZ!==aB){b1=parseFloat(b5);return b3||bG.isNumeric(b1)?b1||0:b5}return b5},swap:function(b2,b1,b3){var b0,bZ,e={};for(bZ in b1){e[bZ]=b2.style[bZ];b2.style[bZ]=b1[bZ]}b0=b3.call(b2);for(bZ in b1){b2.style[bZ]=e[bZ]}return b0}});if(a2.getComputedStyle){F=function(b5,bZ){var e,b2,b1,b4,b3=getComputedStyle(b5,null),b0=b5.style;if(b3){e=b3[bZ];if(e===""&&!bG.contains(b5.ownerDocument.documentElement,b5)){e=bG.style(b5,bZ)}if(W.test(e)&&aZ.test(bZ)){b2=b0.width;b1=b0.minWidth;b4=b0.maxWidth;b0.minWidth=b0.maxWidth=b0.width=e;e=b3.width;b0.width=b2;b0.minWidth=b1;b0.maxWidth=b4}}return e}}else{if(o.documentElement.currentStyle){F=function(b2,b0){var b3,e,bZ=b2.currentStyle&&b2.currentStyle[b0],b1=b2.style;if(bZ==null&&b1&&b1[b0]){bZ=b1[b0]}if(W.test(bZ)&&!bk.test(b0)){b3=b1.left;e=b2.runtimeStyle&&b2.runtimeStyle.left;if(e){b2.runtimeStyle.left=b2.currentStyle.left}b1.left=b0==="fontSize"?"1em":bZ;bZ=b1.pixelLeft+"px";b1.left=b3;if(e){b2.runtimeStyle.left=e}}return bZ===""?"auto":bZ}}}function aG(e,b0,b1){var bZ=a8.exec(b0);return bZ?Math.max(0,bZ[1]-(b1||0))+(bZ[2]||"px"):b0}function at(b1,bZ,e,b3){var b0=e===(b3?"border":"content")?4:bZ==="width"?1:0,b2=0;for(;b0<4;b0+=2){if(e==="margin"){b2+=bG.css(b1,e+bQ[b0],true)}if(b3){if(e==="content"){b2-=parseFloat(F(b1,"padding"+bQ[b0]))||0}if(e!=="margin"){b2-=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}else{b2+=parseFloat(F(b1,"padding"+bQ[b0]))||0;if(e!=="padding"){b2+=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}}return b2}function v(b1,bZ,e){var b2=bZ==="width"?b1.offsetWidth:b1.offsetHeight,b0=true,b3=bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box";if(b2<=0){b2=F(b1,bZ);if(b2<0||b2==null){b2=b1.style[bZ]}if(W.test(b2)){return b2}b0=b3&&(bG.support.boxSizingReliable||b2===b1.style[bZ]);b2=parseFloat(b2)||0}return(b2+at(b1,bZ,e||(b3?"border":"content"),b0))+"px"}function bC(b0){if(bh[b0]){return bh[b0]}var e=bG("<"+b0+">").appendTo(o.body),bZ=e.css("display");e.remove();if(bZ==="none"||bZ===""){az=o.body.appendChild(az||bG.extend(o.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!aW||!az.createElement){aW=(az.contentWindow||az.contentDocument).document;aW.write("");aW.close()}e=aW.body.appendChild(aW.createElement(b0));bZ=F(e,"display");o.body.removeChild(az)}bh[b0]=bZ;return bZ}bG.each(["height","width"],function(bZ,e){bG.cssHooks[e]={get:function(b2,b1,b0){if(b1){if(b2.offsetWidth!==0||F(b2,"display")!=="none"){return v(b2,e,b0)}else{return bG.swap(b2,a9,function(){return v(b2,e,b0)})}}},set:function(b1,b2,b0){return aG(b1,b2,b0?at(b1,e,b0,bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box"):0)}}});if(!bG.support.opacity){bG.cssHooks.opacity={get:function(bZ,e){return aS.test((e&&bZ.currentStyle?bZ.currentStyle.filter:bZ.style.filter)||"")?(0.01*parseFloat(RegExp.$1))+"":e?"1":""},set:function(b2,b3){var b1=b2.style,bZ=b2.currentStyle,e=bG.isNumeric(b3)?"alpha(opacity="+b3*100+")":"",b0=bZ&&bZ.filter||b1.filter||"";b1.zoom=1;if(b3>=1&&bG.trim(b0.replace(be,""))===""&&b1.removeAttribute){b1.removeAttribute("filter");if(bZ&&!bZ.filter){return}}b1.filter=be.test(b0)?b0.replace(be,e):b0+" "+e}}}bG(function(){if(!bG.support.reliableMarginRight){bG.cssHooks.marginRight={get:function(bZ,e){return bG.swap(bZ,{display:"inline-block"},function(){if(e){return F(bZ,"marginRight")}})}}}if(!bG.support.pixelPosition&&bG.fn.position){bG.each(["top","left"],function(e,bZ){bG.cssHooks[bZ]={get:function(b2,b1){if(b1){var b0=F(b2,bZ);return W.test(b0)?bG(b2).position()[bZ]+"px":b0}}}})}});if(bG.expr&&bG.expr.filters){bG.expr.filters.hidden=function(e){return(e.offsetWidth===0&&e.offsetHeight===0)||(!bG.support.reliableHiddenOffsets&&((e.style&&e.style.display)||F(e,"display"))==="none")};bG.expr.filters.visible=function(e){return !bG.expr.filters.hidden(e)}}bG.each({margin:"",padding:"",border:"Width"},function(e,bZ){bG.cssHooks[e+bZ]={expand:function(b2){var b1,b3=typeof b2==="string"?b2.split(" "):[b2],b0={};for(b1=0;b1<4;b1++){b0[e+bQ[b1]+bZ]=b3[b1]||b3[b1-2]||b3[0]}return b0}};if(!aZ.test(e)){bG.cssHooks[e+bZ].set=aG}});var bs=/%20/g,aP=/\[\]$/,U=/\r?\n/g,bz=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aD=/^(?:select|textarea)/i;bG.fn.extend({serialize:function(){return bG.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?bG.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||aD.test(this.nodeName)||bz.test(this.type))}).map(function(e,bZ){var b0=bG(this).val();return b0==null?null:bG.isArray(b0)?bG.map(b0,function(b2,b1){return{name:bZ.name,value:b2.replace(U,"\r\n")}}):{name:bZ.name,value:b0.replace(U,"\r\n")}}).get()}});bG.param=function(e,b0){var b1,bZ=[],b2=function(b3,b4){b4=bG.isFunction(b4)?b4():(b4==null?"":b4);bZ[bZ.length]=encodeURIComponent(b3)+"="+encodeURIComponent(b4)};if(b0===aB){b0=bG.ajaxSettings&&bG.ajaxSettings.traditional}if(bG.isArray(e)||(e.jquery&&!bG.isPlainObject(e))){bG.each(e,function(){b2(this.name,this.value)})}else{for(b1 in e){k(b1,e[b1],b0,b2)}}return bZ.join("&").replace(bs,"+")};function k(b0,b2,bZ,b1){var e;if(bG.isArray(b2)){bG.each(b2,function(b4,b3){if(bZ||aP.test(b0)){b1(b0,b3)}else{k(b0+"["+(typeof b3==="object"?b4:"")+"]",b3,bZ,b1)}})}else{if(!bZ&&bG.type(b2)==="object"){for(e in b2){k(b0+"["+e+"]",b2[e],bZ,b1)}}else{b1(b0,b2)}}}var Y,bX,an=/#.*$/,ad=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,C=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,s=/^(?:GET|HEAD)$/,aC=/^\/\//,bN=/\?/,g=/)<[^<]*)*<\/script>/gi,P=/([?&])_=[^&]*/,aT=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,bW=bG.fn.load,w={},a6={},aX=["*/"]+["*"];try{Y=aI.href}catch(bd){Y=o.createElement("a");Y.href="";Y=Y.href}bX=aT.exec(Y.toLowerCase())||[];function bI(e){return function(b2,b4){if(typeof b2!=="string"){b4=b2;b2="*"}var bZ,b5,b6,b1=b2.toLowerCase().split(aV),b0=0,b3=b1.length;if(bG.isFunction(b4)){for(;b0=0){e=b1.slice(b3,b1.length);b1=b1.slice(0,b3)}if(bG.isFunction(b4)){b5=b4;b4=aB}else{if(typeof b4==="object"){b2="POST"}}bG.ajax({url:b1,type:b2,dataType:"html",data:b4,complete:function(b7,b6){if(b5){bZ.each(b5,b0||[b7.responseText,b6,b7])}}}).done(function(b6){b0=arguments;bZ.html(e?bG("
    ").append(b6.replace(g,"")).find(e):b6)});return this};bG.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bZ){bG.fn[bZ]=function(b0){return this.on(bZ,b0)}});bG.each(["get","post"],function(e,bZ){bG[bZ]=function(b0,b2,b3,b1){if(bG.isFunction(b2)){b1=b1||b3;b3=b2;b2=aB}return bG.ajax({type:bZ,url:b0,data:b2,success:b3,dataType:b1})}});bG.extend({getScript:function(e,bZ){return bG.get(e,aB,bZ,"script")},getJSON:function(e,bZ,b0){return bG.get(e,bZ,b0,"json")},ajaxSetup:function(bZ,e){if(e){u(bZ,bG.ajaxSettings)}else{e=bZ;bZ=bG.ajaxSettings}u(bZ,e);return bZ},ajaxSettings:{url:Y,isLocal:C.test(bX[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a2.String,"text html":true,"text json":bG.parseJSON,"text xml":bG.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:bI(w),ajaxTransport:bI(a6),ajax:function(b4,b1){if(typeof b4==="object"){b1=b4;b4=aB}b1=b1||{};var b7,cl,b2,cg,b9,cd,b0,cf,b8=bG.ajaxSetup({},b1),cn=b8.context||b8,cb=cn!==b8&&(cn.nodeType||cn instanceof bG)?bG(cn):bG.event,cm=bG.Deferred(),ci=bG.Callbacks("once memory"),b5=b8.statusCode||{},cc={},cj={},b3=0,b6="canceled",ce={readyState:0,setRequestHeader:function(co,cp){if(!b3){var e=co.toLowerCase();co=cj[e]=cj[e]||co;cc[co]=cp}return this},getAllResponseHeaders:function(){return b3===2?cl:null},getResponseHeader:function(co){var e;if(b3===2){if(!b2){b2={};while((e=ad.exec(cl))){b2[e[1].toLowerCase()]=e[2]}}e=b2[co.toLowerCase()]}return e===aB?null:e},overrideMimeType:function(e){if(!b3){b8.mimeType=e}return this},abort:function(e){e=e||b6;if(cg){cg.abort(e)}ca(0,e);return this}};function ca(cs,co,ct,cq){var e,cw,cu,cr,cv,cp=co;if(b3===2){return}b3=2;if(b9){clearTimeout(b9)}cg=aB;cl=cq||"";ce.readyState=cs>0?4:0;if(ct){cr=h(b8,ce,ct)}if(cs>=200&&cs<300||cs===304){if(b8.ifModified){cv=ce.getResponseHeader("Last-Modified");if(cv){bG.lastModified[b7]=cv}cv=ce.getResponseHeader("Etag");if(cv){bG.etag[b7]=cv}}if(cs===304){cp="notmodified";e=true}else{e=ae(b8,cr);cp=e.state;cw=e.data;cu=e.error;e=!cu}}else{cu=cp;if(!cp||cs){cp="error";if(cs<0){cs=0}}}ce.status=cs;ce.statusText=""+(co||cp);if(e){cm.resolveWith(cn,[cw,cp,ce])}else{cm.rejectWith(cn,[ce,cp,cu])}ce.statusCode(b5);b5=aB;if(b0){cb.trigger("ajax"+(e?"Success":"Error"),[ce,b8,e?cw:cu])}ci.fireWith(cn,[ce,cp]);if(b0){cb.trigger("ajaxComplete",[ce,b8]);if(!(--bG.active)){bG.event.trigger("ajaxStop")}}}cm.promise(ce);ce.success=ce.done;ce.error=ce.fail;ce.complete=ci.add;ce.statusCode=function(co){if(co){var e;if(b3<2){for(e in co){b5[e]=[b5[e],co[e]]}}else{e=co[ce.status];ce.always(e)}}return this};b8.url=((b4||b8.url)+"").replace(an,"").replace(aC,bX[1]+"//");b8.dataTypes=bG.trim(b8.dataType||"*").toLowerCase().split(aV);if(b8.crossDomain==null){cd=aT.exec(b8.url.toLowerCase());b8.crossDomain=!!(cd&&(cd[1]!=bX[1]||cd[2]!=bX[2]||(cd[3]||(cd[1]==="http:"?80:443))!=(bX[3]||(bX[1]==="http:"?80:443))))}if(b8.data&&b8.processData&&typeof b8.data!=="string"){b8.data=bG.param(b8.data,b8.traditional)}r(w,b8,b1,ce);if(b3===2){return ce}b0=b8.global;b8.type=b8.type.toUpperCase();b8.hasContent=!s.test(b8.type);if(b0&&bG.active++===0){bG.event.trigger("ajaxStart")}if(!b8.hasContent){if(b8.data){b8.url+=(bN.test(b8.url)?"&":"?")+b8.data;delete b8.data}b7=b8.url;if(b8.cache===false){var bZ=bG.now(),ck=b8.url.replace(P,"$1_="+bZ);b8.url=ck+((ck===b8.url)?(bN.test(b8.url)?"&":"?")+"_="+bZ:"")}}if(b8.data&&b8.hasContent&&b8.contentType!==false||b1.contentType){ce.setRequestHeader("Content-Type",b8.contentType)}if(b8.ifModified){b7=b7||b8.url;if(bG.lastModified[b7]){ce.setRequestHeader("If-Modified-Since",bG.lastModified[b7])}if(bG.etag[b7]){ce.setRequestHeader("If-None-Match",bG.etag[b7])}}ce.setRequestHeader("Accept",b8.dataTypes[0]&&b8.accepts[b8.dataTypes[0]]?b8.accepts[b8.dataTypes[0]]+(b8.dataTypes[0]!=="*"?", "+aX+"; q=0.01":""):b8.accepts["*"]);for(cf in b8.headers){ce.setRequestHeader(cf,b8.headers[cf])}if(b8.beforeSend&&(b8.beforeSend.call(cn,ce,b8)===false||b3===2)){return ce.abort()}b6="abort";for(cf in {success:1,error:1,complete:1}){ce[cf](b8[cf])}cg=r(a6,b8,b1,ce);if(!cg){ca(-1,"No Transport")}else{ce.readyState=1;if(b0){cb.trigger("ajaxSend",[ce,b8])}if(b8.async&&b8.timeout>0){b9=setTimeout(function(){ce.abort("timeout")},b8.timeout)}try{b3=1;cg.send(cc,ca)}catch(ch){if(b3<2){ca(-1,ch)}else{throw ch}}}return ce},active:0,lastModified:{},etag:{}});function h(b7,b6,b3){var b2,b4,b1,e,bZ=b7.contents,b5=b7.dataTypes,b0=b7.responseFields;for(b4 in b0){if(b4 in b3){b6[b0[b4]]=b3[b4]}}while(b5[0]==="*"){b5.shift();if(b2===aB){b2=b7.mimeType||b6.getResponseHeader("content-type")}}if(b2){for(b4 in bZ){if(bZ[b4]&&bZ[b4].test(b2)){b5.unshift(b4);break}}}if(b5[0] in b3){b1=b5[0]}else{for(b4 in b3){if(!b5[0]||b7.converters[b4+" "+b5[0]]){b1=b4;break}if(!e){e=b4}}b1=b1||e}if(b1){if(b1!==b5[0]){b5.unshift(b1)}return b3[b1]}}function ae(b9,b1){var b7,bZ,b5,b3,b6=b9.dataTypes.slice(),b0=b6[0],b8={},b2=0;if(b9.dataFilter){b1=b9.dataFilter(b1,b9.dataType)}if(b6[1]){for(b7 in b9.converters){b8[b7.toLowerCase()]=b9.converters[b7]}}for(;(b5=b6[++b2]);){if(b5!=="*"){if(b0!=="*"&&b0!==b5){b7=b8[b0+" "+b5]||b8["* "+b5];if(!b7){for(bZ in b8){b3=bZ.split(" ");if(b3[1]===b5){b7=b8[b0+" "+b3[0]]||b8["* "+b3[0]];if(b7){if(b7===true){b7=b8[bZ]}else{if(b8[bZ]!==true){b5=b3[0];b6.splice(b2--,0,b5)}}break}}}}if(b7!==true){if(b7&&b9["throws"]){b1=b7(b1)}else{try{b1=b7(b1)}catch(b4){return{state:"parsererror",error:b7?b4:"No conversion from "+b0+" to "+b5}}}}}b0=b5}}return{state:"success",data:b1}}var bp=[],aw=/\?/,a5=/(=)\?(?=&|$)|\?\?/,bl=bG.now();bG.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=bp.pop()||(bG.expando+"_"+(bl++));this[e]=true;return e}});bG.ajaxPrefilter("json jsonp",function(b8,b3,b7){var b6,e,b5,b1=b8.data,bZ=b8.url,b0=b8.jsonp!==false,b4=b0&&a5.test(bZ),b2=b0&&!b4&&typeof b1==="string"&&!(b8.contentType||"").indexOf("application/x-www-form-urlencoded")&&a5.test(b1);if(b8.dataTypes[0]==="jsonp"||b4||b2){b6=b8.jsonpCallback=bG.isFunction(b8.jsonpCallback)?b8.jsonpCallback():b8.jsonpCallback;e=a2[b6];if(b4){b8.url=bZ.replace(a5,"$1"+b6)}else{if(b2){b8.data=b1.replace(a5,"$1"+b6)}else{if(b0){b8.url+=(aw.test(bZ)?"&":"?")+b8.jsonp+"="+b6}}}b8.converters["script json"]=function(){if(!b5){bG.error(b6+" was not called")}return b5[0]};b8.dataTypes[0]="json";a2[b6]=function(){b5=arguments};b7.always(function(){a2[b6]=e;if(b8[b6]){b8.jsonpCallback=b3.jsonpCallback;bp.push(b6)}if(b5&&bG.isFunction(e)){e(b5[0])}b5=e=aB});return"script"}});bG.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){bG.globalEval(e);return e}}});bG.ajaxPrefilter("script",function(e){if(e.cache===aB){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});bG.ajaxTransport("script",function(b0){if(b0.crossDomain){var e,bZ=o.head||o.getElementsByTagName("head")[0]||o.documentElement;return{send:function(b1,b2){e=o.createElement("script");e.async="async";if(b0.scriptCharset){e.charset=b0.scriptCharset}e.src=b0.url;e.onload=e.onreadystatechange=function(b4,b3){if(b3||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bZ&&e.parentNode){bZ.removeChild(e)}e=aB;if(!b3){b2(200,"success")}}};bZ.insertBefore(e,bZ.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var ah,aO=a2.ActiveXObject?function(){for(var e in ah){ah[e](0,1)}}:false,au=0;function bB(){try{return new a2.XMLHttpRequest()}catch(bZ){}}function bb(){try{return new a2.ActiveXObject("Microsoft.XMLHTTP")}catch(bZ){}}bG.ajaxSettings.xhr=a2.ActiveXObject?function(){return !this.isLocal&&bB()||bb()}:bB;(function(e){bG.extend(bG.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(bG.ajaxSettings.xhr());if(bG.support.ajax){bG.ajaxTransport(function(e){if(!e.crossDomain||bG.support.cors){var bZ;return{send:function(b5,b0){var b3,b2,b4=e.xhr();if(e.username){b4.open(e.type,e.url,e.async,e.username,e.password)}else{b4.open(e.type,e.url,e.async)}if(e.xhrFields){for(b2 in e.xhrFields){b4[b2]=e.xhrFields[b2]}}if(e.mimeType&&b4.overrideMimeType){b4.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!b5["X-Requested-With"]){b5["X-Requested-With"]="XMLHttpRequest"}try{for(b2 in b5){b4.setRequestHeader(b2,b5[b2])}}catch(b1){}b4.send((e.hasContent&&e.data)||null);bZ=function(ce,b8){var b9,b7,b6,cc,cb;try{if(bZ&&(b8||b4.readyState===4)){bZ=aB;if(b3){b4.onreadystatechange=bG.noop;if(aO){delete ah[b3]}}if(b8){if(b4.readyState!==4){b4.abort()}}else{b9=b4.status;b6=b4.getAllResponseHeaders();cc={};cb=b4.responseXML;if(cb&&cb.documentElement){cc.xml=cb}try{cc.text=b4.responseText}catch(ce){}try{b7=b4.statusText}catch(cd){b7=""}if(!b9&&e.isLocal&&!e.crossDomain){b9=cc.text?200:404}else{if(b9===1223){b9=204}}}}}catch(ca){if(!b8){b0(-1,ca)}}if(cc){b0(b9,b7,cc,b6)}};if(!e.async){bZ()}else{if(b4.readyState===4){setTimeout(bZ,0)}else{b3=++au;if(aO){if(!ah){ah={};bG(a2).unload(aO)}ah[b3]=bZ}b4.onreadystatechange=bZ}}},abort:function(){if(bZ){bZ(0,1)}}}}})}var L,ab,bO=/^(?:toggle|show|hide)$/,bH=new RegExp("^(?:([-+])=|)("+bx+")([a-z%]*)$","i"),bM=/queueHooks$/,ax=[i],a1={"*":[function(bZ,b5){var b2,b6,e,b7=this.createTween(bZ,b5),b3=bH.exec(b5),b4=b7.cur(),b0=+b4||0,b1=1;if(b3){b2=+b3[2];b6=b3[3]||(bG.cssNumber[bZ]?"":"px");if(b6!=="px"&&b0){b0=bG.css(b7.elem,bZ,true)||b2||1;do{e=b1=b1||".5";b0=b0/b1;bG.style(b7.elem,bZ,b0+b6);b1=b7.cur()/b4}while(b1!==1&&b1!==e)}b7.unit=b6;b7.start=b0;b7.end=b3[1]?b0+(b3[1]+1)*b2:b2}return b7}]};function bj(){setTimeout(function(){L=aB},0);return(L=bG.now())}function bc(bZ,e){bG.each(e,function(b4,b2){var b3=(a1[b4]||[]).concat(a1["*"]),b0=0,b1=b3.length;for(;b0-1,b7={},b6={},b0,b2;if(b9){b6=b3.position();b0=b6.top;b2=b6.left}else{b0=parseFloat(e)||0;b2=parseFloat(b8)||0}if(bG.isFunction(ca)){ca=ca.call(b1,b4,bZ)}if(ca.top!=null){b7.top=(ca.top-bZ.top)+b0}if(ca.left!=null){b7.left=(ca.left-bZ.left)+b2}if("using" in ca){ca.using.call(b1,b7)}else{b3.css(b7)}}};bG.fn.extend({position:function(){if(!this[0]){return}var b0=this[0],bZ=this.offsetParent(),b1=this.offset(),e=bm.test(bZ[0].nodeName)?{top:0,left:0}:bZ.offset();b1.top-=parseFloat(bG.css(b0,"marginTop"))||0;b1.left-=parseFloat(bG.css(b0,"marginLeft"))||0;e.top+=parseFloat(bG.css(bZ[0],"borderTopWidth"))||0;e.left+=parseFloat(bG.css(bZ[0],"borderLeftWidth"))||0;return{top:b1.top-e.top,left:b1.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.body;while(e&&(!bm.test(e.nodeName)&&bG.css(e,"position")==="static")){e=e.offsetParent}return e||o.body})}});bG.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b0,bZ){var e=/Y/.test(bZ);bG.fn[b0]=function(b1){return bG.access(this,function(b2,b5,b4){var b3=bn(b2);if(b4===aB){return b3?(bZ in b3)?b3[bZ]:b3.document.documentElement[b5]:b2[b5]}if(b3){b3.scrollTo(!e?b4:bG(b3).scrollLeft(),e?b4:bG(b3).scrollTop())}else{b2[b5]=b4}},b0,b1,arguments.length,null)}});function bn(e){return bG.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}bG.each({Height:"height",Width:"width"},function(e,bZ){bG.each({padding:"inner"+e,content:bZ,"":"outer"+e},function(b0,b1){bG.fn[b1]=function(b5,b4){var b3=arguments.length&&(b0||typeof b5!=="boolean"),b2=b0||(b5===true||b4===true?"margin":"border");return bG.access(this,function(b7,b6,b8){var b9;if(bG.isWindow(b7)){return b7.document.documentElement["client"+e]}if(b7.nodeType===9){b9=b7.documentElement;return Math.max(b7.body["scroll"+e],b9["scroll"+e],b7.body["offset"+e],b9["offset"+e],b9["client"+e])}return b8===aB?bG.css(b7,b6,b8,b2):bG.style(b7,b6,b8,b2)},bZ,b3?b5:aB,b3)}})});a2.jQuery=a2.$=bG;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return bG})}})(window);!function(a){a(function(){a.support.transition=(function(){var b=(function(){var e=document.createElement("bootstrap"),d={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in d){if(e.style[c]!==undefined){return d[c]}}}());return b&&{end:b}})()})}(window.jQuery);!function(c){var b='[data-dismiss="alert"]',a=function(d){c(d).on("click",b,this.close)};a.prototype.close=function(i){var h=c(this),f=h.attr("data-target"),g;if(!f){f=h.attr("href");f=f&&f.replace(/.*(?=#[^\s]*$)/,"")}g=c(f);i&&i.preventDefault();g.length||(g=h.hasClass("alert")?h:h.parent());g.trigger(i=c.Event("close"));if(i.isDefaultPrevented()){return}g.removeClass("in");function d(){g.trigger("closed").remove()}c.support.transition&&g.hasClass("fade")?g.on(c.support.transition.end,d):d()};c.fn.alert=function(d){return this.each(function(){var f=c(this),e=f.data("alert");if(!e){f.data("alert",(e=new a(this)))}if(typeof d=="string"){e[d].call(f)}})};c.fn.alert.Constructor=a;c(function(){c("body").on("click.alert.data-api",b,a.prototype.close)})}(window.jQuery);!function(b){var a=function(d,c){this.$element=b(d);this.options=b.extend({},b.fn.button.defaults,c)};a.prototype.setState=function(f){var h="disabled",c=this.$element,e=c.data(),g=c.is("input")?"val":"html";f=f+"Text";e.resetText||c.data("resetText",c[g]());c[g](e[f]||this.options[f]);setTimeout(function(){f=="loadingText"?c.addClass(h).attr(h,h):c.removeClass(h).removeAttr(h)},0)};a.prototype.toggle=function(){var c=this.$element.parent('[data-toggle="buttons-radio"]');c&&c.find(".active").removeClass("active");this.$element.toggleClass("active")};b.fn.button=function(c){return this.each(function(){var f=b(this),e=f.data("button"),d=typeof c=="object"&&c;if(!e){f.data("button",(e=new a(this,d)))}if(c=="toggle"){e.toggle()}else{if(c){e.setState(c)}}})};b.fn.button.defaults={loadingText:"loading..."};b.fn.button.Constructor=a;b(function(){b("body").on("click.button.data-api","[data-toggle^=button]",function(d){var c=b(d.target);if(!c.hasClass("btn")){c=c.closest(".btn")}c.button("toggle")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=c;this.options.slide&&this.slide(this.options.slide);this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(c){if(!c){this.paused=false}this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval));return this},to:function(g){var c=this.$element.find(".item.active"),d=c.parent().children(),e=d.index(c),f=this;if(g>(d.length-1)||g<0){return}if(this.sliding){return this.$element.one("slid",function(){f.to(g)})}if(e==g){return this.pause().cycle()}return this.slide(g>e?"next":"prev",a(d[g]))},pause:function(c){if(!c){this.paused=true}if(this.$element.find(".next, .prev").length&&a.support.transition.end){this.$element.trigger(a.support.transition.end);this.cycle()}clearInterval(this.interval);this.interval=null;return this},next:function(){if(this.sliding){return}return this.slide("next")},prev:function(){if(this.sliding){return}return this.slide("prev")},slide:function(j,d){var l=this.$element.find(".item.active"),c=d||l[j](),i=this.interval,k=j=="next"?"left":"right",f=j=="next"?"first":"last",g=this,h=a.Event("slide",{relatedTarget:c[0]});this.sliding=true;i&&this.pause();c=c.length?c:this.$element.find(".item")[f]();if(c.hasClass("active")){return}if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(h);if(h.isDefaultPrevented()){return}c.addClass(j);c[0].offsetWidth;l.addClass(k);c.addClass(k);this.$element.one(a.support.transition.end,function(){c.removeClass([j,k].join(" ")).addClass("active");l.removeClass(["active",k].join(" "));g.sliding=false;setTimeout(function(){g.$element.trigger("slid")},0)})}else{this.$element.trigger(h);if(h.isDefaultPrevented()){return}l.removeClass("active");c.addClass("active");this.sliding=false;this.$element.trigger("slid")}i&&this.cycle();return this}};a.fn.carousel=function(c){return this.each(function(){var g=a(this),f=g.data("carousel"),d=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c),e=typeof c=="string"?c:d.slide;if(!f){g.data("carousel",(f=new b(this,d)))}if(typeof c=="number"){f.to(c)}else{if(e){f[e]()}else{if(d.interval){f.cycle()}}}})};a.fn.carousel.defaults={interval:5000,pause:"hover"};a.fn.carousel.Constructor=b;a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(h){var g=a(this),d,c=a(g.attr("data-target")||(d=g.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!c.data("modal")&&a.extend({},c.data(),g.data());c.carousel(f);h.preventDefault()})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.collapse.defaults,c);if(this.options.parent){this.$parent=a(this.options.parent)}this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var c=this.$element.hasClass("width");return c?"width":"height"},show:function(){var f,c,e,d;if(this.transitioning){return}f=this.dimension();c=a.camelCase(["scroll",f].join("-"));e=this.$parent&&this.$parent.find("> .accordion-group > .in");if(e&&e.length){d=e.data("collapse");if(d&&d.transitioning){return}e.collapse("hide");d||e.data("collapse",null)}this.$element[f](0);this.transition("addClass",a.Event("show"),"shown");a.support.transition&&this.$element[f](this.$element[0][c])},hide:function(){var c;if(this.transitioning){return}c=this.dimension();this.reset(this.$element[c]());this.transition("removeClass",a.Event("hide"),"hidden");this.$element[c](0)},reset:function(c){var d=this.dimension();this.$element.removeClass("collapse")[d](c||"auto")[0].offsetWidth;this.$element[c!==null?"addClass":"removeClass"]("collapse");return this},transition:function(g,d,e){var f=this,c=function(){if(d.type=="show"){f.reset()}f.transitioning=0;f.$element.trigger(e)};this.$element.trigger(d);if(d.isDefaultPrevented()){return}this.transitioning=1;this.$element[g]("in");a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,c):c()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};a.fn.collapse=function(c){return this.each(function(){var f=a(this),e=f.data("collapse"),d=typeof c=="object"&&c;if(!e){f.data("collapse",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.collapse.defaults={toggle:true};a.fn.collapse.Constructor=b;a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(h){var g=a(this),c,f=g.attr("data-target")||h.preventDefault()||(c=g.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),d=a(f).data("collapse")?"toggle":g.data();g[a(f).hasClass("in")?"addClass":"removeClass"]("collapsed");a(f).collapse(d)})})}(window.jQuery);!function(e){var b="[data-toggle=dropdown]",a=function(g){var f=e(g).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){f.parent().removeClass("open")})};a.prototype={constructor:a,toggle:function(i){var h=e(this),g,f;if(h.is(".disabled, :disabled")){return}g=d(h);f=g.hasClass("open");c();if(!f){g.toggleClass("open");h.focus()}return false},keydown:function(k){var j,l,f,i,h,g;if(!/(38|40|27)/.test(k.keyCode)){return}j=e(this);k.preventDefault();k.stopPropagation();if(j.is(".disabled, :disabled")){return}i=d(j);h=i.hasClass("open");if(!h||(h&&k.keyCode==27)){return j.click()}l=e("[role=menu] li:not(.divider) a",i);if(!l.length){return}g=l.index(l.filter(":focus"));if(k.keyCode==38&&g>0){g--}if(k.keyCode==40&&g').appendTo(document.body);if(this.options.backdrop!="static"){this.$backdrop.click(b.proxy(this.hide,this))}if(c){this.$backdrop[0].offsetWidth}this.$backdrop.addClass("in");c?this.$backdrop.one(b.support.transition.end,f):f()}else{if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");b.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(b.support.transition.end,b.proxy(this.removeBackdrop,this)):this.removeBackdrop()}else{if(f){f()}}}}};b.fn.modal=function(c){return this.each(function(){var f=b(this),e=f.data("modal"),d=b.extend({},b.fn.modal.defaults,f.data(),typeof c=="object"&&c);if(!e){f.data("modal",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}else{if(d.show){e.show()}}})};b.fn.modal.defaults={backdrop:true,keyboard:true,show:true};b.fn.modal.Constructor=a;b(function(){b("body").on("click.modal.data-api",'[data-toggle="modal"]',function(h){var g=b(this),d=g.attr("href"),c=b(g.attr("data-target")||(d&&d.replace(/.*(?=#[^\s]+$)/,""))),f=c.data("modal")?"toggle":b.extend({remote:!/#/.test(d)&&d},c.data(),g.data());h.preventDefault();c.modal(f).one("hide",function(){g.focus()})})})}(window.jQuery);!function(b){var a=function(d,c){this.init("tooltip",d,c)};a.prototype={constructor:a,init:function(f,e,d){var g,c;this.type=f;this.$element=b(e);this.options=this.getOptions(d);this.enabled=true;if(this.options.trigger=="click"){this.$element.on("click."+this.type,this.options.selector,b.proxy(this.toggle,this))}else{if(this.options.trigger!="manual"){g=this.options.trigger=="hover"?"mouseenter":"focus";c=this.options.trigger=="hover"?"mouseleave":"blur";this.$element.on(g+"."+this.type,this.options.selector,b.proxy(this.enter,this));this.$element.on(c+"."+this.type,this.options.selector,b.proxy(this.leave,this))}}this.options.selector?(this._options=b.extend({},this.options,{trigger:"manual",selector:""})):this.fixTitle()},getOptions:function(c){c=b.extend({},b.fn[this.type].defaults,c,this.$element.data());if(c.delay&&typeof c.delay=="number"){c.delay={show:c.delay,hide:c.delay}}return c},enter:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show){return c.show()}clearTimeout(this.timeout);c.hoverState="in";this.timeout=setTimeout(function(){if(c.hoverState=="in"){c.show()}},c.options.delay.show)},leave:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(this.timeout){clearTimeout(this.timeout)}if(!c.options.delay||!c.options.delay.hide){return c.hide()}c.hoverState="out";this.timeout=setTimeout(function(){if(c.hoverState=="out"){c.hide()}},c.options.delay.hide)},show:function(){var g,c,i,e,h,d,f;if(this.hasContent()&&this.enabled){g=this.tip();this.setContent();if(this.options.animation){g.addClass("fade")}d=typeof this.options.placement=="function"?this.options.placement.call(this,g[0],this.$element[0]):this.options.placement;c=/in/.test(d);g.remove().css({top:0,left:0,display:"block"}).appendTo(c?this.$element:document.body);i=this.getPosition(c);e=g[0].offsetWidth;h=g[0].offsetHeight;switch(c?d.split(" ")[1]:d){case"bottom":f={top:i.top+i.height,left:i.left+i.width/2-e/2};break;case"top":f={top:i.top-h,left:i.left+i.width/2-e/2};break;case"left":f={top:i.top+i.height/2-h/2,left:i.left-e};break;case"right":f={top:i.top+i.height/2-h/2,left:i.left+i.width};break}g.css(f).addClass(d).addClass("in")}},setContent:function(){var d=this.tip(),c=this.getTitle();d.find(".tooltip-inner")[this.options.html?"html":"text"](c);d.removeClass("fade in top bottom left right")},hide:function(){var c=this,d=this.tip();d.removeClass("in");function e(){var f=setTimeout(function(){d.off(b.support.transition.end).remove()},500);d.one(b.support.transition.end,function(){clearTimeout(f);d.remove()})}b.support.transition&&this.$tip.hasClass("fade")?e():d.remove();return this},fixTitle:function(){var c=this.$element;if(c.attr("title")||typeof(c.attr("data-original-title"))!="string"){c.attr("data-original-title",c.attr("title")||"").removeAttr("title")}},hasContent:function(){return this.getTitle()},getPosition:function(c){return b.extend({},(c?{top:0,left:0}:this.$element.offset()),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var e,c=this.$element,d=this.options;e=c.attr("data-original-title")||(typeof d.title=="function"?d.title.call(c[0]):d.title);return e},tip:function(){return this.$tip=this.$tip||b(this.options.template)},validate:function(){if(!this.$element[0].parentNode){this.hide();this.$element=null;this.options=null}},enable:function(){this.enabled=true},disable:function(){this.enabled=false},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}};b.fn.tooltip=function(c){return this.each(function(){var f=b(this),e=f.data("tooltip"),d=typeof c=="object"&&c;if(!e){f.data("tooltip",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.tooltip.Constructor=a;b.fn.tooltip.defaults={animation:true,placement:"top",selector:false,template:'
    ',trigger:"hover",title:"",delay:0,html:true}}(window.jQuery);!function(b){var a=function(d,c){this.init("popover",d,c)};a.prototype=b.extend({},b.fn.tooltip.Constructor.prototype,{constructor:a,setContent:function(){var e=this.tip(),d=this.getTitle(),c=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](d);e.find(".popover-content > *")[this.options.html?"html":"text"](c);e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var d,c=this.$element,e=this.options;d=c.attr("data-content")||(typeof e.content=="function"?e.content.call(c[0]):e.content);return d},tip:function(){if(!this.$tip){this.$tip=b(this.options.template)}return this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}});b.fn.popover=function(c){return this.each(function(){var f=b(this),e=f.data("popover"),d=typeof c=="object"&&c;if(!e){f.data("popover",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.popover.Constructor=a;b.fn.popover.defaults=b.extend({},b.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'

    '})}(window.jQuery);!function(b){function a(f,e){var g=b.proxy(this.process,this),c=b(f).is("body")?b(window):b(f),d;this.options=b.extend({},b.fn.scrollspy.defaults,e);this.$scrollElement=c.on("scroll.scroll-spy.data-api",g);this.selector=(this.options.target||((d=b(f).attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""))||"")+" .nav li > a";this.$body=b("body");this.refresh();this.process()}a.prototype={constructor:a,refresh:function(){var c=this,d;this.offsets=b([]);this.targets=b([]);d=this.$body.find(this.selector).map(function(){var f=b(this),e=f.data("target")||f.attr("href"),g=/^#\w/.test(e)&&b(e);return(g&&g.length&&[[g.position().top,e]])||null}).sort(function(f,e){return f[0]-e[0]}).each(function(){c.offsets.push(this[0]);c.targets.push(this[1])})},process:function(){var h=this.$scrollElement.scrollTop()+this.options.offset,e=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,g=e-this.$scrollElement.height(),f=this.offsets,c=this.targets,j=this.activeTarget,d;if(h>=g){return j!=(d=c.last()[0])&&this.activate(d)}for(d=f.length;d--;){j!=c[d]&&h>=f[d]&&(!f[d+1]||h<=f[d+1])&&this.activate(c[d])}},activate:function(e){var d,c;this.activeTarget=e;b(this.selector).parent(".active").removeClass("active");c=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]';d=b(c).parent("li").addClass("active");if(d.parent(".dropdown-menu").length){d=d.closest("li.dropdown").addClass("active")}d.trigger("activate")}};b.fn.scrollspy=function(c){return this.each(function(){var f=b(this),e=f.data("scrollspy"),d=typeof c=="object"&&c;if(!e){f.data("scrollspy",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.scrollspy.Constructor=a;b.fn.scrollspy.defaults={offset:10};b(window).on("load",function(){b('[data-spy="scroll"]').each(function(){var c=b(this);c.scrollspy(c.data())})})}(window.jQuery);!function(b){var a=function(c){this.element=b(c)};a.prototype={constructor:a,show:function(){var i=this.element,f=i.closest("ul:not(.dropdown-menu)"),d=i.attr("data-target"),g,c,h;if(!d){d=i.attr("href");d=d&&d.replace(/.*(?=#[^\s]*$)/,"")}if(i.parent("li").hasClass("active")){return}g=f.find(".active a").last()[0];h=b.Event("show",{relatedTarget:g});i.trigger(h);if(h.isDefaultPrevented()){return}c=b(d);this.activate(i.parent("li"),f);this.activate(c,c.parent(),function(){i.trigger({type:"shown",relatedTarget:g})})},activate:function(e,d,h){var c=d.find("> .active"),g=h&&b.support.transition&&c.hasClass("fade");function f(){c.removeClass("active").find("> .dropdown-menu > .active").removeClass("active");e.addClass("active");if(g){e[0].offsetWidth;e.addClass("in")}else{e.removeClass("fade")}if(e.parent(".dropdown-menu")){e.closest("li.dropdown").addClass("active")}h&&h()}g?c.one(b.support.transition.end,f):f();c.removeClass("in")}};b.fn.tab=function(c){return this.each(function(){var e=b(this),d=e.data("tab");if(!d){e.data("tab",(d=new a(this)))}if(typeof c=="string"){d[c]()}})};b.fn.tab.Constructor=a;b(function(){b("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(c){c.preventDefault();b(this).tab("show")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.typeahead.defaults,c);this.matcher=this.options.matcher||this.matcher;this.sorter=this.options.sorter||this.sorter;this.highlighter=this.options.highlighter||this.highlighter;this.updater=this.options.updater||this.updater;this.$menu=a(this.options.menu).appendTo("body");this.source=this.options.source;this.shown=false;this.listen()};b.prototype={constructor:b,select:function(){var c=this.$menu.find(".active").attr("data-value");this.$element.val(this.updater(c)).change();return this.hide()},updater:function(c){return c},show:function(){var c=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});this.$menu.css({top:c.top+c.height,left:c.left});this.$menu.show();this.shown=true;return this},hide:function(){this.$menu.hide();this.shown=false;return this},lookup:function(d){var c;this.query=this.$element.val();if(!this.query||this.query.length"+f+""})},render:function(c){var d=this;c=a(c).map(function(e,f){e=a(d.options.item).attr("data-value",f);e.find("a").html(d.highlighter(f));return e[0]});c.first().addClass("active");this.$menu.html(c);return this},next:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.next();if(!c.length){c=a(this.$menu.find("li")[0])}c.addClass("active")},prev:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.prev();if(!c.length){c=this.$menu.find("li").last()}c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this));if(a.browser.webkit||a.browser.msie){this.$element.on("keydown",a.proxy(this.keydown,this))}this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},move:function(c){if(!this.shown){return}switch(c.keyCode){case 9:case 13:case 27:c.preventDefault();break;case 38:c.preventDefault();this.prev();break;case 40:c.preventDefault();this.next();break}c.stopPropagation()},keydown:function(c){this.suppressKeyPressRepeat=!~a.inArray(c.keyCode,[40,38,9,13,27]);this.move(c)},keypress:function(c){if(this.suppressKeyPressRepeat){return}this.move(c)},keyup:function(c){switch(c.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown){return}this.select();break;case 27:if(!this.shown){return}this.hide();break;default:this.lookup()}c.stopPropagation();c.preventDefault()},blur:function(d){var c=this;setTimeout(function(){c.hide()},150)},click:function(c){c.stopPropagation();c.preventDefault();this.select()},mouseenter:function(c){this.$menu.find(".active").removeClass("active");a(c.currentTarget).addClass("active")}};a.fn.typeahead=function(c){return this.each(function(){var f=a(this),e=f.data("typeahead"),d=typeof c=="object"&&c;if(!e){f.data("typeahead",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1};a.fn.typeahead.Constructor=b;a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(d){var c=a(this);if(c.data("typeahead")){return}d.preventDefault();c.typeahead(c.data())})})}(window.jQuery);!function(b){var a=function(d,c){this.options=b.extend({},b.fn.affix.defaults,c);this.$window=b(window).on("scroll.affix.data-api",b.proxy(this.checkPosition,this));this.$element=b(d);this.checkPosition()};a.prototype.checkPosition=function(){if(!this.$element.is(":visible")){return}var g=b(document).height(),i=this.$window.scrollTop(),c=this.$element.offset(),j=this.options.offset,e=j.bottom,f=j.top,h="affix affix-top affix-bottom",d;if(typeof j!="object"){e=f=j}if(typeof f=="function"){f=j.top()}if(typeof e=="function"){e=j.bottom()}d=this.unpin!=null&&(i+this.unpin<=c.top)?false:e!=null&&(c.top+this.$element.height()>=g-e)?"bottom":f!=null&&i<=f?"top":false;if(this.affixed===d){return}this.affixed=d;this.unpin=d=="bottom"?c.top-i:null;this.$element.removeClass(h).addClass("affix"+(d?"-"+d:""))};b.fn.affix=function(c){return this.each(function(){var f=b(this),e=f.data("affix"),d=typeof c=="object"&&c;if(!e){f.data("affix",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.affix.Constructor=a;b.fn.affix.defaults={offset:0};b(window).on("load",function(){b('[data-spy="affix"]').each(function(){var d=b(this),c=d.data();c.offset=c.offset||{};c.offsetBottom&&(c.offset.bottom=c.offsetBottom);c.offsetTop&&(c.offset.top=c.offsetTop);d.affix(c)})})}(window.jQuery);var q=null;window.PR_SHOULD_USE_CONTINUATION=!0;(function(){function d(F){function w(J){var K=J.charCodeAt(0);if(K!==92){return K}var I=J.charAt(1);return(K=k[I])?K:"0"<=I&&I<="7"?parseInt(J.substring(1),8):I==="u"||I==="x"?parseInt(J.substring(2),16):J.charCodeAt(1)}function C(I){if(I<32){return(I<16?"\\x0":"\\x")+I.toString(16)}I=String.fromCharCode(I);if(I==="\\"||I==="-"||I==="["||I==="]"){I="\\"+I}return I}function A(J){for(var M=J.substring(1,J.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),J=[],I=[],O=M[0]==="^",P=O?1:0,L=M.length;P122||(N<65||K>90||I.push([Math.max(65,K)|32,Math.min(N,90)|32]),N<97||K>122||I.push([Math.max(97,K)&-33,Math.min(N,122)&-33]))}}I.sort(function(Q,R){return Q[0]-R[0]||R[1]-Q[1]});M=[];K=[NaN,NaN];for(P=0;PL[0]&&(L[1]+1>L[0]&&I.push("-"),I.push(C(L[1])))}I.push("]");return I.join("")}function E(J){for(var M=J.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),I=M.length,N=[],O=0,L=0;O=2&&J==="["?M[O]=A(K):J!=="\\"&&(M[O]=K.replace(/[A-Za-z]/g,function(P){P=P.charCodeAt(0);return"["+String.fromCharCode(P&-33,P|32)+"]"}))}}return M.join("")}for(var G=0,H=!1,x=!1,u=0,D=F.length;u=5&&"lang-"===O.substring(0,5))&&!(D&&typeof D[1]==="string")){M=!1,O="src"}M||(B[K]=O)}I=L;L+=K.length;if(M){M=D[1];var H=K.indexOf(M),G=H+M.length;D[2]&&(G=K.length-D[2].length,H=G-M.length);O=O.substring(5);t(F+I,K.substring(0,H),x,C);t(F+I+H,M,s(O,M),C);t(F+I+G,K.substring(G),x,C)}else{C.push(F+I,O)}}P.e=C}var w={},A;(function(){for(var G=u.concat(k),B=[],F={},H=0,E=G.length;H=0;){w[I.charAt(C)]=D}}D=D[1];I=""+D;F.hasOwnProperty(I)||(B.push(D),F[I]=q)}B.push(/[\S\s]/);A=d(B)})();var v=k.length;return x}function o(u){var k=[],w=[];u.tripleQuotedStrings?k.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):u.multiLineStrings?k.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,q,"'\"`"]):k.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]);u.verbatimStrings&&w.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var v=u.hashComments;v&&(u.cStyleComments?(v>1?k.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):k.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),w.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):k.push(["com",/^#[^\n\r]*/,q,"#"]));u.cStyleComments&&(w.push(["com",/^\/\/[^\n\r]*/,q]),w.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q]));u.regexLiterals&&w.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]);(v=u.types)&&w.push(["typ",v]);u=(""+u.keywords).replace(/^ | $/g,"");u.length&&w.push(["kwd",RegExp("^(?:"+u.replace(/[\s,]+/g,"|")+")\\b"),q]);k.push(["pln",/^\s+/,q," \r\n\t\xa0"]);w.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]);return h(k,w)}function r(H,x){function E(K){switch(K.nodeType){case 1:if(B.test(K.className)){break}if("BR"===K.nodeName){C(K),K.parentNode&&K.parentNode.removeChild(K)}else{for(K=K.firstChild;K;K=K.nextSibling){E(K)}}break;case 3:case 4:if(v){var k=K.nodeValue,L=k.match(I);if(L){var M=k.substring(0,L.index);K.nodeValue=M;(k=k.substring(L.index+L[0].length))&&K.parentNode.insertBefore(J.createTextNode(k),K.nextSibling);C(K);M||K.parentNode.removeChild(K)}}}}function C(K){function k(M,R){var Q=R?M.cloneNode(!1):M,P=M.parentNode;if(P){var P=k(P,1),O=M.nextSibling;P.appendChild(Q);for(var N=O;N;N=O){O=N.nextSibling,P.appendChild(N)}}return Q}for(;!K.nextSibling;){if(K=K.parentNode,!K){return}}for(var K=k(K.nextSibling,0),L;(L=K.parentNode)&&L.nodeType===1;){K=L}F.push(K)}var B=/(?:^|\s)nocode(?:\s|$)/,I=/\r\n?|\n/,J=H.ownerDocument,A;H.currentStyle?A=H.currentStyle.whiteSpace:window.getComputedStyle&&(A=J.defaultView.getComputedStyle(H,q).getPropertyValue("white-space"));var v=A&&"pre"===A.substring(0,3);for(A=J.createElement("LI");H.firstChild;){A.appendChild(H.firstChild)}for(var F=[A],D=0;D=0;){var v=k[w];y.hasOwnProperty(v)?window.console&&console.warn("cannot override language handler %s",v):y[v]=u}}function s(u,k){if(!u||!y.hasOwnProperty(u)){u=/^\s*=J&&(Q+=2);T>=V&&(X+=2)}}catch(C){"console" in window&&console.log(C&&C.stack?C.stack:C)}}var m=["break,continue,do,else,for,if,return,while"],j=[[m,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],n=[j,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],l=[j,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],i=[l,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],j=[j,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],g=[m,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],f=[m,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],m=[m,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,b=/\S/,a=o({keywords:[n,i,j,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+g,f,m],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),y={};z(a,["default-code"]);z(h([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);z(h([["pln",/^\s+/,q," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);z(h([],[["atv",/^[\S\s]+/]]),["uq.val"]);z(o({keywords:n,hashComments:!0,cStyleComments:!0,types:e}),["c","cc","cpp","cxx","cyc","m"]);z(o({keywords:"null,true,false"}),["json"]);z(o({keywords:i,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:e}),["cs"]);z(o({keywords:l,cStyleComments:!0}),["java"]);z(o({keywords:m,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]);z(o({keywords:g,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]);z(o({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]);z(o({keywords:f,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]);z(o({keywords:j,cStyleComments:!0,regexLiterals:!0}),["js"]);z(o({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);z(h([],[["str",/^[\S\s]+/]]),["regex"]);window.prettyPrintOne=function(u,k,w){var v=document.createElement("PRE");v.innerHTML=u;w&&r(v,w);p({g:k,i:w,h:v});return v.innerHTML};window.prettyPrint=function(E){function v(){for(var L=window.PR_SHOULD_USE_CONTINUATION?w.now()+250:Infinity;u=0){var I=I.match(B),K,H;if(H=!I){H=O;for(var M=void 0,N=H.firstChild;N;N=N.nextSibling){var J=N.nodeType,M=J===1?M?H:N:J===3?b.test(N.nodeValue)?H:M:M}H=(K=M===H?void 0:M)&&"CODE"===K.tagName}H&&(I=K.className.match(B));I&&(I=I[1]);H=!1;for(M=O.parentNode;M;M=M.parentNode){if((M.tagName==="pre"||M.tagName==="code"||M.tagName==="xmp")&&M.className&&M.className.indexOf("prettyprint")>=0){H=!0;break}}H||((H=(H=O.className.match(/\blinenums\b(?::(\d+))?/))?H[1]&&H[1].length?+H[1]:!0:!1)&&r(O,H),D={g:I,h:O,i:H},p(D))}}u + + + + + + + + dependency-check-cli - Project License + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    +
    +

    Overview

    +

    Typically the licenses listed for the project are that of the project itself, and not of dependencies.

    +
    +

    Project License

    +
    +

    GNU General Public License version 3

    +
    +
                        GNU GENERAL PUBLIC LICENSE 
    +                       Version 3, 29 June 2007
    +
    + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
    + Everyone is permitted to copy and distribute verbatim copies
    + of this license document, but changing it is not allowed.
    +
    +                            Preamble
    +
    +  The GNU General Public License is a free, copyleft license for
    +software and other kinds of works.
    +
    +  The licenses for most software and other practical works are designed
    +to take away your freedom to share and change the works.  By contrast,
    +the GNU General Public License is intended to guarantee your freedom to
    +share and change all versions of a program--to make sure it remains free
    +software for all its users.  We, the Free Software Foundation, use the
    +GNU General Public License for most of our software; it applies also to
    +any other work released this way by its authors.  You can apply it to
    +your programs, too.
    +
    +  When we speak of free software, we are referring to freedom, not
    +price.  Our General Public Licenses are designed to make sure that you
    +have the freedom to distribute copies of free software (and charge for
    +them if you wish), that you receive source code or can get it if you
    +want it, that you can change the software or use pieces of it in new
    +free programs, and that you know you can do these things.
    +
    +  To protect your rights, we need to prevent others from denying you
    +these rights or asking you to surrender the rights.  Therefore, you have
    +certain responsibilities if you distribute copies of the software, or if
    +you modify it: responsibilities to respect the freedom of others.
    +
    +  For example, if you distribute copies of such a program, whether
    +gratis or for a fee, you must pass on to the recipients the same
    +freedoms that you received.  You must make sure that they, too, receive
    +or can get the source code.  And you must show them these terms so they
    +know their rights.
    +
    +  Developers that use the GNU GPL protect your rights with two steps:
    +(1) assert copyright on the software, and (2) offer you this License
    +giving you legal permission to copy, distribute and/or modify it.
    +
    +  For the developers' and authors' protection, the GPL clearly explains
    +that there is no warranty for this free software.  For both users' and
    +authors' sake, the GPL requires that modified versions be marked as
    +changed, so that their problems will not be attributed erroneously to
    +authors of previous versions.
    +
    +  Some devices are designed to deny users access to install or run
    +modified versions of the software inside them, although the manufacturer
    +can do so.  This is fundamentally incompatible with the aim of
    +protecting users' freedom to change the software.  The systematic
    +pattern of such abuse occurs in the area of products for individuals to
    +use, which is precisely where it is most unacceptable.  Therefore, we
    +have designed this version of the GPL to prohibit the practice for those
    +products.  If such problems arise substantially in other domains, we
    +stand ready to extend this provision to those domains in future versions
    +of the GPL, as needed to protect the freedom of users.
    +
    +  Finally, every program is threatened constantly by software patents.
    +States should not allow patents to restrict development and use of
    +software on general-purpose computers, but in those that do, we wish to
    +avoid the special danger that patents applied to a free program could
    +make it effectively proprietary.  To prevent this, the GPL assures that
    +patents cannot be used to render the program non-free.
    +
    +  The precise terms and conditions for copying, distribution and
    +modification follow.
    +
    +                       TERMS AND CONDITIONS
    +
    +  0. Definitions.
    +
    +  "This License" refers to version 3 of the GNU General Public License.
    +
    +  "Copyright" also means copyright-like laws that apply to other kinds of
    +works, such as semiconductor masks.
    +
    +  "The Program" refers to any copyrightable work licensed under this
    +License.  Each licensee is addressed as "you".  "Licensees" and
    +"recipients" may be individuals or organizations.
    +
    +  To "modify" a work means to copy from or adapt all or part of the work
    +in a fashion requiring copyright permission, other than the making of an
    +exact copy.  The resulting work is called a "modified version" of the
    +earlier work or a work "based on" the earlier work.
    +
    +  A "covered work" means either the unmodified Program or a work based
    +on the Program.
    +
    +  To "propagate" a work means to do anything with it that, without
    +permission, would make you directly or secondarily liable for
    +infringement under applicable copyright law, except executing it on a
    +computer or modifying a private copy.  Propagation includes copying,
    +distribution (with or without modification), making available to the
    +public, and in some countries other activities as well.
    +
    +  To "convey" a work means any kind of propagation that enables other
    +parties to make or receive copies.  Mere interaction with a user through
    +a computer network, with no transfer of a copy, is not conveying.
    +
    +  An interactive user interface displays "Appropriate Legal Notices"
    +to the extent that it includes a convenient and prominently visible
    +feature that (1) displays an appropriate copyright notice, and (2)
    +tells the user that there is no warranty for the work (except to the
    +extent that warranties are provided), that licensees may convey the
    +work under this License, and how to view a copy of this License.  If
    +the interface presents a list of user commands or options, such as a
    +menu, a prominent item in the list meets this criterion.
    +
    +  1. Source Code.
    +
    +  The "source code" for a work means the preferred form of the work
    +for making modifications to it.  "Object code" means any non-source
    +form of a work.
    +
    +  A "Standard Interface" means an interface that either is an official
    +standard defined by a recognized standards body, or, in the case of
    +interfaces specified for a particular programming language, one that
    +is widely used among developers working in that language.
    +
    +  The "System Libraries" of an executable work include anything, other
    +than the work as a whole, that (a) is included in the normal form of
    +packaging a Major Component, but which is not part of that Major
    +Component, and (b) serves only to enable use of the work with that
    +Major Component, or to implement a Standard Interface for which an
    +implementation is available to the public in source code form.  A
    +"Major Component", in this context, means a major essential component
    +(kernel, window system, and so on) of the specific operating system
    +(if any) on which the executable work runs, or a compiler used to
    +produce the work, or an object code interpreter used to run it.
    +
    +  The "Corresponding Source" for a work in object code form means all
    +the source code needed to generate, install, and (for an executable
    +work) run the object code and to modify the work, including scripts to
    +control those activities.  However, it does not include the work's
    +System Libraries, or general-purpose tools or generally available free
    +programs which are used unmodified in performing those activities but
    +which are not part of the work.  For example, Corresponding Source
    +includes interface definition files associated with source files for
    +the work, and the source code for shared libraries and dynamically
    +linked subprograms that the work is specifically designed to require,
    +such as by intimate data communication or control flow between those
    +subprograms and other parts of the work.
    +
    +  The Corresponding Source need not include anything that users
    +can regenerate automatically from other parts of the Corresponding
    +Source.
    +
    +  The Corresponding Source for a work in source code form is that
    +same work.
    +
    +  2. Basic Permissions.
    +
    +  All rights granted under this License are granted for the term of
    +copyright on the Program, and are irrevocable provided the stated
    +conditions are met.  This License explicitly affirms your unlimited
    +permission to run the unmodified Program.  The output from running a
    +covered work is covered by this License only if the output, given its
    +content, constitutes a covered work.  This License acknowledges your
    +rights of fair use or other equivalent, as provided by copyright law.
    +
    +  You may make, run and propagate covered works that you do not
    +convey, without conditions so long as your license otherwise remains
    +in force.  You may convey covered works to others for the sole purpose
    +of having them make modifications exclusively for you, or provide you
    +with facilities for running those works, provided that you comply with
    +the terms of this License in conveying all material for which you do
    +not control copyright.  Those thus making or running the covered works
    +for you must do so exclusively on your behalf, under your direction
    +and control, on terms that prohibit them from making any copies of
    +your copyrighted material outside their relationship with you.
    +
    +  Conveying under any other circumstances is permitted solely under
    +the conditions stated below.  Sublicensing is not allowed; section 10
    +makes it unnecessary.
    +
    +  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
    +
    +  No covered work shall be deemed part of an effective technological
    +measure under any applicable law fulfilling obligations under article
    +11 of the WIPO copyright treaty adopted on 20 December 1996, or
    +similar laws prohibiting or restricting circumvention of such
    +measures.
    +
    +  When you convey a covered work, you waive any legal power to forbid
    +circumvention of technological measures to the extent such circumvention
    +is effected by exercising rights under this License with respect to
    +the covered work, and you disclaim any intention to limit operation or
    +modification of the work as a means of enforcing, against the work's
    +users, your or third parties' legal rights to forbid circumvention of
    +technological measures.
    +
    +  4. Conveying Verbatim Copies.
    +
    +  You may convey verbatim copies of the Program's source code as you
    +receive it, in any medium, provided that you conspicuously and
    +appropriately publish on each copy an appropriate copyright notice;
    +keep intact all notices stating that this License and any
    +non-permissive terms added in accord with section 7 apply to the code;
    +keep intact all notices of the absence of any warranty; and give all
    +recipients a copy of this License along with the Program.
    +
    +  You may charge any price or no price for each copy that you convey,
    +and you may offer support or warranty protection for a fee.
    +
    +  5. Conveying Modified Source Versions.
    +
    +  You may convey a work based on the Program, or the modifications to
    +produce it from the Program, in the form of source code under the
    +terms of section 4, provided that you also meet all of these conditions:
    +
    +    a) The work must carry prominent notices stating that you modified
    +    it, and giving a relevant date.
    +
    +    b) The work must carry prominent notices stating that it is
    +    released under this License and any conditions added under section
    +    7.  This requirement modifies the requirement in section 4 to
    +    "keep intact all notices".
    +
    +    c) You must license the entire work, as a whole, under this
    +    License to anyone who comes into possession of a copy.  This
    +    License will therefore apply, along with any applicable section 7
    +    additional terms, to the whole of the work, and all its parts,
    +    regardless of how they are packaged.  This License gives no
    +    permission to license the work in any other way, but it does not
    +    invalidate such permission if you have separately received it.
    +
    +    d) If the work has interactive user interfaces, each must display
    +    Appropriate Legal Notices; however, if the Program has interactive
    +    interfaces that do not display Appropriate Legal Notices, your
    +    work need not make them do so.
    +
    +  A compilation of a covered work with other separate and independent
    +works, which are not by their nature extensions of the covered work,
    +and which are not combined with it such as to form a larger program,
    +in or on a volume of a storage or distribution medium, is called an
    +"aggregate" if the compilation and its resulting copyright are not
    +used to limit the access or legal rights of the compilation's users
    +beyond what the individual works permit.  Inclusion of a covered work
    +in an aggregate does not cause this License to apply to the other
    +parts of the aggregate.
    +
    +  6. Conveying Non-Source Forms.
    +
    +  You may convey a covered work in object code form under the terms
    +of sections 4 and 5, provided that you also convey the
    +machine-readable Corresponding Source under the terms of this License,
    +in one of these ways:
    +
    +    a) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by the
    +    Corresponding Source fixed on a durable physical medium
    +    customarily used for software interchange.
    +
    +    b) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by a
    +    written offer, valid for at least three years and valid for as
    +    long as you offer spare parts or customer support for that product
    +    model, to give anyone who possesses the object code either (1) a
    +    copy of the Corresponding Source for all the software in the
    +    product that is covered by this License, on a durable physical
    +    medium customarily used for software interchange, for a price no
    +    more than your reasonable cost of physically performing this
    +    conveying of source, or (2) access to copy the
    +    Corresponding Source from a network server at no charge.
    +
    +    c) Convey individual copies of the object code with a copy of the
    +    written offer to provide the Corresponding Source.  This
    +    alternative is allowed only occasionally and noncommercially, and
    +    only if you received the object code with such an offer, in accord
    +    with subsection 6b.
    +
    +    d) Convey the object code by offering access from a designated
    +    place (gratis or for a charge), and offer equivalent access to the
    +    Corresponding Source in the same way through the same place at no
    +    further charge.  You need not require recipients to copy the
    +    Corresponding Source along with the object code.  If the place to
    +    copy the object code is a network server, the Corresponding Source
    +    may be on a different server (operated by you or a third party)
    +    that supports equivalent copying facilities, provided you maintain
    +    clear directions next to the object code saying where to find the
    +    Corresponding Source.  Regardless of what server hosts the
    +    Corresponding Source, you remain obligated to ensure that it is
    +    available for as long as needed to satisfy these requirements.
    +
    +    e) Convey the object code using peer-to-peer transmission, provided
    +    you inform other peers where the object code and Corresponding
    +    Source of the work are being offered to the general public at no
    +    charge under subsection 6d.
    +
    +  A separable portion of the object code, whose source code is excluded
    +from the Corresponding Source as a System Library, need not be
    +included in conveying the object code work.
    +
    +  A "User Product" is either (1) a "consumer product", which means any
    +tangible personal property which is normally used for personal, family,
    +or household purposes, or (2) anything designed or sold for incorporation
    +into a dwelling.  In determining whether a product is a consumer product,
    +doubtful cases shall be resolved in favor of coverage.  For a particular
    +product received by a particular user, "normally used" refers to a
    +typical or common use of that class of product, regardless of the status
    +of the particular user or of the way in which the particular user
    +actually uses, or expects or is expected to use, the product.  A product
    +is a consumer product regardless of whether the product has substantial
    +commercial, industrial or non-consumer uses, unless such uses represent
    +the only significant mode of use of the product.
    +
    +  "Installation Information" for a User Product means any methods,
    +procedures, authorization keys, or other information required to install
    +and execute modified versions of a covered work in that User Product from
    +a modified version of its Corresponding Source.  The information must
    +suffice to ensure that the continued functioning of the modified object
    +code is in no case prevented or interfered with solely because
    +modification has been made.
    +
    +  If you convey an object code work under this section in, or with, or
    +specifically for use in, a User Product, and the conveying occurs as
    +part of a transaction in which the right of possession and use of the
    +User Product is transferred to the recipient in perpetuity or for a
    +fixed term (regardless of how the transaction is characterized), the
    +Corresponding Source conveyed under this section must be accompanied
    +by the Installation Information.  But this requirement does not apply
    +if neither you nor any third party retains the ability to install
    +modified object code on the User Product (for example, the work has
    +been installed in ROM).
    +
    +  The requirement to provide Installation Information does not include a
    +requirement to continue to provide support service, warranty, or updates
    +for a work that has been modified or installed by the recipient, or for
    +the User Product in which it has been modified or installed.  Access to a
    +network may be denied when the modification itself materially and
    +adversely affects the operation of the network or violates the rules and
    +protocols for communication across the network.
    +
    +  Corresponding Source conveyed, and Installation Information provided,
    +in accord with this section must be in a format that is publicly
    +documented (and with an implementation available to the public in
    +source code form), and must require no special password or key for
    +unpacking, reading or copying.
    +
    +  7. Additional Terms.
    +
    +  "Additional permissions" are terms that supplement the terms of this
    +License by making exceptions from one or more of its conditions.
    +Additional permissions that are applicable to the entire Program shall
    +be treated as though they were included in this License, to the extent
    +that they are valid under applicable law.  If additional permissions
    +apply only to part of the Program, that part may be used separately
    +under those permissions, but the entire Program remains governed by
    +this License without regard to the additional permissions.
    +
    +  When you convey a copy of a covered work, you may at your option
    +remove any additional permissions from that copy, or from any part of
    +it.  (Additional permissions may be written to require their own
    +removal in certain cases when you modify the work.)  You may place
    +additional permissions on material, added by you to a covered work,
    +for which you have or can give appropriate copyright permission.
    +
    +  Notwithstanding any other provision of this License, for material you
    +add to a covered work, you may (if authorized by the copyright holders of
    +that material) supplement the terms of this License with terms:
    +
    +    a) Disclaiming warranty or limiting liability differently from the
    +    terms of sections 15 and 16 of this License; or
    +
    +    b) Requiring preservation of specified reasonable legal notices or
    +    author attributions in that material or in the Appropriate Legal
    +    Notices displayed by works containing it; or
    +
    +    c) Prohibiting misrepresentation of the origin of that material, or
    +    requiring that modified versions of such material be marked in
    +    reasonable ways as different from the original version; or
    +
    +    d) Limiting the use for publicity purposes of names of licensors or
    +    authors of the material; or
    +
    +    e) Declining to grant rights under trademark law for use of some
    +    trade names, trademarks, or service marks; or
    +
    +    f) Requiring indemnification of licensors and authors of that
    +    material by anyone who conveys the material (or modified versions of
    +    it) with contractual assumptions of liability to the recipient, for
    +    any liability that these contractual assumptions directly impose on
    +    those licensors and authors.
    +
    +  All other non-permissive additional terms are considered "further
    +restrictions" within the meaning of section 10.  If the Program as you
    +received it, or any part of it, contains a notice stating that it is
    +governed by this License along with a term that is a further
    +restriction, you may remove that term.  If a license document contains
    +a further restriction but permits relicensing or conveying under this
    +License, you may add to a covered work material governed by the terms
    +of that license document, provided that the further restriction does
    +not survive such relicensing or conveying.
    +
    +  If you add terms to a covered work in accord with this section, you
    +must place, in the relevant source files, a statement of the
    +additional terms that apply to those files, or a notice indicating
    +where to find the applicable terms.
    +
    +  Additional terms, permissive or non-permissive, may be stated in the
    +form of a separately written license, or stated as exceptions;
    +the above requirements apply either way.
    +
    +  8. Termination.
    +
    +  You may not propagate or modify a covered work except as expressly
    +provided under this License.  Any attempt otherwise to propagate or
    +modify it is void, and will automatically terminate your rights under
    +this License (including any patent licenses granted under the third
    +paragraph of section 11).
    +
    +  However, if you cease all violation of this License, then your
    +license from a particular copyright holder is reinstated (a)
    +provisionally, unless and until the copyright holder explicitly and
    +finally terminates your license, and (b) permanently, if the copyright
    +holder fails to notify you of the violation by some reasonable means
    +prior to 60 days after the cessation.
    +
    +  Moreover, your license from a particular copyright holder is
    +reinstated permanently if the copyright holder notifies you of the
    +violation by some reasonable means, this is the first time you have
    +received notice of violation of this License (for any work) from that
    +copyright holder, and you cure the violation prior to 30 days after
    +your receipt of the notice.
    +
    +  Termination of your rights under this section does not terminate the
    +licenses of parties who have received copies or rights from you under
    +this License.  If your rights have been terminated and not permanently
    +reinstated, you do not qualify to receive new licenses for the same
    +material under section 10.
    +
    +  9. Acceptance Not Required for Having Copies.
    +
    +  You are not required to accept this License in order to receive or
    +run a copy of the Program.  Ancillary propagation of a covered work
    +occurring solely as a consequence of using peer-to-peer transmission
    +to receive a copy likewise does not require acceptance.  However,
    +nothing other than this License grants you permission to propagate or
    +modify any covered work.  These actions infringe copyright if you do
    +not accept this License.  Therefore, by modifying or propagating a
    +covered work, you indicate your acceptance of this License to do so.
    +
    +  10. Automatic Licensing of Downstream Recipients.
    +
    +  Each time you convey a covered work, the recipient automatically
    +receives a license from the original licensors, to run, modify and
    +propagate that work, subject to this License.  You are not responsible
    +for enforcing compliance by third parties with this License.
    +
    +  An "entity transaction" is a transaction transferring control of an
    +organization, or substantially all assets of one, or subdividing an
    +organization, or merging organizations.  If propagation of a covered
    +work results from an entity transaction, each party to that
    +transaction who receives a copy of the work also receives whatever
    +licenses to the work the party's predecessor in interest had or could
    +give under the previous paragraph, plus a right to possession of the
    +Corresponding Source of the work from the predecessor in interest, if
    +the predecessor has it or can get it with reasonable efforts.
    +
    +  You may not impose any further restrictions on the exercise of the
    +rights granted or affirmed under this License.  For example, you may
    +not impose a license fee, royalty, or other charge for exercise of
    +rights granted under this License, and you may not initiate litigation
    +(including a cross-claim or counterclaim in a lawsuit) alleging that
    +any patent claim is infringed by making, using, selling, offering for
    +sale, or importing the Program or any portion of it.
    +
    +  11. Patents.
    +
    +  A "contributor" is a copyright holder who authorizes use under this
    +License of the Program or a work on which the Program is based.  The
    +work thus licensed is called the contributor's "contributor version".
    +
    +  A contributor's "essential patent claims" are all patent claims
    +owned or controlled by the contributor, whether already acquired or
    +hereafter acquired, that would be infringed by some manner, permitted
    +by this License, of making, using, or selling its contributor version,
    +but do not include claims that would be infringed only as a
    +consequence of further modification of the contributor version.  For
    +purposes of this definition, "control" includes the right to grant
    +patent sublicenses in a manner consistent with the requirements of
    +this License.
    +
    +  Each contributor grants you a non-exclusive, worldwide, royalty-free
    +patent license under the contributor's essential patent claims, to
    +make, use, sell, offer for sale, import and otherwise run, modify and
    +propagate the contents of its contributor version.
    +
    +  In the following three paragraphs, a "patent license" is any express
    +agreement or commitment, however denominated, not to enforce a patent
    +(such as an express permission to practice a patent or covenant not to
    +sue for patent infringement).  To "grant" such a patent license to a
    +party means to make such an agreement or commitment not to enforce a
    +patent against the party.
    +
    +  If you convey a covered work, knowingly relying on a patent license,
    +and the Corresponding Source of the work is not available for anyone
    +to copy, free of charge and under the terms of this License, through a
    +publicly available network server or other readily accessible means,
    +then you must either (1) cause the Corresponding Source to be so
    +available, or (2) arrange to deprive yourself of the benefit of the
    +patent license for this particular work, or (3) arrange, in a manner
    +consistent with the requirements of this License, to extend the patent
    +license to downstream recipients.  "Knowingly relying" means you have
    +actual knowledge that, but for the patent license, your conveying the
    +covered work in a country, or your recipient's use of the covered work
    +in a country, would infringe one or more identifiable patents in that
    +country that you have reason to believe are valid.
    +
    +  If, pursuant to or in connection with a single transaction or
    +arrangement, you convey, or propagate by procuring conveyance of, a
    +covered work, and grant a patent license to some of the parties
    +receiving the covered work authorizing them to use, propagate, modify
    +or convey a specific copy of the covered work, then the patent license
    +you grant is automatically extended to all recipients of the covered
    +work and works based on it.
    +
    +  A patent license is "discriminatory" if it does not include within
    +the scope of its coverage, prohibits the exercise of, or is
    +conditioned on the non-exercise of one or more of the rights that are
    +specifically granted under this License.  You may not convey a covered
    +work if you are a party to an arrangement with a third party that is
    +in the business of distributing software, under which you make payment
    +to the third party based on the extent of your activity of conveying
    +the work, and under which the third party grants, to any of the
    +parties who would receive the covered work from you, a discriminatory
    +patent license (a) in connection with copies of the covered work
    +conveyed by you (or copies made from those copies), or (b) primarily
    +for and in connection with specific products or compilations that
    +contain the covered work, unless you entered into that arrangement,
    +or that patent license was granted, prior to 28 March 2007.
    +
    +  Nothing in this License shall be construed as excluding or limiting
    +any implied license or other defenses to infringement that may
    +otherwise be available to you under applicable patent law.
    +
    +  12. No Surrender of Others' Freedom.
    +
    +  If conditions are imposed on you (whether by court order, agreement or
    +otherwise) that contradict the conditions of this License, they do not
    +excuse you from the conditions of this License.  If you cannot convey a
    +covered work so as to satisfy simultaneously your obligations under this
    +License and any other pertinent obligations, then as a consequence you may
    +not convey it at all.  For example, if you agree to terms that obligate you
    +to collect a royalty for further conveying from those to whom you convey
    +the Program, the only way you could satisfy both those terms and this
    +License would be to refrain entirely from conveying the Program.
    +
    +  13. Use with the GNU Affero General Public License.
    +
    +  Notwithstanding any other provision of this License, you have
    +permission to link or combine any covered work with a work licensed
    +under version 3 of the GNU Affero General Public License into a single
    +combined work, and to convey the resulting work.  The terms of this
    +License will continue to apply to the part which is the covered work,
    +but the special requirements of the GNU Affero General Public License,
    +section 13, concerning interaction through a network will apply to the
    +combination as such.
    +
    +  14. Revised Versions of this License.
    +
    +  The Free Software Foundation may publish revised and/or new versions of
    +the GNU General Public License from time to time.  Such new versions will
    +be similar in spirit to the present version, but may differ in detail to
    +address new problems or concerns.
    +
    +  Each version is given a distinguishing version number.  If the
    +Program specifies that a certain numbered version of the GNU General
    +Public License "or any later version" applies to it, you have the
    +option of following the terms and conditions either of that numbered
    +version or of any later version published by the Free Software
    +Foundation.  If the Program does not specify a version number of the
    +GNU General Public License, you may choose any version ever published
    +by the Free Software Foundation.
    +
    +  If the Program specifies that a proxy can decide which future
    +versions of the GNU General Public License can be used, that proxy's
    +public statement of acceptance of a version permanently authorizes you
    +to choose that version for the Program.
    +
    +  Later license versions may give you additional or different
    +permissions.  However, no additional obligations are imposed on any
    +author or copyright holder as a result of your choosing to follow a
    +later version.
    +
    +  15. Disclaimer of Warranty.
    +
    +  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
    +APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
    +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
    +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
    +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    +PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
    +IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
    +ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
    +
    +  16. Limitation of Liability.
    +
    +  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
    +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
    +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
    +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
    +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
    +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
    +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
    +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
    +SUCH DAMAGES.
    +
    +  17. Interpretation of Sections 15 and 16.
    +
    +  If the disclaimer of warranty and limitation of liability provided
    +above cannot be given local legal effect according to their terms,
    +reviewing courts shall apply local law that most closely approximates
    +an absolute waiver of all civil liability in connection with the
    +Program, unless a warranty or assumption of liability accompanies a
    +copy of the Program in return for a fee.
    +
    +                     END OF TERMS AND CONDITIONS
    +
    +            How to Apply These Terms to Your New Programs
    +
    +  If you develop a new program, and you want it to be of the greatest
    +possible use to the public, the best way to achieve this is to make it
    +free software which everyone can redistribute and change under these terms.
    +
    +  To do so, attach the following notices to the program.  It is safest
    +to attach them to the start of each source file to most effectively
    +state the exclusion of warranty; and each file should have at least
    +the "copyright" line and a pointer to where the full notice is found.
    +
    +    <one line to give the program's name and a brief idea of what it does.>
    +    Copyright (C) <year>  <name of author>
    +
    +    This program is free software: you can redistribute it and/or modify
    +    it under the terms of the GNU General Public License as published by
    +    the Free Software Foundation, either version 3 of the License, or
    +    (at your option) any later version.
    +
    +    This program is distributed in the hope that it will be useful,
    +    but WITHOUT ANY WARRANTY; without even the implied warranty of
    +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    +    GNU General Public License for more details.
    +
    +    You should have received a copy of the GNU General Public License
    +    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    +
    +Also add information on how to contact you by electronic and paper mail.
    +
    +  If the program does terminal interaction, make it output a short
    +notice like this when it starts in an interactive mode:
    +
    +    <program>  Copyright (C) <year>  <name of author>
    +    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    +    This is free software, and you are welcome to redistribute it
    +    under certain conditions; type `show c' for details.
    +
    +The hypothetical commands `show w' and `show c' should show the appropriate
    +parts of the General Public License.  Of course, your program's commands
    +might be different; for a GUI interface, you would use an "about box".
    +
    +  You should also get your employer (if you work as a programmer) or school,
    +if any, to sign a "copyright disclaimer" for the program, if necessary.
    +For more information on this, and how to apply and follow the GNU GPL, see
    +<http://www.gnu.org/licenses/>.
    +
    +  The GNU General Public License does not permit incorporating your program
    +into proprietary programs.  If your program is a subroutine library, you
    +may consider it more useful to permit linking proprietary applications with
    +the library.  If this is what you want to do, use the GNU Lesser General
    +Public License instead of this License.  But first, please read
    +<http://www.gnu.org/philosophy/why-not-lgpl.html>.
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/plugin-updates-report.html b/css/dependency-check-cli/plugin-updates-report.html new file mode 100644 index 000000000..1c958166d --- /dev/null +++ b/css/dependency-check-cli/plugin-updates-report.html @@ -0,0 +1,852 @@ + + + + + + + + + dependency-check-cli - Plugin Updates Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This report summarizes newer versions that may be available for your project's various plugins.

    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    # of plugins using the latest version available2
    # of plugins where the next version available is smaller than an incremental version update1
    # of plugins where the next version available is an incremental version update3
    # of plugins where the next version available is a minor version update11
    # of plugins where the next version available is a major version update0
    # of plugins where a dependencies section containes a dependency with an updated version1
    +
    +

    Plugin Management

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    org.apache.maven.pluginsmaven-antrun-plugin1.31.4
    org.apache.maven.pluginsmaven-assembly-plugin2.2-beta-52.22.2.12.3
    org.apache.maven.pluginsmaven-dependency-plugin2.12.2
    org.apache.maven.pluginsmaven-release-plugin2.12.2
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    +
    +

    Plugins

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    com.github.githubsite-maven-plugin0.70.8
    org.apache.maven.pluginsmaven-clean-plugin2.4.12.5
    org.apache.maven.pluginsmaven-compiler-plugin2.3.22.43.0
    org.apache.maven.pluginsmaven-deploy-plugin2.72.8
    org.apache.maven.pluginsmaven-enforcer-plugin1.01.0.11.1
    org.apache.maven.pluginsmaven-install-plugin2.3.12.4
    org.apache.maven.pluginsmaven-jar-plugin2.4
    org.apache.maven.pluginsmaven-javadoc-plugin2.92.9.1
    org.apache.maven.pluginsmaven-resources-plugin2.52.6
    org.apache.maven.pluginsmaven-site-plugin3.3
    org.apache.maven.pluginsmaven-surefire-plugin2.142.14.12.15
    org.codehaus.mojoappassembler-maven-plugin1.41.5
    org.codehaus.mojocobertura-maven-plugin2.5.22.6
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    +
    +

    Plugin Updates

    +

    +
    +

    Plugin com.github.github:site-maven-plugin

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idcom.github.github
    Artifact Idsite-maven-plugin
    Current Version0.7
    Newer versions0.8 Next Minor
    0.9 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-antrun-plugin
    Current Version1.3
    Newer versions1.4 Next Minor
    1.5
    1.6
    1.7 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer version available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-assembly-plugin
    Current Version2.2-beta-5
    Newer versions2.2 Next Version
    2.2.1 Next Incremental
    2.2.2 Latest Incremental
    2.3 Next Minor
    2.4 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-clean-plugin
    Current Version2.4.1
    Newer versions2.5 Next Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-compiler-plugin
    Current Version2.3.2
    Newer versions2.4 Next Minor
    2.5
    2.5-jenkins-1
    2.5.1 Latest Minor
    3.0 Next Major
    3.1 Latest Major
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-dependency-plugin
    Current Version2.1
    Newer versions2.2 Next Minor
    2.3
    2.4
    2.5
    2.5.1
    2.6
    2.7
    2.8 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    Newer versions2.8 Next Minor
    2.8.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-enforcer-plugin
    Current Version1.0
    Newer versions1.0.1 Next Incremental
    1.1 Next Minor
    1.1.1
    1.2
    1.3
    1.3.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-install-plugin
    Current Version2.3.1
    Newer versions2.4 Next Minor
    2.5
    2.5.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-jar-plugin
    Current Version2.4
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-javadoc-plugin
    Current Version2.9
    Newer versions2.9.1 Next Incremental
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-release-plugin
    Current Version2.1
    Newer versions2.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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-resources-plugin
    Current Version2.5
    Newer versions2.6 Next Minor
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-site-plugin
    Current Version3.3
    +
    +

    Dependencies of org.apache.maven.plugins:maven-site-plugin

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    org.apache.maven.doxiadoxia-module-markdown1.4jar1.5
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

    Dependency org.apache.maven.doxia:doxia-module-markdown

    + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    Newer versions1.5 Next Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-surefire-plugin
    Current Version2.14
    Newer versions2.14.1 Next Incremental
    2.15 Next Minor
    2.16 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.codehaus.mojo
    Artifact Idappassembler-maven-plugin
    Current Version1.4
    Newer versions1.5 Next Minor
    1.6 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.codehaus.mojo
    Artifact Idcobertura-maven-plugin
    Current Version2.5.2
    Newer versions2.6 Next Minor
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/pmd.html b/css/dependency-check-cli/pmd.html new file mode 100644 index 000000000..ba6805666 --- /dev/null +++ b/css/dependency-check-cli/pmd.html @@ -0,0 +1,268 @@ + + + + + + + + + dependency-check-cli - PMD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    PMD Results

    +

    The following document contains the results of PMD 5.0.2.

    +
    +

    Files

    +
    +

    org/owasp/dependencycheck/cli/CliParser.java

    + + + + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.245
    Useless parentheses.254
    Useless parentheses.263
    Useless parentheses.426
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/project-info.html b/css/dependency-check-cli/project-info.html new file mode 100644 index 000000000..7615e5992 --- /dev/null +++ b/css/dependency-check-cli/project-info.html @@ -0,0 +1,200 @@ + + + + + + + + + dependency-check-cli - Project Information + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Information

    +

    This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by Maven on behalf of the project.

    +
    +

    Overview

    + + + + + + + + + + + + +
    DocumentDescription
    AboutDependency-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.
    Project SummaryThis document lists other related information of this project
    Project LicenseThis is a link to the definitions of project licenses.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/project-reports.html b/css/dependency-check-cli/project-reports.html new file mode 100644 index 000000000..5aac55632 --- /dev/null +++ b/css/dependency-check-cli/project-reports.html @@ -0,0 +1,290 @@ + + + + + + + + + dependency-check-cli - Generated Reports + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Generated Reports

    +

    This document provides an overview of the various reports that are automatically generated by Maven . Each report is briefly described below.

    +
    +

    Overview

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DocumentDescription
    JavaDocsJavaDoc API documentation.
    Dependency Updates ReportProvides details of the dependencies which have updated versions available.
    Plugin Updates ReportProvides details of the plugins used by this project which have newer versions available.
    Source XrefHTML based, cross-reference version of Java source code.
    Test Source XrefHTML based, cross-reference version of Java test source code.
    Cobertura Test CoverageCobertura Test Coverage Report.
    Surefire ReportReport on the test results of the project.
    Tag ListReport on various tags found in the code.
    CheckstyleReport on coding style conventions.
    CPD ReportDuplicate code detection.
    PMD ReportVerification of coding rules.
    FindBugs ReportGenerates a source code report with the FindBugs Library.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/project-summary.html b/css/dependency-check-cli/project-summary.html new file mode 100644 index 000000000..f2b8072e2 --- /dev/null +++ b/css/dependency-check-cli/project-summary.html @@ -0,0 +1,232 @@ + + + + + + + + + dependency-check-cli - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    NameDependency-Check Command Line
    DescriptionDependency-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.
    Homepagehttps://github.com/jeremylong/DependencyCheck.git/dependency-check-cli
    +
    +

    Project Organization

    + + + + + + + + + +
    FieldValue
    NameOWASP
    URLhttp://www.owasp.org
    +
    +

    Build Information

    + + + + + + + + + + + + + + + + + + +
    FieldValue
    GroupIdorg.owasp
    ArtifactIddependency-check-cli
    Version1.0.6
    Typejar
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/surefire-report.html b/css/dependency-check-cli/surefire-report.html new file mode 100644 index 000000000..03a53095b --- /dev/null +++ b/css/dependency-check-cli/surefire-report.html @@ -0,0 +1,367 @@ + + + + + + + + + dependency-check-cli - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    9000100%0.048

    +

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


    +
    +

    Package List

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + + + +
    PackageTestsErrors FailuresSkippedSuccess RateTime
    org.owasp.dependencycheck.cli9000100%0.048

    +

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

    +
    +

    org.owasp.dependencycheck.cli

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    CliParserTest9000100%0.048

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    CliParserTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testParse_printHelp0.044
    testParse_printVersionInfo0
    testParse_help0
    testParse_scan0.001
    testParse0
    testParse_unknown0
    testParse_version0
    testParse_scan_unknownFile0.001
    testParse_scan_withFileExists0.002

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/taglist.html b/css/dependency-check-cli/taglist.html new file mode 100644 index 000000000..dc709ee59 --- /dev/null +++ b/css/dependency-check-cli/taglist.html @@ -0,0 +1,258 @@ + + + + + + + + + dependency-check-cli - Tag List report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Tag List Report

    +

    The following document contains the listing of user tags found in the code. Below is the summary of the occurrences per tag.

    + + + + + + + + +
    Tag ClassTotal number of occurrencesTag strings used by tag class
    Todo Work0todo, FIXME
    +

    Each tag is detailed below:

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-cli/xref-test/allclasses-frame.html b/css/dependency-check-cli/xref-test/allclasses-frame.html new file mode 100644 index 000000000..49fd7c096 --- /dev/null +++ b/css/dependency-check-cli/xref-test/allclasses-frame.html @@ -0,0 +1,20 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/css/dependency-check-cli/xref-test/index.html b/css/dependency-check-cli/xref-test/index.html new file mode 100644 index 000000000..db85415a2 --- /dev/null +++ b/css/dependency-check-cli/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference + + + + + + + + + <body> + <h1>Frame Alert</h1> + <p> + You don't have frames. Go <a href="overview-summary.html">here</a> + </p> + </body> + + + + diff --git a/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html b/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html new file mode 100644 index 000000000..6d2a6a177 --- /dev/null +++ b/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html @@ -0,0 +1,285 @@ + + + + +CliParserTest xref + + + +
    +
    +1   /*
    +2    * This file is part of Dependency-Check.
    +3    *
    +4    * Dependency-Check is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-Check is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * Dependency-Check. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.cli;
    +20  
    +21  import org.owasp.dependencycheck.cli.CliParser;
    +22  import java.io.ByteArrayOutputStream;
    +23  import java.io.File;
    +24  import java.io.FileNotFoundException;
    +25  import java.io.IOException;
    +26  import java.io.PrintStream;
    +27  import org.apache.commons.cli.ParseException;
    +28  import org.junit.After;
    +29  import org.junit.AfterClass;
    +30  import org.junit.Assert;
    +31  import org.junit.Before;
    +32  import org.junit.BeforeClass;
    +33  import org.junit.Test;
    +34  
    +35  /**
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class CliParserTest {
    +40  
    +41      @BeforeClass
    +42      public static void setUpClass() throws Exception {
    +43      }
    +44  
    +45      @AfterClass
    +46      public static void tearDownClass() throws Exception {
    +47      }
    +48  
    +49      @Before
    +50      public void setUp() throws Exception {
    +51      }
    +52  
    +53      @After
    +54      public void tearDown() throws Exception {
    +55      }
    +56  
    +57      /**
    +58       * Test of parse method, of class CliParser.
    +59       *
    +60       * @throws Exception thrown when an exception occurs.
    +61       */
    +62      @Test
    +63      public void testParse() throws Exception {
    +64  
    +65          String[] args = {};
    +66          PrintStream out = System.out;
    +67  
    +68          ByteArrayOutputStream baos = new ByteArrayOutputStream();
    +69          System.setOut(new PrintStream(baos));
    +70  
    +71          CliParser instance = new CliParser();
    +72          instance.parse(args);
    +73  
    +74          Assert.assertFalse(instance.isGetVersion());
    +75          Assert.assertFalse(instance.isGetHelp());
    +76          Assert.assertFalse(instance.isRunScan());
    +77      }
    +78  
    +79      /**
    +80       * Test of parse method with help arg, of class CliParser.
    +81       *
    +82       * @throws Exception thrown when an exception occurs.
    +83       */
    +84      @Test
    +85      public void testParse_help() throws Exception {
    +86  
    +87          String[] args = {"-help"};
    +88          PrintStream out = System.out;
    +89  
    +90          CliParser instance = new CliParser();
    +91          instance.parse(args);
    +92  
    +93          Assert.assertFalse(instance.isGetVersion());
    +94          Assert.assertTrue(instance.isGetHelp());
    +95          Assert.assertFalse(instance.isRunScan());
    +96      }
    +97  
    +98      /**
    +99       * Test of parse method with version arg, of class CliParser.
    +100      *
    +101      * @throws Exception thrown when an exception occurs.
    +102      */
    +103     @Test
    +104     public void testParse_version() throws Exception {
    +105 
    +106         String[] args = {"-version"};
    +107 
    +108         CliParser instance = new CliParser();
    +109         instance.parse(args);
    +110         Assert.assertTrue(instance.isGetVersion());
    +111         Assert.assertFalse(instance.isGetHelp());
    +112         Assert.assertFalse(instance.isRunScan());
    +113 
    +114     }
    +115 
    +116     /**
    +117      * Test of parse method with jar and cpe args, of class CliParser.
    +118      *
    +119      * @throws Exception thrown when an exception occurs.
    +120      */
    +121     @Test
    +122     public void testParse_unknown() throws Exception {
    +123 
    +124         String[] args = {"-unknown"};
    +125 
    +126         PrintStream out = System.out;
    +127         PrintStream err = System.err;
    +128         ByteArrayOutputStream baos_out = new ByteArrayOutputStream();
    +129         ByteArrayOutputStream baos_err = new ByteArrayOutputStream();
    +130         System.setOut(new PrintStream(baos_out));
    +131         System.setErr(new PrintStream(baos_err));
    +132 
    +133         CliParser instance = new CliParser();
    +134 
    +135         try {
    +136             instance.parse(args);
    +137         } catch (ParseException ex) {
    +138             Assert.assertTrue(ex.getMessage().contains("Unrecognized option"));
    +139         }
    +140         Assert.assertFalse(instance.isGetVersion());
    +141         Assert.assertFalse(instance.isGetHelp());
    +142         Assert.assertFalse(instance.isRunScan());
    +143     }
    +144 
    +145     /**
    +146      * Test of parse method with scan arg, of class CliParser.
    +147      *
    +148      * @throws Exception thrown when an exception occurs.
    +149      */
    +150     @Test
    +151     public void testParse_scan() throws Exception {
    +152 
    +153         String[] args = {"-scan"};
    +154 
    +155         CliParser instance = new CliParser();
    +156 
    +157         try {
    +158             instance.parse(args);
    +159         } catch (ParseException ex) {
    +160             Assert.assertTrue(ex.getMessage().contains("Missing argument"));
    +161         }
    +162 
    +163         Assert.assertFalse(instance.isGetVersion());
    +164         Assert.assertFalse(instance.isGetHelp());
    +165         Assert.assertFalse(instance.isRunScan());
    +166     }
    +167 
    +168     /**
    +169      * Test of parse method with jar arg, of class CliParser.
    +170      *
    +171      * @throws Exception thrown when an exception occurs.
    +172      */
    +173     @Test
    +174     public void testParse_scan_unknownFile() throws Exception {
    +175 
    +176         String[] args = {"-scan", "jar.that.does.not.exist", "-app", "test"};
    +177 
    +178         CliParser instance = new CliParser();
    +179         try {
    +180             instance.parse(args);
    +181         } catch (FileNotFoundException ex) {
    +182             Assert.assertTrue(ex.getMessage().contains("Invalid 'scan' argument"));
    +183         }
    +184 
    +185         Assert.assertFalse(instance.isGetVersion());
    +186         Assert.assertFalse(instance.isGetHelp());
    +187         Assert.assertFalse(instance.isRunScan());
    +188     }
    +189 
    +190     /**
    +191      * Test of parse method with jar arg, of class CliParser.
    +192      *
    +193      * @throws Exception thrown when an exception occurs.
    +194      */
    +195     @Test
    +196     public void testParse_scan_withFileExists() throws Exception {
    +197         File path = new File(this.getClass().getClassLoader().getResource("checkSumTest.file").getPath());
    +198         String[] args = {"-scan", path.getCanonicalPath(), "-out", "./", "-app", "test"};
    +199 
    +200         CliParser instance = new CliParser();
    +201         instance.parse(args);
    +202 
    +203         Assert.assertEquals(path.getCanonicalPath(), instance.getScanFiles()[0]);
    +204 
    +205         Assert.assertFalse(instance.isGetVersion());
    +206         Assert.assertFalse(instance.isGetHelp());
    +207         Assert.assertTrue(instance.isRunScan());
    +208     }
    +209 
    +210     /**
    +211      * Test of printVersionInfo, of class CliParser.
    +212      *
    +213      * @throws Exception thrown when an exception occurs.
    +214      */
    +215     @Test
    +216     public void testParse_printVersionInfo() throws Exception {
    +217 
    +218         PrintStream out = System.out;
    +219         ByteArrayOutputStream baos = new ByteArrayOutputStream();
    +220         System.setOut(new PrintStream(baos));
    +221 
    +222         CliParser instance = new CliParser();
    +223         instance.printVersionInfo();
    +224         try {
    +225             baos.flush();
    +226             String text = (new String(baos.toByteArray())).toLowerCase();
    +227             String[] lines = text.split(System.getProperty("line.separator"));
    +228             Assert.assertEquals(1, lines.length);
    +229             Assert.assertTrue(text.contains("version"));
    +230             Assert.assertTrue(!text.contains("unknown"));
    +231         } catch (IOException ex) {
    +232             System.setOut(out);
    +233             Assert.fail("CliParser.printVersionInfo did not write anything to system.out.");
    +234         } finally {
    +235             System.setOut(out);
    +236         }
    +237     }
    +238 
    +239     /**
    +240      * Test of printHelp, of class CliParser.
    +241      *
    +242      * @throws Exception thrown when an exception occurs.
    +243      */
    +244     @Test
    +245     public void testParse_printHelp() throws Exception {
    +246 
    +247         PrintStream out = System.out;
    +248         ByteArrayOutputStream baos = new ByteArrayOutputStream();
    +249         System.setOut(new PrintStream(baos));
    +250 
    +251         CliParser instance = new CliParser();
    +252         String[] args = {"-h"};
    +253         instance.parse(args);
    +254         instance.printHelp();
    +255         args[0] = "-ah";
    +256         instance.parse(args);
    +257         instance.printHelp();
    +258         try {
    +259             baos.flush();
    +260             String text = (new String(baos.toByteArray()));
    +261             String[] lines = text.split(System.getProperty("line.separator"));
    +262             Assert.assertTrue(lines[0].startsWith("usage: "));
    +263             Assert.assertTrue((lines.length > 2));
    +264         } catch (IOException ex) {
    +265             System.setOut(out);
    +266             Assert.fail("CliParser.printVersionInfo did not write anything to system.out.");
    +267         } finally {
    +268             System.setOut(out);
    +269         }
    +270     }
    +271 }
    +
    +
    + + diff --git a/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html b/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html new file mode 100644 index 000000000..c016d97e0 --- /dev/null +++ b/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference Package org.owasp.dependencycheck.cli + + + + +

    + org.owasp.dependencycheck.cli +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html b/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html new file mode 100644 index 000000000..fa8da3248 --- /dev/null +++ b/css/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference Package org.owasp.dependencycheck.cli + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.cli

    + + + + + + + + + + + + +
    Class Summary
    + CliParserTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref-test/overview-frame.html b/css/dependency-check-cli/xref-test/overview-frame.html new file mode 100644 index 000000000..7800ffb7e --- /dev/null +++ b/css/dependency-check-cli/xref-test/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/css/dependency-check-cli/xref-test/overview-summary.html b/css/dependency-check-cli/xref-test/overview-summary.html new file mode 100644 index 000000000..3eb8a8845 --- /dev/null +++ b/css/dependency-check-cli/xref-test/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    Dependency-Check Command Line 1.0.6 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.cli +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref-test/stylesheet.css b/css/dependency-check-cli/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/css/dependency-check-cli/xref-test/stylesheet.css @@ -0,0 +1,116 @@ +/* Javadoc style sheet */ +/* Define colors, fonts and other style attributes here to override the defaults */ +body { + background-color: #fff; + font-family: Arial, Helvetica, sans-serif; +} + +a:link { + color: #00f; +} +a:visited { + color: #00a; +} + +a:active, a:hover { + color: #f30 !important; +} + +ul, li { + list-style-type:none; + margin:0; + padding:0; +} + +table td { + padding: 3px; + border: 1px solid #000; +} +table { + width:100%; + border: 1px solid #000; + border-collapse: collapse; +} + +div.overview { + background-color:#ddd; + padding: 4px 4px 4px 0; +} +div.overview li, div.framenoframe li { + display: inline; +} +div.framenoframe { + text-align: center; + font-size: x-small; +} +div.framenoframe li { + margin: 0 3px 0 3px; +} +div.overview li { + margin:3px 3px 0 3px; + padding: 4px; +} +li.selected { + background-color:#888; + color: #fff; + font-weight: bold; +} + +table.summary { + margin-bottom: 20px; +} +table.summary td, table.summary th { + font-weight: bold; + text-align: left; + padding: 3px; +} +table.summary th { + background-color:#036; + color: #fff; +} +table.summary td { + background-color:#eee; + border: 1px solid black; +} + +em { + color: #A00; +} +em.comment { + color: #390; +} +.string { + color: #009; +} +div#footer { + text-align:center; +} +#overview { + padding:2px; +} + +hr { + height: 1px; + color: #000; +} + +/* JXR style sheet */ +.jxr_comment +{ + color: #390; +} + +.jxr_javadoccomment +{ + color: #A00; +} + +.jxr_string +{ + color: #009; +} + +.jxr_keyword +{ + color: #000; +} diff --git a/css/dependency-check-cli/xref/allclasses-frame.html b/css/dependency-check-cli/xref/allclasses-frame.html new file mode 100644 index 000000000..22c03fadd --- /dev/null +++ b/css/dependency-check-cli/xref/allclasses-frame.html @@ -0,0 +1,26 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/css/dependency-check-cli/xref/index.html b/css/dependency-check-cli/xref/index.html new file mode 100644 index 000000000..db85415a2 --- /dev/null +++ b/css/dependency-check-cli/xref/index.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference + + + + + + + + + <body> + <h1>Frame Alert</h1> + <p> + You don't have frames. Go <a href="overview-summary.html">here</a> + </p> + </body> + + + + diff --git a/css/dependency-check-cli/xref/org/owasp/dependencycheck/App.html b/css/dependency-check-cli/xref/org/owasp/dependencycheck/App.html new file mode 100644 index 000000000..8e5b70c72 --- /dev/null +++ b/css/dependency-check-cli/xref/org/owasp/dependencycheck/App.html @@ -0,0 +1,219 @@ + + + + +App xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-cli.
    +3    *
    +4    * Dependency-check-cli is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-cli is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-cli. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileNotFoundException;
    +23  import java.io.IOException;
    +24  import java.io.InputStream;
    +25  import java.util.List;
    +26  import java.util.logging.Level;
    +27  import java.util.logging.Logger;
    +28  import org.apache.commons.cli.ParseException;
    +29  import org.owasp.dependencycheck.reporting.ReportGenerator;
    +30  import org.owasp.dependencycheck.dependency.Dependency;
    +31  import org.owasp.dependencycheck.cli.CliParser;
    +32  import org.owasp.dependencycheck.utils.LogUtils;
    +33  import org.owasp.dependencycheck.utils.Settings;
    +34  
    +35  /*
    +36   * This file is part of App.
    +37   *
    +38   * App is free software: you can redistribute it and/or modify it under the
    +39   * terms of the GNU General Public License as published by the Free Software
    +40   * Foundation, either version 3 of the License, or (at your option) any later
    +41   * version.
    +42   *
    +43   * App is distributed in the hope that it will be useful, but WITHOUT ANY
    +44   * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    +45   * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
    +46   *
    +47   * You should have received a copy of the GNU General Public License along with
    +48   * App. If not, see http://www.gnu.org/licenses/.
    +49   *
    +50   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +51   */
    +52  /**
    +53   * The command line interface for the DependencyCheck application.
    +54   *
    +55   * @author Jeremy Long (jeremy.long@owasp.org)
    +56   */
    +57  public class App {
    +58  
    +59      /**
    +60       * The location of the log properties configuration file.
    +61       */
    +62      private static final String LOG_PROPERTIES_FILE = "log.properties";
    +63  
    +64      /**
    +65       * The main method for the application.
    +66       *
    +67       * @param args the command line arguments
    +68       */
    +69      public static void main(String[] args) {
    +70          final App app = new App();
    +71          app.run(args);
    +72      }
    +73  
    +74      /**
    +75       * Main CLI entry-point into the application.
    +76       *
    +77       * @param args the command line arguments
    +78       */
    +79      public void run(String[] args) {
    +80  
    +81          final CliParser cli = new CliParser();
    +82          try {
    +83              cli.parse(args);
    +84          } catch (FileNotFoundException ex) {
    +85              System.err.println(ex.getMessage());
    +86              cli.printHelp();
    +87              return;
    +88          } catch (ParseException ex) {
    +89              System.err.println(ex.getMessage());
    +90              cli.printHelp();
    +91              return;
    +92          }
    +93  
    +94          final InputStream in = App.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +95          LogUtils.prepareLogger(in, cli.getVerboseLog());
    +96  
    +97          if (cli.isGetVersion()) {
    +98              cli.printVersionInfo();
    +99          } else if (cli.isRunScan()) {
    +100             updateSettings(cli.isAutoUpdate(), cli.getConnectionTimeout(), cli.getProxyUrl(),
    +101                     cli.getProxyPort(), cli.getProxyUsername(), cli.getProxyPassword(),
    +102                     cli.getDataDirectory(), cli.getPropertiesFile(), cli.getSuppressionFile());
    +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      */
    +119     private void runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) {
    +120         final Engine scanner = new Engine();
    +121 
    +122         for (String file : files) {
    +123             scanner.scan(file);
    +124         }
    +125 
    +126         scanner.analyzeDependencies();
    +127         final List<Dependency> dependencies = scanner.getDependencies();
    +128 
    +129         final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers());
    +130         try {
    +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 proxyUser the proxy user name
    +151      * @param proxyPass the password for the proxy
    +152      * @param dataDirectory the directory to store/retrieve persistent data from
    +153      * @param propertiesFile the properties file to utilize
    +154      * @param suppressionFile the path to the suppression file
    +155      */
    +156     private void updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, String proxyPort,
    +157             String proxyUser, String proxyPass, String dataDirectory, File propertiesFile,
    +158             String suppressionFile) {
    +159 
    +160         if (propertiesFile != null) {
    +161             try {
    +162                 Settings.mergeProperties(propertiesFile);
    +163             } catch (FileNotFoundException ex) {
    +164                 final String msg = String.format("Unable to load 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             } catch (IOException ex) {
    +168                 final String msg = String.format("Unable to find properties file '%s'", propertiesFile.getPath());
    +169                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg);
    +170                 Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex);
    +171             }
    +172         }
    +173         if (dataDirectory != null) {
    +174             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    +175         } else if (System.getProperty("basedir") != null) {
    +176             final File dataDir = new File(System.getProperty("basedir"), "data");
    +177             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +178         } else {
    +179             final File jarPath = new File(App.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    +180             final File base = jarPath.getParentFile();
    +181             final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +182             final File dataDir = new File(base, sub);
    +183             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +184         }
    +185         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +186         if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +187             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +188         }
    +189         if (proxyPort != null && !proxyPort.isEmpty()) {
    +190             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +191         }
    +192         if (proxyUser != null && !proxyUser.isEmpty()) {
    +193             Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUser);
    +194         }
    +195         if (proxyPass != null && !proxyPass.isEmpty()) {
    +196             Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPass);
    +197         }
    +198         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +199             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +200         }
    +201         if (suppressionFile != null && !suppressionFile.isEmpty()) {
    +202             Settings.setString(Settings.KEYS.SUPPRESSION_FILE, suppressionFile);
    +203         }
    +204     }
    +205 }
    +
    +
    + + diff --git a/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html b/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html new file mode 100644 index 000000000..cff5f562f --- /dev/null +++ b/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html @@ -0,0 +1,592 @@ + + + + +CliParser xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-cli.
    +3    *
    +4    * Dependency-check-cli is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-cli is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-cli. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.cli;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileNotFoundException;
    +23  import org.apache.commons.cli.CommandLine;
    +24  import org.apache.commons.cli.CommandLineParser;
    +25  import org.apache.commons.cli.HelpFormatter;
    +26  import org.apache.commons.cli.Option;
    +27  import org.apache.commons.cli.OptionBuilder;
    +28  import org.apache.commons.cli.OptionGroup;
    +29  import org.apache.commons.cli.Options;
    +30  import org.apache.commons.cli.ParseException;
    +31  import org.apache.commons.cli.PosixParser;
    +32  import org.owasp.dependencycheck.reporting.ReportGenerator.Format;
    +33  import org.owasp.dependencycheck.utils.Settings;
    +34  
    +35  /**
    +36   * A utility to parse command line arguments for the DependencyCheck.
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public final class CliParser {
    +41  
    +42      /**
    +43       * The command line.
    +44       */
    +45      private CommandLine line;
    +46      /**
    +47       * The options for the command line parser.
    +48       */
    +49      private final Options options = createCommandLineOptions();
    +50      /**
    +51       * Indicates whether the arguments are valid.
    +52       */
    +53      private boolean isValid = true;
    +54  
    +55      /**
    +56       * Parses the arguments passed in and captures the results for later use.
    +57       *
    +58       * @param args the command line arguments
    +59       * @throws FileNotFoundException is thrown when a 'file' argument does not
    +60       * point to a file that exists.
    +61       * @throws ParseException is thrown when a Parse Exception occurs.
    +62       */
    +63      public void parse(String[] args) throws FileNotFoundException, ParseException {
    +64          line = parseArgs(args);
    +65  
    +66          if (line != null) {
    +67              validateArgs();
    +68          }
    +69      }
    +70  
    +71      /**
    +72       * Parses the command line arguments.
    +73       *
    +74       * @param args the command line arguments
    +75       * @return the results of parsing the command line arguments
    +76       * @throws ParseException if the arguments are invalid
    +77       */
    +78      private CommandLine parseArgs(String[] args) throws ParseException {
    +79          final CommandLineParser parser = new PosixParser();
    +80          return parser.parse(options, args);
    +81      }
    +82  
    +83      /**
    +84       * Validates that the command line arguments are valid.
    +85       *
    +86       * @throws FileNotFoundException if there is a file specified by either the
    +87       * SCAN or CPE command line arguments that does not exist.
    +88       * @throws ParseException is thrown if there is an exception parsing the
    +89       * command line.
    +90       */
    +91      private void validateArgs() throws FileNotFoundException, ParseException {
    +92          if (isRunScan()) {
    +93              validatePathExists(getScanFiles(), "scan");
    +94              validatePathExists(getReportDirectory(), "out");
    +95              if (!line.hasOption(ArgumentName.APP_NAME)) {
    +96                  throw new ParseException("Missing 'app' argument; the scan cannot be run without the an application name.");
    +97              }
    +98              if (line.hasOption(ArgumentName.OUTPUT_FORMAT)) {
    +99                  final String format = line.getOptionValue(ArgumentName.OUTPUT_FORMAT);
    +100                 try {
    +101                     Format.valueOf(format);
    +102                 } catch (IllegalArgumentException ex) {
    +103                     final String msg = String.format("An invalid 'format' of '%s' was specified. Supported output formats are XML, HTML, VULN, or ALL", format);
    +104                     throw new ParseException(msg);
    +105                 }
    +106             }
    +107         }
    +108     }
    +109 
    +110     /**
    +111      * Validates whether or not the path(s) points at a file that exists; if the
    +112      * path(s) does not point to an existing file a FileNotFoundException is
    +113      * thrown.
    +114      *
    +115      * @param paths the paths to validate if they exists
    +116      * @param optType the option being validated (e.g. scan, out, etc.)
    +117      * @throws FileNotFoundException is thrown if one of the paths being
    +118      * validated does not exist.
    +119      */
    +120     private void validatePathExists(String[] paths, String optType) throws FileNotFoundException {
    +121         for (String path : paths) {
    +122             validatePathExists(path, optType);
    +123         }
    +124     }
    +125 
    +126     /**
    +127      * Validates whether or not the path points at a file that exists; if the
    +128      * path does not point to an existing file a FileNotFoundException is
    +129      * thrown.
    +130      *
    +131      * @param path the paths to validate if they exists
    +132      * @param optType the option being validated (e.g. scan, out, etc.)
    +133      * @throws FileNotFoundException is thrown if the path being validated does
    +134      * not exist.
    +135      */
    +136     private void validatePathExists(String path, String optType) throws FileNotFoundException {
    +137         final File f = new File(path);
    +138         if (!f.exists()) {
    +139             isValid = false;
    +140             final String msg = String.format("Invalid '%s' argument: '%s'", optType, path);
    +141             throw new FileNotFoundException(msg);
    +142         }
    +143     }
    +144 
    +145     /**
    +146      * Generates an Options collection that is used to parse the command line
    +147      * and to display the help message.
    +148      *
    +149      * @return the command line options used for parsing the command line
    +150      */
    +151     @SuppressWarnings("static-access")
    +152     private Options createCommandLineOptions() {
    +153         final Option help = new Option(ArgumentName.HELP_SHORT, ArgumentName.HELP, false,
    +154                 "Print this message.");
    +155 
    +156         final Option version = new Option(ArgumentName.VERSION_SHORT, ArgumentName.VERSION,
    +157                 false, "Print the version information.");
    +158 
    +159         final Option noUpdate = new Option(ArgumentName.DISABLE_AUTO_UPDATE_SHORT, ArgumentName.DISABLE_AUTO_UPDATE,
    +160                 false, "Disables the automatic updating of the CPE data.");
    +161 
    +162         final Option appName = OptionBuilder.withArgName("name").hasArg().withLongOpt(ArgumentName.APP_NAME)
    +163                 .withDescription("The name of the application being scanned. This is a required argument.")
    +164                 .create(ArgumentName.APP_NAME_SHORT);
    +165 
    +166         final Option connectionTimeout = OptionBuilder.withArgName("timeout").hasArg().withLongOpt(ArgumentName.CONNECTION_TIMEOUT)
    +167                 .withDescription("The connection timeout (in milliseconds) to use when downloading resources.")
    +168                 .create(ArgumentName.CONNECTION_TIMEOUT_SHORT);
    +169 
    +170         final Option proxyUrl = OptionBuilder.withArgName("url").hasArg().withLongOpt(ArgumentName.PROXY_URL)
    +171                 .withDescription("The proxy url to use when downloading resources.")
    +172                 .create(ArgumentName.PROXY_URL_SHORT);
    +173 
    +174         final Option proxyPort = OptionBuilder.withArgName("port").hasArg().withLongOpt(ArgumentName.PROXY_PORT)
    +175                 .withDescription("The proxy port to use when downloading resources.")
    +176                 .create(ArgumentName.PROXY_PORT_SHORT);
    +177 
    +178         final 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 
    +182         final 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 
    +186         final 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 
    +190         final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP)
    +191                 .withDescription("A property file to load.")
    +192                 .create(ArgumentName.PROP_SHORT);
    +193 
    +194         final 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 
    +198         final 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 
    +202         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 
    +206         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 
    +210         final Option suppressionFile = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.SUPPRESION_FILE)
    +211                 .withDescription("The file path to the suppression XML file.")
    +212                 .create(ArgumentName.SUPPRESION_FILE_SHORT);
    +213 
    +214 
    +215         final OptionGroup og = new OptionGroup();
    +216         og.addOption(path);
    +217 
    +218         final Options opts = new Options();
    +219         opts.addOptionGroup(og);
    +220         opts.addOption(out);
    +221         opts.addOption(outputFormat);
    +222         opts.addOption(appName);
    +223         opts.addOption(version);
    +224         opts.addOption(help);
    +225         opts.addOption(noUpdate);
    +226         opts.addOption(props);
    +227         opts.addOption(data);
    +228         opts.addOption(verboseLog);
    +229         opts.addOption(suppressionFile);
    +230         opts.addOption(proxyPort);
    +231         opts.addOption(proxyUrl);
    +232         opts.addOption(proxyUsername);
    +233         opts.addOption(proxyPassword);
    +234         opts.addOption(connectionTimeout);
    +235 
    +236         return opts;
    +237     }
    +238 
    +239     /**
    +240      * Determines if the 'version' command line argument was passed in.
    +241      *
    +242      * @return whether or not the 'version' command line argument was passed in
    +243      */
    +244     public boolean isGetVersion() {
    +245         return (line != null) && line.hasOption(ArgumentName.VERSION);
    +246     }
    +247 
    +248     /**
    +249      * Determines if the 'help' command line argument was passed in.
    +250      *
    +251      * @return whether or not the 'help' command line argument was passed in
    +252      */
    +253     public boolean isGetHelp() {
    +254         return (line != null) && line.hasOption(ArgumentName.HELP);
    +255     }
    +256 
    +257     /**
    +258      * Determines if the 'scan' command line argument was passed in.
    +259      *
    +260      * @return whether or not the 'scan' command line argument was passed in
    +261      */
    +262     public boolean isRunScan() {
    +263         return (line != null) && isValid && line.hasOption(ArgumentName.SCAN);
    +264     }
    +265 
    +266     /**
    +267      * Displays the command line help message to the standard output.
    +268      */
    +269     public void printHelp() {
    +270         final HelpFormatter formatter = new HelpFormatter();
    +271         final String nl = System.getProperty("line.separator");
    +272 
    +273         formatter.printHelp(Settings.getString("application.name", "DependencyCheck"),
    +274                 nl + Settings.getString("application.name", "DependencyCheck")
    +275                 + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. "
    +276                 + Settings.getString("application.name", "DependencyCheck")
    +277                 + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl,
    +278                 options,
    +279                 "",
    +280                 true);
    +281     }
    +282 
    +283     /**
    +284      * Retrieves the file command line parameter(s) specified for the 'scan'
    +285      * argument.
    +286      *
    +287      * @return the file paths specified on the command line for scan
    +288      */
    +289     public String[] getScanFiles() {
    +290         return line.getOptionValues(ArgumentName.SCAN);
    +291     }
    +292 
    +293     /**
    +294      * Returns the directory to write the reports to specified on the command
    +295      * line.
    +296      *
    +297      * @return the path to the reports directory.
    +298      */
    +299     public String getReportDirectory() {
    +300         return line.getOptionValue(ArgumentName.OUT, ".");
    +301     }
    +302 
    +303     /**
    +304      * Returns the output format specified on the command line. Defaults to HTML
    +305      * if no format was specified.
    +306      *
    +307      * @return the output format name.
    +308      */
    +309     public String getReportFormat() {
    +310         return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML");
    +311     }
    +312 
    +313     /**
    +314      * Returns the application name specified on the command line.
    +315      *
    +316      * @return the application name.
    +317      */
    +318     public String getApplicationName() {
    +319         return line.getOptionValue(ArgumentName.APP_NAME);
    +320     }
    +321 
    +322     /**
    +323      * Returns the connection timeout.
    +324      *
    +325      * @return the connection timeout
    +326      */
    +327     public String getConnectionTimeout() {
    +328         return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT);
    +329     }
    +330 
    +331     /**
    +332      * Returns the proxy url.
    +333      *
    +334      * @return the proxy url
    +335      */
    +336     public String getProxyUrl() {
    +337         return line.getOptionValue(ArgumentName.PROXY_URL);
    +338     }
    +339 
    +340     /**
    +341      * Returns the proxy port.
    +342      *
    +343      * @return the proxy port
    +344      */
    +345     public String getProxyPort() {
    +346         return line.getOptionValue(ArgumentName.PROXY_PORT);
    +347     }
    +348 
    +349     /**
    +350      * Returns the proxy username.
    +351      *
    +352      * @return the proxy username
    +353      */
    +354     public String getProxyUsername() {
    +355         return line.getOptionValue(ArgumentName.PROXY_USERNAME);
    +356     }
    +357 
    +358     /**
    +359      * Returns the proxy password.
    +360      *
    +361      * @return the proxy password
    +362      */
    +363     public String getProxyPassword() {
    +364         return line.getOptionValue(ArgumentName.PROXY_PASSWORD);
    +365     }
    +366 
    +367     /**
    +368      * Get the value of dataDirectory.
    +369      *
    +370      * @return the value of dataDirectory
    +371      */
    +372     public String getDataDirectory() {
    +373         return line.getOptionValue(ArgumentName.DATA_DIRECTORY);
    +374     }
    +375 
    +376     /**
    +377      * Returns the properties file specified on the command line.
    +378      *
    +379      * @return the properties file specified on the command line
    +380      */
    +381     public File getPropertiesFile() {
    +382         final String path = line.getOptionValue(ArgumentName.PROP);
    +383         if (path != null) {
    +384             return new File(path);
    +385         }
    +386         return null;
    +387     }
    +388 
    +389     /**
    +390      * Returns the path to the verbose log file.
    +391      *
    +392      * @return the path to the verbose log file
    +393      */
    +394     public String getVerboseLog() {
    +395         return line.getOptionValue(ArgumentName.VERBOSE_LOG);
    +396     }
    +397 
    +398     /**
    +399      * Returns the path to the suppression file.
    +400      *
    +401      * @return the path to the suppression file
    +402      */
    +403     public String getSuppressionFile() {
    +404         return line.getOptionValue(ArgumentName.SUPPRESION_FILE);
    +405     }
    +406 
    +407     /**
    +408      * <p>Prints the manifest information to standard output.</p>
    +409      * <ul><li>Implementation-Title: ${pom.name}</li>
    +410      * <li>Implementation-Version: ${pom.version}</li></ul>
    +411      */
    +412     public void printVersionInfo() {
    +413         final String version = String.format("%s version %s",
    +414                 Settings.getString("application.name", "DependencyCheck"),
    +415                 Settings.getString("application.version", "Unknown"));
    +416         System.out.println(version);
    +417     }
    +418 
    +419     /**
    +420      * Checks if the auto update feature has been disabled. If it has been
    +421      * disabled via the command line this will return false.
    +422      *
    +423      * @return if auto-update is allowed.
    +424      */
    +425     public boolean isAutoUpdate() {
    +426         return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE);
    +427     }
    +428 
    +429     /**
    +430      * A collection of static final strings that represent the possible command
    +431      * line arguments.
    +432      */
    +433     public static class ArgumentName {
    +434 
    +435         /**
    +436          * The long CLI argument name specifying the directory/file to scan.
    +437          */
    +438         public static final String SCAN = "scan";
    +439         /**
    +440          * The short CLI argument name specifying the directory/file to scan.
    +441          */
    +442         public static final String SCAN_SHORT = "s";
    +443         /**
    +444          * The long CLI argument name specifying that the CPE/CVE/etc. data
    +445          * should not be automatically updated.
    +446          */
    +447         public static final String DISABLE_AUTO_UPDATE = "noupdate";
    +448         /**
    +449          * The short CLI argument name specifying that the CPE/CVE/etc. data
    +450          * should not be automatically updated.
    +451          */
    +452         public static final String DISABLE_AUTO_UPDATE_SHORT = "n";
    +453         /**
    +454          * The long CLI argument name specifying the directory to write the
    +455          * reports to.
    +456          */
    +457         public static final String OUT = "out";
    +458         /**
    +459          * The short CLI argument name specifying the directory to write the
    +460          * reports to.
    +461          */
    +462         public static final String OUT_SHORT = "o";
    +463         /**
    +464          * The long CLI argument name specifying the output format to write the
    +465          * reports to.
    +466          */
    +467         public static final String OUTPUT_FORMAT = "format";
    +468         /**
    +469          * The short CLI argument name specifying the output format to write the
    +470          * reports to.
    +471          */
    +472         public static final String OUTPUT_FORMAT_SHORT = "f";
    +473         /**
    +474          * The long CLI argument name specifying the name of the application to
    +475          * be scanned.
    +476          */
    +477         public static final String APP_NAME = "app";
    +478         /**
    +479          * The short CLI argument name specifying the name of the application to
    +480          * be scanned.
    +481          */
    +482         public static final String APP_NAME_SHORT = "a";
    +483         /**
    +484          * The long CLI argument name asking for help.
    +485          */
    +486         public static final String HELP = "help";
    +487         /**
    +488          * The short CLI argument name asking for help.
    +489          */
    +490         public static final String HELP_SHORT = "h";
    +491         /**
    +492          * The long CLI argument name asking for the version.
    +493          */
    +494         public static final String VERSION_SHORT = "v";
    +495         /**
    +496          * The short CLI argument name asking for the version.
    +497          */
    +498         public static final String VERSION = "version";
    +499         /**
    +500          * The short CLI argument name indicating the proxy port.
    +501          */
    +502         public static final String PROXY_PORT_SHORT = "p";
    +503         /**
    +504          * The CLI argument name indicating the proxy port.
    +505          */
    +506         public static final String PROXY_PORT = "proxyport";
    +507         /**
    +508          * The short CLI argument name indicating the proxy url.
    +509          */
    +510         public static final String PROXY_URL_SHORT = "u";
    +511         /**
    +512          * The CLI argument name indicating the proxy url.
    +513          */
    +514         public static final String PROXY_URL = "proxyurl";
    +515         /**
    +516          * The short CLI argument name indicating the proxy username.
    +517          */
    +518         public static final String PROXY_USERNAME_SHORT = "pu";
    +519         /**
    +520          * The CLI argument name indicating the proxy username.
    +521          */
    +522         public static final String PROXY_USERNAME = "proxyuser";
    +523         /**
    +524          * The short CLI argument name indicating the proxy password.
    +525          */
    +526         public static final String PROXY_PASSWORD_SHORT = "pp";
    +527         /**
    +528          * The CLI argument name indicating the proxy password.
    +529          */
    +530         public static final String PROXY_PASSWORD = "proxypass";
    +531         /**
    +532          * The short CLI argument name indicating the connection timeout.
    +533          */
    +534         public static final String CONNECTION_TIMEOUT_SHORT = "c";
    +535         /**
    +536          * The CLI argument name indicating the connection timeout.
    +537          */
    +538         public static final String CONNECTION_TIMEOUT = "connectiontimeout";
    +539         /**
    +540          * The short CLI argument name for setting the location of an additional
    +541          * properties file.
    +542          */
    +543         public static final String PROP_SHORT = "p";
    +544         /**
    +545          * The CLI argument name for setting the location of an additional
    +546          * properties file.
    +547          */
    +548         public static final String PROP = "propertyfile";
    +549         /**
    +550          * The CLI argument name for setting the location of the data directory.
    +551          */
    +552         public static final String DATA_DIRECTORY = "data";
    +553         /**
    +554          * The short CLI argument name for setting the location of the data
    +555          * directory.
    +556          */
    +557         public static final String DATA_DIRECTORY_SHORT = "d";
    +558         /**
    +559          * The CLI argument name for setting the location of the data directory.
    +560          */
    +561         public static final String VERBOSE_LOG = "log";
    +562         /**
    +563          * The short CLI argument name for setting the location of the data
    +564          * directory.
    +565          */
    +566         public static final String VERBOSE_LOG_SHORT = "l";
    +567         /**
    +568          * The CLI argument name for setting the location of the suppression
    +569          * file.
    +570          */
    +571         public static final String SUPPRESION_FILE = "suppression";
    +572         /**
    +573          * The short CLI argument name for setting the location of the
    +574          * suppression file.
    +575          */
    +576         public static final String SUPPRESION_FILE_SHORT = "sf";
    +577     }
    +578 }
    +
    +
    + + diff --git a/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html b/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html new file mode 100644 index 000000000..f641e646b --- /dev/null +++ b/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html @@ -0,0 +1,27 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference Package org.owasp.dependencycheck.cli + + + + +

    + org.owasp.dependencycheck.cli +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html b/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html new file mode 100644 index 000000000..49ecbb08c --- /dev/null +++ b/css/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html @@ -0,0 +1,72 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference Package org.owasp.dependencycheck.cli + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.cli

    + + + + + + + + + + + + + + + +
    Class Summary
    + ArgumentName +
    + CliParser +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html b/css/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..624c6d788 --- /dev/null +++ b/css/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference Package org.owasp.dependencycheck + + + + +

    + org.owasp.dependencycheck +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html b/css/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..e6244ddd6 --- /dev/null +++ b/css/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference Package org.owasp.dependencycheck + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck

    + + + + + + + + + + + + +
    Class Summary
    + App +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref/overview-frame.html b/css/dependency-check-cli/xref/overview-frame.html new file mode 100644 index 000000000..3652a5a96 --- /dev/null +++ b/css/dependency-check-cli/xref/overview-frame.html @@ -0,0 +1,28 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/css/dependency-check-cli/xref/overview-summary.html b/css/dependency-check-cli/xref/overview-summary.html new file mode 100644 index 000000000..7be857254 --- /dev/null +++ b/css/dependency-check-cli/xref/overview-summary.html @@ -0,0 +1,69 @@ + + + + + + Dependency-Check Command Line 1.0.6 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    Dependency-Check Command Line 1.0.6 Reference

    + + + + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck +
    + org.owasp.dependencycheck.cli +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-cli/xref/stylesheet.css b/css/dependency-check-cli/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/css/dependency-check-cli/xref/stylesheet.css @@ -0,0 +1,116 @@ +/* Javadoc style sheet */ +/* Define colors, fonts and other style attributes here to override the defaults */ +body { + background-color: #fff; + font-family: Arial, Helvetica, sans-serif; +} + +a:link { + color: #00f; +} +a:visited { + color: #00a; +} + +a:active, a:hover { + color: #f30 !important; +} + +ul, li { + list-style-type:none; + margin:0; + padding:0; +} + +table td { + padding: 3px; + border: 1px solid #000; +} +table { + width:100%; + border: 1px solid #000; + border-collapse: collapse; +} + +div.overview { + background-color:#ddd; + padding: 4px 4px 4px 0; +} +div.overview li, div.framenoframe li { + display: inline; +} +div.framenoframe { + text-align: center; + font-size: x-small; +} +div.framenoframe li { + margin: 0 3px 0 3px; +} +div.overview li { + margin:3px 3px 0 3px; + padding: 4px; +} +li.selected { + background-color:#888; + color: #fff; + font-weight: bold; +} + +table.summary { + margin-bottom: 20px; +} +table.summary td, table.summary th { + font-weight: bold; + text-align: left; + padding: 3px; +} +table.summary th { + background-color:#036; + color: #fff; +} +table.summary td { + background-color:#eee; + border: 1px solid black; +} + +em { + color: #A00; +} +em.comment { + color: #390; +} +.string { + color: #009; +} +div#footer { + text-align:center; +} +#overview { + padding:2px; +} + +hr { + height: 1px; + color: #000; +} + +/* JXR style sheet */ +.jxr_comment +{ + color: #390; +} + +.jxr_javadoccomment +{ + color: #A00; +} + +.jxr_string +{ + color: #009; +} + +.jxr_keyword +{ + color: #000; +} diff --git a/css/dependency-check-core/apidocs/allclasses-frame.html b/css/dependency-check-core/apidocs/allclasses-frame.html new file mode 100644 index 000000000..b2021b2b6 --- /dev/null +++ b/css/dependency-check-core/apidocs/allclasses-frame.html @@ -0,0 +1,394 @@ + + + + + + + +All Classes (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    AbstractAnalyzer +
    +AbstractSuppressionAnalyzer +
    +AbstractTokenizingFilter +
    +AbstractUpdateTask +
    +Activation +
    +ActivationFile +
    +ActivationOS +
    +ActivationProperty +
    +AlphaNumericTokenizer +
    +AnalysisException +
    +AnalysisPhase +
    +Analyzer +
    +AnalyzerService +
    +ArchiveAnalyzer +
    +ArchiveExtractionException +
    +BaseDB +
    +BatchUpdateTask +
    +Build +
    +Build.Extensions +
    +Build.Filters +
    +Build.Plugins +
    +Build.Resources +
    +Build.TestResources +
    +BuildBase +
    +BuildBase.Filters +
    +BuildBase.Plugins +
    +BuildBase.Resources +
    +BuildBase.TestResources +
    +CachedWebDataSource +
    +CallableDownloadTask +
    +Checksum +
    +CiManagement +
    +CiManagement.Notifiers +
    +Contributor +
    +Contributor.Properties +
    +Contributor.Roles +
    +CPEAnalyzer +
    +CpeMemoryIndex +
    +CpeSuppressionAnalyzer +
    +CveDB +
    +CweDB +
    +CweHandler +
    +DatabaseException +
    +DatabaseUpdater +
    +DataStoreMetaInfo +
    +Dependency +
    +Dependency +
    +Dependency.Exclusions +
    +DependencyBundlingAnalyzer +
    +DependencyManagement +
    +DependencyManagement.Dependencies +
    +DependencySimilarity +
    +DependencyVersion +
    +DependencyVersionUtil +
    +DeploymentRepository +
    +Developer +
    +Developer.Properties +
    +Developer.Roles +
    +DirectoryLockException +
    +DirectorySpinLock +
    +DistributionManagement +
    +Downloader +
    +DownloadFailedException +
    +Engine +
    +Evidence +
    +Evidence.Confidence +
    +EvidenceCollection +
    +Exclusion +
    +Extension +
    +ExtractionException +
    +FalsePositiveAnalyzer +
    +FieldAnalyzer +
    +Fields +
    +FileNameAnalyzer +
    +FileUtils +
    +Filter +
    +HintAnalyzer +
    +Identifier +
    +IndexEntry +
    +IndexException +
    +InvalidDataException +
    +InvalidDirectoryException +
    +InvalidSettingException +
    +IssueManagement +
    +JarAnalyzer +
    +JarAnalyzer.ClassNameInformation +
    +JavaScriptAnalyzer +
    +License +
    +LogFilter +
    +LogUtils +
    +LuceneUtils +
    +MailingList +
    +MailingList.OtherArchives +
    +MavenNamespaceFilter +
    +Model +
    +Model.Contributors +
    +Model.Dependencies +
    +Model.Developers +
    +Model.Licenses +
    +Model.MailingLists +
    +Model.Modules +
    +Model.PluginRepositories +
    +Model.Profiles +
    +Model.Properties +
    +Model.Reports +
    +Model.Repositories +
    +NoDataException +
    +NonClosingStream +
    +Notifier +
    +Notifier.Configuration +
    +NvdCve12Handler +
    +NvdCve12Handler.Element +
    +NvdCve20Handler +
    +NvdCve20Handler.Element +
    +NvdCveAnalyzer +
    +NvdCveInfo +
    +ObjectFactory +
    +Organization +
    +Parent +
    +Plugin +
    +Plugin.Configuration +
    +Plugin.Dependencies +
    +Plugin.Executions +
    +Plugin.Goals +
    +PluginExecution +
    +PluginExecution.Configuration +
    +PluginExecution.Goals +
    +PluginManagement +
    +PluginManagement.Plugins +
    +Prerequisites +
    +Profile +
    +Profile.Dependencies +
    +Profile.Modules +
    +Profile.PluginRepositories +
    +Profile.Properties +
    +Profile.Reports +
    +Profile.Repositories +
    +PropertyType +
    +Reference +
    +Relocation +
    +ReportGenerator +
    +ReportGenerator.Format +
    +Reporting +
    +Reporting.Plugins +
    +ReportPlugin +
    +ReportPlugin.Configuration +
    +ReportPlugin.ReportSets +
    +ReportSet +
    +ReportSet.Configuration +
    +ReportSet.Reports +
    +Repository +
    +RepositoryPolicy +
    +Resource +
    +Resource.Excludes +
    +Resource.Includes +
    +Scm +
    +SearchFieldAnalyzer +
    +SearchVersionAnalyzer +
    +Settings +
    +Settings.KEYS +
    +Site +
    +StandardUpdateTask +
    +SuppressionErrorHandler +
    +SuppressionHandler +
    +SuppressionParseException +
    +SuppressionParser +
    +SuppressionRule +
    +TokenPairConcatenatingFilter +
    +Updateable +
    +UpdateException +
    +UpdateService +
    +UpdateTask +
    +UpdateTaskFactory +
    +UrlStringUtils +
    +UrlTokenizingFilter +
    +VelocityLoggerRedirect +
    +VersionAnalyzer +
    +VersionTokenizingFilter +
    +Vulnerability +
    +VulnerabilityComparator +
    +VulnerabilitySuppressionAnalyzer +
    +VulnerableSoftware +
    +
    + + + diff --git a/css/dependency-check-core/apidocs/allclasses-noframe.html b/css/dependency-check-core/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..0541b754b --- /dev/null +++ b/css/dependency-check-core/apidocs/allclasses-noframe.html @@ -0,0 +1,394 @@ + + + + + + + +All Classes (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    AbstractAnalyzer +
    +AbstractSuppressionAnalyzer +
    +AbstractTokenizingFilter +
    +AbstractUpdateTask +
    +Activation +
    +ActivationFile +
    +ActivationOS +
    +ActivationProperty +
    +AlphaNumericTokenizer +
    +AnalysisException +
    +AnalysisPhase +
    +Analyzer +
    +AnalyzerService +
    +ArchiveAnalyzer +
    +ArchiveExtractionException +
    +BaseDB +
    +BatchUpdateTask +
    +Build +
    +Build.Extensions +
    +Build.Filters +
    +Build.Plugins +
    +Build.Resources +
    +Build.TestResources +
    +BuildBase +
    +BuildBase.Filters +
    +BuildBase.Plugins +
    +BuildBase.Resources +
    +BuildBase.TestResources +
    +CachedWebDataSource +
    +CallableDownloadTask +
    +Checksum +
    +CiManagement +
    +CiManagement.Notifiers +
    +Contributor +
    +Contributor.Properties +
    +Contributor.Roles +
    +CPEAnalyzer +
    +CpeMemoryIndex +
    +CpeSuppressionAnalyzer +
    +CveDB +
    +CweDB +
    +CweHandler +
    +DatabaseException +
    +DatabaseUpdater +
    +DataStoreMetaInfo +
    +Dependency +
    +Dependency +
    +Dependency.Exclusions +
    +DependencyBundlingAnalyzer +
    +DependencyManagement +
    +DependencyManagement.Dependencies +
    +DependencySimilarity +
    +DependencyVersion +
    +DependencyVersionUtil +
    +DeploymentRepository +
    +Developer +
    +Developer.Properties +
    +Developer.Roles +
    +DirectoryLockException +
    +DirectorySpinLock +
    +DistributionManagement +
    +Downloader +
    +DownloadFailedException +
    +Engine +
    +Evidence +
    +Evidence.Confidence +
    +EvidenceCollection +
    +Exclusion +
    +Extension +
    +ExtractionException +
    +FalsePositiveAnalyzer +
    +FieldAnalyzer +
    +Fields +
    +FileNameAnalyzer +
    +FileUtils +
    +Filter +
    +HintAnalyzer +
    +Identifier +
    +IndexEntry +
    +IndexException +
    +InvalidDataException +
    +InvalidDirectoryException +
    +InvalidSettingException +
    +IssueManagement +
    +JarAnalyzer +
    +JarAnalyzer.ClassNameInformation +
    +JavaScriptAnalyzer +
    +License +
    +LogFilter +
    +LogUtils +
    +LuceneUtils +
    +MailingList +
    +MailingList.OtherArchives +
    +MavenNamespaceFilter +
    +Model +
    +Model.Contributors +
    +Model.Dependencies +
    +Model.Developers +
    +Model.Licenses +
    +Model.MailingLists +
    +Model.Modules +
    +Model.PluginRepositories +
    +Model.Profiles +
    +Model.Properties +
    +Model.Reports +
    +Model.Repositories +
    +NoDataException +
    +NonClosingStream +
    +Notifier +
    +Notifier.Configuration +
    +NvdCve12Handler +
    +NvdCve12Handler.Element +
    +NvdCve20Handler +
    +NvdCve20Handler.Element +
    +NvdCveAnalyzer +
    +NvdCveInfo +
    +ObjectFactory +
    +Organization +
    +Parent +
    +Plugin +
    +Plugin.Configuration +
    +Plugin.Dependencies +
    +Plugin.Executions +
    +Plugin.Goals +
    +PluginExecution +
    +PluginExecution.Configuration +
    +PluginExecution.Goals +
    +PluginManagement +
    +PluginManagement.Plugins +
    +Prerequisites +
    +Profile +
    +Profile.Dependencies +
    +Profile.Modules +
    +Profile.PluginRepositories +
    +Profile.Properties +
    +Profile.Reports +
    +Profile.Repositories +
    +PropertyType +
    +Reference +
    +Relocation +
    +ReportGenerator +
    +ReportGenerator.Format +
    +Reporting +
    +Reporting.Plugins +
    +ReportPlugin +
    +ReportPlugin.Configuration +
    +ReportPlugin.ReportSets +
    +ReportSet +
    +ReportSet.Configuration +
    +ReportSet.Reports +
    +Repository +
    +RepositoryPolicy +
    +Resource +
    +Resource.Excludes +
    +Resource.Includes +
    +Scm +
    +SearchFieldAnalyzer +
    +SearchVersionAnalyzer +
    +Settings +
    +Settings.KEYS +
    +Site +
    +StandardUpdateTask +
    +SuppressionErrorHandler +
    +SuppressionHandler +
    +SuppressionParseException +
    +SuppressionParser +
    +SuppressionRule +
    +TokenPairConcatenatingFilter +
    +Updateable +
    +UpdateException +
    +UpdateService +
    +UpdateTask +
    +UpdateTaskFactory +
    +UrlStringUtils +
    +UrlTokenizingFilter +
    +VelocityLoggerRedirect +
    +VersionAnalyzer +
    +VersionTokenizingFilter +
    +Vulnerability +
    +VulnerabilityComparator +
    +VulnerabilitySuppressionAnalyzer +
    +VulnerableSoftware +
    +
    + + + diff --git a/css/dependency-check-core/apidocs/constant-values.html b/css/dependency-check-core/apidocs/constant-values.html new file mode 100644 index 000000000..b2a63e68a --- /dev/null +++ b/css/dependency-check-core/apidocs/constant-values.html @@ -0,0 +1,637 @@ + + + + + + + +Constant Field Values (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

    +
    +
    +Contents + + + + + + +
    +org.owasp.*
    + +

    + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.concurrency.DirectorySpinLock
    +public static final StringLOCK_NAME"data.lock"
    +public static final intMAX_SPIN100
    + +

    + +

    + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.BaseDB
    +public static final StringDB_SCHEMA_VERSION"2.7"
    +public static final StringDB_STRUCTURE_RESOURCE"data/initialize.sql"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.cpe.Fields
    +public static final StringDOCUMENT_KEY"id"
    +public static final StringPRODUCT"product"
    +public static final StringVENDOR"vendor"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element
    +public static final StringENTRY"entry"
    +public static final StringNVD"nvd"
    +public static final StringPROD"prod"
    +public static final StringVERS"vers"
    +public static final StringVULN_SOFTWARE"vuln_soft"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element
    +public static final StringCVSS_ACCESS_COMPLEXITY"cvss:access-complexity"
    +public static final StringCVSS_ACCESS_VECTOR"cvss:access-vector"
    +public static final StringCVSS_AUTHENTICATION"cvss:authentication"
    +public static final StringCVSS_AVAILABILITY_IMPACT"cvss:availability-impact"
    +public static final StringCVSS_CONFIDENTIALITY_IMPACT"cvss:confidentiality-impact"
    +public static final StringCVSS_INTEGRITY_IMPACT"cvss:integrity-impact"
    +public static final StringCVSS_SCORE"cvss:score"
    +public static final StringENTRY"entry"
    +public static final StringNVD"nvd"
    +public static final StringVULN_CWE"vuln:cwe"
    +public static final StringVULN_PRODUCT"vuln:product"
    +public static final StringVULN_REFERENCE"vuln:reference"
    +public static final StringVULN_REFERENCES"vuln:references"
    +public static final StringVULN_SOURCE"vuln:source"
    +public static final StringVULN_SUMMARY"vuln:summary"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.update.DataStoreMetaInfo
    +public static final StringBATCH"batch"
    +public static final StringLAST_UPDATED"lastupdated.modified"
    +public static final StringLAST_UPDATED_BASE"lastupdated."
    +public static final StringMODIFIED"modified"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.suppression.SuppressionHandler
    +public static final StringCPE"cpe"
    +public static final StringCVE"cve"
    +public static final StringCVSS_BELOW"cvssBelow"
    +public static final StringCWE"cwe"
    +public static final StringFILE_PATH"filePath"
    +public static final StringSHA1"sha1"
    +public static final StringSUPPRESS"suppress"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.suppression.SuppressionParser
    +public static final StringJAXP_SCHEMA_LANGUAGE"http://java.sun.com/xml/jaxp/properties/schemaLanguage"
    +public static final StringJAXP_SCHEMA_SOURCE"http://java.sun.com/xml/jaxp/properties/schemaSource"
    +public static final StringW3C_XML_SCHEMA"http://www.w3.org/2001/XMLSchema"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.utils.Settings.KEYS
    +public static final StringAUTO_UPDATE"autoupdate"
    +public static final StringBATCH_UPDATE_URL"batch.update.url"
    +public static final StringCONNECTION_TIMEOUT"connection.timeout"
    +public static final StringCVE_DATA_DIRECTORY"data.cve"
    +public static final StringCVE_META_URL"cve.url.meta"
    +public static final StringCVE_MODIFIED_12_URL"cve.url-1.2.modified"
    +public static final StringCVE_MODIFIED_20_URL"cve.url-2.0.modified"
    +public static final StringCVE_MODIFIED_VALID_FOR_DAYS"cve.url.modified.validfordays"
    +public static final StringCVE_SCHEMA_1_2"cve.url-1.2.base"
    +public static final StringCVE_SCHEMA_2_0"cve.url-2.0.base"
    +public static final StringCVE_START_YEAR"cve.startyear"
    +public static final StringDATA_DIRECTORY"data.directory"
    +public static final StringDB_CONNECTION_STRING"database.connectionstring"
    +public static final StringDB_DRIVER"database.drive"
    +public static final StringMAX_DOWNLOAD_THREAD_POOL_SIZE"max.download.threads"
    +public static final StringPROXY_PASSWORD"proxy.password"
    +public static final StringPROXY_PORT"proxy.port"
    +public static final StringPROXY_URL"proxy.url"
    +public static final StringPROXY_USERNAME"proxy.username"
    +public static final StringSUPPRESSION_FILE"suppression.file"
    +public static final StringTEMP_DIRECTORY"temp.directory"
    + +

    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/deprecated-list.html b/css/dependency-check-core/apidocs/deprecated-list.html new file mode 100644 index 000000000..3f7678148 --- /dev/null +++ b/css/dependency-check-core/apidocs/deprecated-list.html @@ -0,0 +1,216 @@ + + + + + + + +Deprecated List (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents + + + + + + + + + + + + + + + + + + +
    +Deprecated Classes
    org.owasp.dependencycheck.data.update.BatchUpdateTask +
    +          batch update mode will no longer be supported. 
    org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer +
    +          version information is no longer stored in lucene 
    org.owasp.dependencycheck.data.lucene.VersionAnalyzer +
    +          version information is no longer stored in lucene 
    org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter +
    +          version information is no longer stored in lucene 
    +  +

    + + + + + + + + + + + +
    +Deprecated Methods
    org.owasp.dependencycheck.utils.FileUtils.getDataDirectory(String, Class) +
    +          This method should no longer be used. See the implementation + in dependency-check-cli/App.java to see how the data directory should be + set. 
    org.owasp.dependencycheck.utils.FileUtils.getPathToJar(Class) +
    +          this should no longer be used. 
    +  +

    + + + + + + + + +
    +Deprecated Constructors
    org.owasp.dependencycheck.Engine(boolean) +
    +          This function should no longer be used; the autoupdate flag + should be set using: + Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value); 
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/help-doc.html b/css/dependency-check-core/apidocs/help-doc.html new file mode 100644 index 000000000..43ae5c131 --- /dev/null +++ b/css/dependency-check-core/apidocs/help-doc.html @@ -0,0 +1,224 @@ + + + + + + + +API Help (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +How This API Document Is Organized

    +
    +This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    +Overview

    +
    + +

    +The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    +

    +Package

    +
    + +

    +Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

      +
    • Interfaces (italic)
    • Classes
    • Enums
    • Exceptions
    • Errors
    • Annotation Types
    +
    +

    +Class/Interface

    +
    + +

    +Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

      +
    • Class inheritance diagram
    • Direct Subclasses
    • All Known Subinterfaces
    • All Known Implementing Classes
    • Class/interface declaration
    • Class/interface description +

      +

    • Nested Class Summary
    • Field Summary
    • Constructor Summary
    • Method Summary +

      +

    • Field Detail
    • Constructor Detail
    • Method Detail
    +Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
    + +

    +Annotation Type

    +
    + +

    +Each annotation type has its own separate page with the following sections:

      +
    • Annotation Type declaration
    • Annotation Type description
    • Required Element Summary
    • Optional Element Summary
    • Element Detail
    +
    + +

    +Enum

    +
    + +

    +Each enum has its own separate page with the following sections:

      +
    • Enum declaration
    • Enum description
    • Enum Constant Summary
    • Enum Constant Detail
    +
    +

    +Use

    +
    +Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
    +

    +Tree (Class Hierarchy)

    +
    +There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    +
    +

    +Deprecated API

    +
    +The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
    +

    +Index

    +
    +The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
    +

    +Prev/Next

    +These links take you to the next or previous class, interface, package, or related page.

    +Frames/No Frames

    +These links show and hide the HTML frames. All pages are available with or without frames. +

    +

    +Serialized Form

    +Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

    +

    +Constant Field Values

    +The Constant Field Values page lists the static final fields and their values. +

    + + +This help file applies to API documentation generated using the standard doclet. + +
    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/index-all.html b/css/dependency-check-core/apidocs/index-all.html new file mode 100644 index 000000000..c65c5c227 --- /dev/null +++ b/css/dependency-check-core/apidocs/index-all.html @@ -0,0 +1,5144 @@ + + + + + + + +Index (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A B C D E F G H I J L M N O P R S T U V W
    +

    +A

    +
    +
    AbstractAnalyzer - Class in org.owasp.dependencycheck.analyzer
     
    AbstractAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.AbstractAnalyzer +
      +
    AbstractSuppressionAnalyzer - Class in org.owasp.dependencycheck.analyzer
    Abstract base suppression analyzer that contains methods for parsing the + suppression xml file.
    AbstractSuppressionAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer +
      +
    AbstractTokenizingFilter - Class in org.owasp.dependencycheck.data.lucene
    An abstract tokenizing filter that can be used as the base for a tokenizing + filter.
    AbstractTokenizingFilter(TokenStream) - +Constructor for class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter +
    Constructs a new AbstractTokenizingFilter. +
    AbstractUpdateTask - Class in org.owasp.dependencycheck.data.update
    Class responsible for updating the CPE and NVDCVE data stores.
    AbstractUpdateTask(DataStoreMetaInfo) - +Constructor for class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Initializes the AbstractUpdateTask. +
    Activation - Class in org.owasp.dependencycheck.jaxb.pom.generated
    The conditions within the build runtime environment which will trigger + the automatic inclusion of the build profile.
    Activation() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    activation - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    ActivationFile - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This is the file specification used to activate the profile.
    ActivationFile() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
      +
    ActivationOS - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This is an activator which will detect an operating system's attributes in order to activate + its profile.
    ActivationOS() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
      +
    ActivationProperty - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This is the property specification used to activate a profile.
    ActivationProperty() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
      +
    activeByDefault - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    add(String, String, String) - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Adds a new entry of updateable information to the contained collection. +
    add(String, String, String, boolean) - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Adds a new entry of updateable information to the contained collection. +
    addAnalysisException(Exception) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Adds an exception to the analysis exceptions collection. +
    addCpe(PropertyType) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Adds the cpe to the cpe list. +
    addCve(String) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Adds the cve to the cve list. +
    addCvssBelow(Float) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Adds the cvss to the cvssBelow list. +
    addCwe(String) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Adds the cwe to the cwe list. +
    addEvidence(Evidence) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Adds evidence to the collection. +
    addEvidence(String, String, String, Evidence.Confidence) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Creates an Evidence object from the parameters and adds the resulting + object to the collection. +
    addIdentifier(String, String, String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Adds an entry to the list of detected Identifiers for the dependency + file. +
    addIdentifier(Identifier) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Adds an entry to the list of detected Identifiers for the dependency + file. +
    addReference(Reference) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Adds a reference to the references collection. +
    addReference(String, String, String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Adds a reference. +
    addRelatedDependency(Dependency) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Adds a related dependency. +
    address - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    addTerm() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter +
    Adds a term, if one exists, from the tokens collection. +
    addVulnerability(Vulnerability) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Adds a vulnerability to the dependency. +
    addVulnerableSoftware(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Adds an entry for vulnerable software. +
    addVulnerableSoftware(String, String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Adds an entry for vulnerable software. +
    addWeighting(String) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Adds term to the weighting collection. +
    AlphaNumericTokenizer - Class in org.owasp.dependencycheck.data.lucene
    Tokenizes the input breaking it into tokens when non-alpha/numeric characters + are found.
    AlphaNumericTokenizer(Version, Reader) - +Constructor for class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer +
    Constructs a new AlphaNumericTokenizer. +
    AlphaNumericTokenizer(Version, AttributeSource.AttributeFactory, Reader) - +Constructor for class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer +
    Constructs a new AlphaNumericTokenizer. +
    AnalysisException - Exception in org.owasp.dependencycheck.analyzer
    An exception thrown when the analysis of a dependency fails.
    AnalysisException() - +Constructor for exception org.owasp.dependencycheck.analyzer.AnalysisException +
    Creates a new AnalysisException. +
    AnalysisException(String) - +Constructor for exception org.owasp.dependencycheck.analyzer.AnalysisException +
    Creates a new AnalysisException. +
    AnalysisException(Throwable) - +Constructor for exception org.owasp.dependencycheck.analyzer.AnalysisException +
    Creates a new AnalysisException. +
    AnalysisException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.analyzer.AnalysisException +
    Creates a new AnalysisException. +
    AnalysisPhase - Enum in org.owasp.dependencycheck.analyzer
    An enumeration defining the phases of analysis.
    analyze(Dependency, Engine) - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    Analyzes the given dependency. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    Analyzes a given dependency. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer +
      +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +
    Analyzes a set of dependencies. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Analyzes the dependencies and removes bad/incorrect CPE associations + based on various heuristics. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.FileNameAnalyzer +
    Collects information about the file name. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.HintAnalyzer +
    The HintAnalyzer uses knowledge about a dependency to add additional + information to help in identification of identifiers or vulnerabilities. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency. +
    analyze(Dependency, Engine) - +Method in class org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer +
      +
    analyzeDependencies() - +Method in class org.owasp.dependencycheck.Engine +
    Runs the analyzers against all of the dependencies. +
    analyzePackageNames(ArrayList<JarAnalyzer.ClassNameInformation>, Dependency, boolean) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Analyzes the path information of the classes contained within the + JarAnalyzer to try and determine possible vendor or product names. +
    analyzePOM(Dependency, ArrayList<JarAnalyzer.ClassNameInformation>) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Attempts to find a pom.xml within the JAR file. +
    Analyzer - Interface in org.owasp.dependencycheck.analyzer
    An interface that defines an Analyzer that is used to identify Dependencies.
    AnalyzerService - Class in org.owasp.dependencycheck.analyzer
     
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration +
      +
    any - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration +
      +
    appendEscapedLuceneQuery(StringBuilder, CharSequence) - +Static method in class org.owasp.dependencycheck.data.lucene.LuceneUtils +
    Appends the text to the supplied StringBuilder escaping Lucene control + characters in the process. +
    arch - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
      +
    archive - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    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 files in an archive cannot be extracted.
    ArchiveExtractionException() - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new ArchiveExtractionException. +
    ArchiveExtractionException(String) - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new ArchiveExtractionException. +
    ArchiveExtractionException(Throwable) - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new ArchiveExtractionException. +
    ArchiveExtractionException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new ArchiveExtractionException. +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
      +
    artifactId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    AUTO_UPDATE - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key indicating whether or not the cached data sources + should be updated. +
    +
    +

    +B

    +
    +
    BaseDB - Class in org.owasp.dependencycheck.data
     
    BaseDB() - +Constructor for class org.owasp.dependencycheck.data.BaseDB +
      +
    BATCH - +Static variable in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Batch key word, used as key to store information about batch mode. +
    BATCH_UPDATE_URL - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The location of the batch update URL. +
    BatchUpdateTask - Class in org.owasp.dependencycheck.data.update
    Deprecated. batch update mode will no longer be supported.
    BatchUpdateTask(DataStoreMetaInfo) - +Constructor for class org.owasp.dependencycheck.data.update.BatchUpdateTask +
    Deprecated. Constructs a new BatchUpdateTask. +
    Build - Class in org.owasp.dependencycheck.jaxb.pom.generated
    3.0.0+
    Build() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    build - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    build - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    Build.Extensions - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Build.Extensions() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions +
      +
    Build.Filters - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Build.Filters() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters +
      +
    Build.Plugins - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Build.Plugins() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins +
      +
    Build.Resources - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Build.Resources() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources +
      +
    Build.TestResources - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Build.TestResources() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources +
      +
    BuildBase - Class in org.owasp.dependencycheck.jaxb.pom.generated
    3.0.0+
    BuildBase() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    BuildBase.Filters - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    BuildBase.Filters() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters +
      +
    BuildBase.Plugins - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    BuildBase.Plugins() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins +
      +
    BuildBase.Resources - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    BuildBase.Resources() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources +
      +
    BuildBase.TestResources - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    BuildBase.TestResources() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources +
      +
    buildSearch(String, String, Set<String>, Set<String>) - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Builds a Lucene search string by properly escaping data and + constructing a valid search query. +
    +
    +

    +C

    +
    +
    CachedWebDataSource - Interface in org.owasp.dependencycheck.data
    Defines an Index who's data is retrieved from the Internet.
    call() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
      +
    CallableDownloadTask - Class in org.owasp.dependencycheck.data.update
    A callable object to download two files.
    CallableDownloadTask(NvdCveInfo, File, File) - +Constructor for class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Simple constructor for the callable download task. +
    characters(char[], int, int) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
      +
    characters(char[], int, int) - +Method in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    Collects the body text of the node being processed. +
    Checksum - Class in org.owasp.dependencycheck.utils
    Includes methods to generate the MD5 and SHA1 checksum.
    Checksum() - +Constructor for class org.owasp.dependencycheck.utils.Checksum +
      +
    checksumPolicy - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
      +
    CiManagement - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    CiManagement() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
      +
    ciManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    CiManagement.Notifiers - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    CiManagement.Notifiers() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers +
      +
    classifier - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    cleanup() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Attempts to delete the files that were downloaded. +
    cleanupDatabase() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    It is possible that orphaned rows may be generated during database + updates. +
    clear() - +Method in class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer +
    Resets the analyzer and clears any internal state data that may have + been left-over from previous uses of the analyzer. +
    clear() - +Method in class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter +
    Resets the Filter and clears any internal state data that may have + been left-over from previous uses of the Filter. +
    clear() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Clears the contained collection of NvdCveInfo entries. +
    close() - +Method in class org.owasp.dependencycheck.analyzer.AbstractAnalyzer +
    The close method does nothing for this Analyzer. +
    close() - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    The close method is called after all of the dependencies have been + analyzed. +
    close() - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    The close method does nothing for this Analyzer. +
    close() - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Closes the data sources. +
    close() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    The close method does nothing for this Analyzer. +
    close() - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    The close method does nothing for this Analyzer. +
    close() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Closes the data source. +
    close() - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Releases any locks and closes the underlying channel. +
    close() - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Closes the DB4O database. +
    close() - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Closes the CPE Index. +
    close() - +Method in class org.owasp.dependencycheck.utils.NonClosingStream +
    Prevents closing of the stream. +
    closeDataStores() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Closes the CVE and CPE data stores. +
    closeResultSet(ResultSet) - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Closes the result set capturing and ignoring any SQLExceptions that + occur. +
    closeStatement(Statement) - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Closes the given statement object ignoring any exceptions that occur. +
    comments - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.License +
      +
    commit() - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Commits all completed transactions. +
    compare(Vulnerability, Vulnerability) - +Method in class org.owasp.dependencycheck.dependency.VulnerabilityComparator +
    Implements the comparison of vulnerabilities. +
    compareTo(Dependency) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Implementation of the Comparable interface. +
    compareTo(Evidence) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Implementation of the comparable interface. +
    compareTo(Identifier) - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Implementation of the comparator interface. +
    compareTo(Reference) - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Implementation of the comparable interface. +
    compareTo(Vulnerability) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Compares two vulnerabilities. +
    compareTo(VulnerableSoftware) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Implementation of the comparable interface. +
    compareTo(DependencyVersion) - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
      +
    configuration - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    configuration - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    configuration - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
      +
    configuration - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    configuration - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
      +
    connection - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
      +
    CONNECTION_TIMEOUT - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the connection timeout. +
    contains(Evidence.Confidence) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns whether or not the collection contains evidence of a specified + Confidence. +
    containsUrl(String) - +Static method in class org.owasp.dependencycheck.utils.UrlStringUtils +
    Tests if the text provided contains a URL. +
    containsUsedString(String) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Used to determine if a given string was used (aka read). +
    containsUsedVersion(DependencyVersion) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Used to determine if a given version was used (aka read) from the + EvidenceCollection. +
    Contributor - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Description of a person who has contributed to the project, but who does + not have commit privileges.
    Contributor() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    contributor - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors +
      +
    Contributor.Properties - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Contributor.Properties() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties +
      +
    Contributor.Roles - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Contributor.Roles() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles +
      +
    contributors - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    CORE_FILES - +Static variable in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Regex to identify core java library files. +
    CORE_JAVA - +Static variable in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Regex to identify core java libraries and a few other commonly + misidentified ones. +
    CPE - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The CPE element name. +
    CPEAnalyzer - Class in org.owasp.dependencycheck.analyzer
    CPEAnalyzer is a utility class that takes a project dependency and attempts + to discern if there is an associated CPE.
    CPEAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
      +
    CpeMemoryIndex - Class in org.owasp.dependencycheck.data.cpe
    An in memory lucene index that contains the vendor/product combinations from + the CPE (application) identifiers within the NVD CVE data.
    CpeSuppressionAnalyzer - Class in org.owasp.dependencycheck.analyzer
    The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    CpeSuppressionAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer +
      +
    createActivation() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Activation +
    createActivationFile() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ActivationFile +
    createActivationOS() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ActivationOS +
    createActivationProperty() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ActivationProperty +
    createBuild() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Build +
    createBuildBase() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of BuildBase +
    createBuildBaseFilters() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of BuildBase.Filters +
    createBuildBasePlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of BuildBase.Plugins +
    createBuildBaseResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of BuildBase.Resources +
    createBuildBaseTestResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of BuildBase.TestResources +
    createBuildExtensions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Build.Extensions +
    createBuildFilters() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Build.Filters +
    createBuildPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Build.Plugins +
    createBuildResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Build.Resources +
    createBuildTestResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Build.TestResources +
    createCiManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of CiManagement +
    createCiManagementNotifiers() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of CiManagement.Notifiers +
    createComponents(String, Reader) - +Method in class org.owasp.dependencycheck.data.lucene.FieldAnalyzer +
    Creates the TokenStreamComponents +
    createComponents(String, Reader) - +Method in class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer +
    Creates a the TokenStreamComponents used to analyze the stream. +
    createComponents(String, Reader) - +Method in class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer +
    Deprecated. Creates the TokenStreamComponents +
    createComponents(String, Reader) - +Method in class org.owasp.dependencycheck.data.lucene.VersionAnalyzer +
    Deprecated. Creates the TokenStreamComponents +
    createContributor() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Contributor +
    createContributorProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Contributor.Properties +
    createContributorRoles() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Contributor.Roles +
    createDependency() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Dependency +
    createDependencyExclusions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Dependency.Exclusions +
    createDependencyManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of DependencyManagement +
    createDependencyManagementDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of DependencyManagement.Dependencies +
    createDeploymentRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of DeploymentRepository +
    createDeveloper() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Developer +
    createDeveloperProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Developer.Properties +
    createDeveloperRoles() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Developer.Roles +
    createDistributionManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of DistributionManagement +
    createExclusion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Exclusion +
    createExtension() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Extension +
    createIssueManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of IssueManagement +
    createLicense() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of License +
    createMailingList() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of MailingList +
    createMailingListOtherArchives() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of MailingList.OtherArchives +
    createModel() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model +
    createModelContributors() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Contributors +
    createModelDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Dependencies +
    createModelDevelopers() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Developers +
    createModelLicenses() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Licenses +
    createModelMailingLists() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.MailingLists +
    createModelModules() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Modules +
    createModelPluginRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.PluginRepositories +
    createModelProfiles() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Profiles +
    createModelProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Properties +
    createModelReports() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Reports +
    createModelRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Model.Repositories +
    createNotifier() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Notifier +
    createNotifierConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Notifier.Configuration +
    createOrganization() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Organization +
    createParent() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Parent +
    createPlugin() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Plugin +
    createPluginConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Plugin.Configuration +
    createPluginDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Plugin.Dependencies +
    createPluginExecution() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of PluginExecution +
    createPluginExecutionConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of PluginExecution.Configuration +
    createPluginExecutionGoals() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of PluginExecution.Goals +
    createPluginExecutions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Plugin.Executions +
    createPluginGoals() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Plugin.Goals +
    createPluginManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of PluginManagement +
    createPluginManagementPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of PluginManagement.Plugins +
    createPrerequisites() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Prerequisites +
    createProfile() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile +
    createProfileDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile.Dependencies +
    createProfileModules() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile.Modules +
    createProfilePluginRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile.PluginRepositories +
    createProfileProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile.Properties +
    createProfileReports() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile.Reports +
    createProfileRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Profile.Repositories +
    createProject(Model) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of JAXBElement<Model>} +
    createRelocation() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Relocation +
    createReporting() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Reporting +
    createReportingPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Reporting.Plugins +
    createReportPlugin() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ReportPlugin +
    createReportPluginConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ReportPlugin.Configuration +
    createReportPluginReportSets() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ReportPlugin.ReportSets +
    createReportSet() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ReportSet +
    createReportSetConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ReportSet.Configuration +
    createReportSetReports() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of ReportSet.Reports +
    createRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Repository +
    createRepositoryPolicy() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of RepositoryPolicy +
    createResource() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Resource +
    createResourceExcludes() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Resource.Excludes +
    createResourceIncludes() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Resource.Includes +
    createScm() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Scm +
    createSite() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Site +
    CURRENT_VERSION - +Static variable in class org.owasp.dependencycheck.data.lucene.LuceneUtils +
    The current version of Lucene being used. +
    CVE - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The CVE element name. +
    CVE_DATA_DIRECTORY - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the path where the CVE H2 database will be + stored. +
    CVE_META_URL - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the URL to retrieve the "meta" data from about + the CVE entries. +
    CVE_MODIFIED_12_URL - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days) using the 1.2 schema. +
    CVE_MODIFIED_20_URL - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days) using the 2.0 schema. +
    CVE_MODIFIED_VALID_FOR_DAYS - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days). +
    CVE_SCHEMA_1_2 - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the CVE schema version 1.2. +
    CVE_SCHEMA_2_0 - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the CVE schema version 2.0. +
    CVE_START_YEAR - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the telling us how many cvr.url.* URLs exists. +
    CveDB - Class in org.owasp.dependencycheck.data.nvdcve
    The database holding information about the NVD CVE data.
    CveDB() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.CveDB +
      +
    CVSS_ACCESS_COMPLEXITY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_ACCESS_VECTOR - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_AUTHENTICATION - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_AVAILABILITY_IMPACT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_BELOW - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The cvssBelow element name. +
    CVSS_CONFIDENTIALITY_IMPACT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_INTEGRITY_IMPACT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_SCORE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CWE - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The CWE element name. +
    CweDB - Class in org.owasp.dependencycheck.data.cwe
     
    CweHandler - Class in org.owasp.dependencycheck.data.cwe
    A SAX Handler that will parse the CWE XML.
    CweHandler() - +Constructor for class org.owasp.dependencycheck.data.cwe.CweHandler +
      +
    +
    +

    +D

    +
    +
    DATA_DIRECTORY - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The base path to use for the data directory. +
    DatabaseException - Exception in org.owasp.dependencycheck.data.nvdcve
    An exception thrown if an operation against the database fails.
    DatabaseException(String) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.DatabaseException +
    Creates an DatabaseException. +
    DatabaseException(Throwable) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.DatabaseException +
    Creates an DatabaseException. +
    DatabaseException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.DatabaseException +
    Creates an DatabaseException. +
    DatabaseUpdater - Class in org.owasp.dependencycheck.data.update
    Class responsible for updating the CPE and NVDCVE data stores.
    DatabaseUpdater() - +Constructor for class org.owasp.dependencycheck.data.update.DatabaseUpdater +
      +
    DataStoreMetaInfo - Class in org.owasp.dependencycheck.data.update
     
    DataStoreMetaInfo() - +Constructor for class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Constructs a new data properties object. +
    DB_CONNECTION_STRING - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The database connection string. +
    DB_DRIVER - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The database driver class name. +
    DB_SCHEMA_VERSION - +Static variable in class org.owasp.dependencycheck.data.BaseDB +
    The version of the current DB Schema. +
    DB_STRUCTURE_RESOURCE - +Static variable in class org.owasp.dependencycheck.data.BaseDB +
    Resource location for SQL file used to create the database schema. +
    defaultGoal - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    defaultGoal - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    delete(File) - +Static method in class org.owasp.dependencycheck.utils.FileUtils +
    Deletes a file. +
    deleteExistingData() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Deletes the existing data directories. +
    deleteExistingData() - +Method in class org.owasp.dependencycheck.data.update.DatabaseUpdater +
    Deletes the existing data directories. +
    dependencies - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement +
      +
    dependencies - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    dependencies - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    dependencies - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    Dependency - Class in org.owasp.dependencycheck.dependency
    A program dependency.
    Dependency() - +Constructor for class org.owasp.dependencycheck.dependency.Dependency +
    Constructs a new Dependency object. +
    Dependency(File) - +Constructor for class org.owasp.dependencycheck.dependency.Dependency +
    Constructs a new Dependency object. +
    Dependency - Class in org.owasp.dependencycheck.jaxb.pom.generated
    3.0.0+
    Dependency() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    dependency - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies +
      +
    dependency - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies +
      +
    dependency - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies +
      +
    dependency - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies +
      +
    Dependency.Exclusions - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Dependency.Exclusions() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions +
      +
    DependencyBundlingAnalyzer - Class in org.owasp.dependencycheck.analyzer
    This analyzer ensures dependencies that should be grouped together, to + remove excess noise from the report, are grouped.
    DependencyBundlingAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +
      +
    DependencyManagement - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Section for management of default dependency information for use in a group of POMs.
    DependencyManagement() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement +
      +
    dependencyManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    dependencyManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    DependencyManagement.Dependencies - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    DependencyManagement.Dependencies() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies +
      +
    DependencySimilarity - Class in org.owasp.dependencycheck.data.lucene
     
    DependencySimilarity() - +Constructor for class org.owasp.dependencycheck.data.lucene.DependencySimilarity +
      +
    DependencyVersion - Class in org.owasp.dependencycheck.utils
    Simple object to track the parts of a version number.
    DependencyVersion() - +Constructor for class org.owasp.dependencycheck.utils.DependencyVersion +
    Constructor for a empty DependencyVersion. +
    DependencyVersion(String) - +Constructor for class org.owasp.dependencycheck.utils.DependencyVersion +
    Constructor for a DependencyVersion that will parse a version string. +
    DependencyVersionUtil - Class in org.owasp.dependencycheck.utils
    A utility class to extract version numbers from file names (or other + strings containing version numbers.
    DeploymentRepository - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Repository contains the information needed for deploying to the remote repository.
    DeploymentRepository() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
      +
    description - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    determineCPE(Dependency) - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Searches the data store of CPE entries, trying to identify the CPE for + the given dependency based on the evidence contained within. +
    Developer - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Information about one of the committers on this project.
    Developer() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    developer - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers +
      +
    Developer.Properties - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Developer.Properties() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties +
      +
    Developer.Roles - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Developer.Roles() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles +
      +
    developerConnection - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
      +
    developers - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    directory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    directory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    directory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
      +
    DirectoryLockException - Exception in org.owasp.dependencycheck.concurrency
    If thrown, indicates that a problem occurred when locking a directory.
    DirectoryLockException() - +Constructor for exception org.owasp.dependencycheck.concurrency.DirectoryLockException +
    Constructs a new Directory Lock Exception. +
    DirectoryLockException(String) - +Constructor for exception org.owasp.dependencycheck.concurrency.DirectoryLockException +
    Constructs a new Directory Lock Exception. +
    DirectoryLockException(Throwable) - +Constructor for exception org.owasp.dependencycheck.concurrency.DirectoryLockException +
    Constructs a new Directory Lock Exception. +
    DirectoryLockException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.concurrency.DirectoryLockException +
    Constructs a new Directory Lock Exception. +
    DirectorySpinLock - Class in org.owasp.dependencycheck.concurrency
    Implements a spin lock on a given directory.
    DirectorySpinLock(File) - +Constructor for class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Constructs a new spin lock on the given directory. +
    distribution - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.License +
      +
    DistributionManagement - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This elements describes all that pertains to distribution for a project.
    DistributionManagement() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    distributionManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    distributionManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    DOCUMENT_KEY - +Static variable in class org.owasp.dependencycheck.data.cpe.Fields +
    The key for the name document id. +
    Downloader - Class in org.owasp.dependencycheck.utils
    A utility to download files from the Internet.
    DownloadFailedException - Exception in org.owasp.dependencycheck.utils
    An exception used when a download fails.
    DownloadFailedException() - +Constructor for exception org.owasp.dependencycheck.utils.DownloadFailedException +
    Creates a new DownloadFailedException. +
    DownloadFailedException(String) - +Constructor for exception org.owasp.dependencycheck.utils.DownloadFailedException +
    Creates a new DownloadFailedException. +
    DownloadFailedException(Throwable) - +Constructor for exception org.owasp.dependencycheck.utils.DownloadFailedException +
    Creates a new DownloadFailedException. +
    DownloadFailedException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.utils.DownloadFailedException +
    Creates a new DownloadFailedException. +
    downloadUrl - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    +
    +

    +E

    +
    +
    email - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    email - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    enabled - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
      +
    endElement(String, String, String) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler +
      +
    endElement(String, String, String) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
      +
    endElement(String, String, String) - +Method in class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
    Indicatees the start of the document. +
    endElement(String, String, String) - +Method in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    Handles the end element event. +
    Engine - Class in org.owasp.dependencycheck
    Scans files, directories, etc.
    Engine() - +Constructor for class org.owasp.dependencycheck.Engine +
    Creates a new Engine. +
    Engine(boolean) - +Constructor for class org.owasp.dependencycheck.Engine +
    Deprecated. This function should no longer be used; the autoupdate flag + should be set using: + Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value); +
    ENTRY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    ENTRY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    equals(Object) - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
      +
    equals(Object) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Implementation of the equals method. +
    equals(Object) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Implements equals for Evidence. +
    equals(Object) - +Method in class org.owasp.dependencycheck.dependency.Identifier +
      +
    equals(Object) - +Method in class org.owasp.dependencycheck.dependency.Reference +
      +
    equals(Object) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
      +
    equals(Object) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Standard equals implementation to compare this VulnerableSoftware to + another object. +
    equals(Object) - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Default implementation of equals. +
    equals(Object) - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Compares the equality of this object to the one passed in as a parameter. +
    error(SAXParseException) - +Method in class org.owasp.dependencycheck.suppression.SuppressionErrorHandler +
    Handles errors. +
    escapeLuceneQuery(CharSequence) - +Static method in class org.owasp.dependencycheck.data.lucene.LuceneUtils +
    Escapes the text passed in so that it is treated as data instead of + control characters. +
    Evidence - Class in org.owasp.dependencycheck.dependency
    Evidence is a piece of information about a Dependency.
    Evidence() - +Constructor for class org.owasp.dependencycheck.dependency.Evidence +
    Creates a new Evidence object. +
    Evidence(String, String, String, Evidence.Confidence) - +Constructor for class org.owasp.dependencycheck.dependency.Evidence +
    Creates a new Evidence objects. +
    Evidence.Confidence - Enum in org.owasp.dependencycheck.dependency
    The confidence that the evidence is "high" quality.
    EvidenceCollection - Class in org.owasp.dependencycheck.dependency
    Used to maintain a collection of Evidence.
    EvidenceCollection() - +Constructor for class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Creates a new EvidenceCollection. +
    exclude - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes +
      +
    excludeDefaults - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
      +
    excludes - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
      +
    exclusion - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions +
      +
    Exclusion - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    Exclusion() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
      +
    exclusions - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    execution - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions +
      +
    executions - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    exists - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
      +
    extension - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions +
      +
    Extension - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Describes a build extension to utilise.
    Extension() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
      +
    extensions - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    extensions - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    extractFiles(File, File) - +Static method in class org.owasp.dependencycheck.utils.FileUtils +
    Extracts the contents of an archive into the specified directory. +
    extractFiles(File, File, Engine) - +Static method in class org.owasp.dependencycheck.utils.FileUtils +
    Extracts the contents of an archive into the specified directory. +
    extractImportantUrlData(String) - +Static method in class org.owasp.dependencycheck.utils.UrlStringUtils +
    Takes a URL, in String format, and adds the important parts of the URL + to a list of strings. +
    ExtractionException - Exception in org.owasp.dependencycheck.utils
    An exception used when a file is unable to be un-zipped.
    ExtractionException() - +Constructor for exception org.owasp.dependencycheck.utils.ExtractionException +
    Creates a new ExtractionException. +
    ExtractionException(String) - +Constructor for exception org.owasp.dependencycheck.utils.ExtractionException +
    Creates a new ExtractionException. +
    ExtractionException(Throwable) - +Constructor for exception org.owasp.dependencycheck.utils.ExtractionException +
    Creates a new ExtractionException. +
    ExtractionException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.utils.ExtractionException +
    Creates a new ExtractionException. +
    +
    +

    +F

    +
    +
    FalsePositiveAnalyzer - Class in org.owasp.dependencycheck.analyzer
    This analyzer attempts to remove some well known false positives - + specifically regarding the java runtime.
    FalsePositiveAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
      +
    family - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
      +
    fatalError(SAXParseException) - +Method in class org.owasp.dependencycheck.suppression.SuppressionErrorHandler +
    Handles fatal exceptions. +
    fetchFile(URL, File) - +Static method in class org.owasp.dependencycheck.utils.Downloader +
    Retrieves a file from a given URL and saves it to the outputPath. +
    FieldAnalyzer - Class in org.owasp.dependencycheck.data.lucene
    A Lucene Analyzer that utilizes the WhitespaceTokenizer, + WordDelimiterFilter, LowerCaseFilter, and StopFilter.
    FieldAnalyzer(Version) - +Constructor for class org.owasp.dependencycheck.data.lucene.FieldAnalyzer +
    Creates a new FieldAnalyzer. +
    Fields - Class in org.owasp.dependencycheck.data.cpe
    Fields is a collection of field names used within the Lucene index for CPE + entries.
    Fields() - +Constructor for class org.owasp.dependencycheck.data.cpe.Fields +
      +
    file - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    FILE_PATH - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The file path element name. +
    FileNameAnalyzer - Class in org.owasp.dependencycheck.analyzer
    Takes a dependency and analyzes the filename and determines the hashes.
    FileNameAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.FileNameAnalyzer +
      +
    FileUtils - Class in org.owasp.dependencycheck.utils
    A collection of utilities for processing information about files.
    filter - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters +
      +
    filter - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters +
      +
    Filter<T> - Class in org.owasp.dependencycheck.utils
     
    Filter() - +Constructor for class org.owasp.dependencycheck.utils.Filter +
      +
    filter(Iterator<T>) - +Method in class org.owasp.dependencycheck.utils.Filter +
      +
    filter(Iterable<T>) - +Method in class org.owasp.dependencycheck.utils.Filter +
      +
    filtering - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
      +
    filters - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    filters - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    finalize() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Ensures that the CVE Database is closed. +
    finalize() - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Cleans up the object and ensures that "close" has been called. +
    finalName - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    finalName - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    +
    +

    +G

    +
    +
    generateReport(String, String) - +Method in class org.owasp.dependencycheck.reporting.ReportGenerator +
    Generates a report from a given Velocity Template. +
    generateReports(String, ReportGenerator.Format) - +Method in class org.owasp.dependencycheck.reporting.ReportGenerator +
    Generates the Dependency Reports for the identified dependencies. +
    generateReports(String, String) - +Method in class org.owasp.dependencycheck.reporting.ReportGenerator +
    Generates the Dependency Reports for the identified dependencies. +
    getActivation() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the activation property. +
    getActualFilePath() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Gets the file path of the dependency. +
    getAddress() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the address property. +
    getAnalysisExceptions() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Get the value of analysisExceptions. +
    getAnalysisPhase() - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Returns the analysis phase that this analyzer should run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.FileNameAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.HintAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Returns the analysis phase that this analyzer should run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer +
    Returns the phase that the analyzer is intended to run in. +
    getAnalyzers() - +Method in class org.owasp.dependencycheck.analyzer.AnalyzerService +
    Returns an Iterator for all instances of the Analyzer interface. +
    getAnalyzers(AnalysisPhase) - +Method in class org.owasp.dependencycheck.Engine +
    Get the List of the analyzers for a specific phase of analysis. +
    getAnalyzers() - +Method in class org.owasp.dependencycheck.Engine +
    Returns a full list of all of the analyzers. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration +
    Gets the value of the any property. +
    getAny() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration +
    Gets the value of the any property. +
    getArch() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Gets the value of the arch property. +
    getArchive() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Gets the value of the archive property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Gets the value of the artifactId property. +
    getArtifactId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Gets the value of the artifactId property. +
    getBoolean(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a boolean value from the properties file. +
    getBuild() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the build property. +
    getBuild() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the build property. +
    getChecksum(String, File) - +Static method in class org.owasp.dependencycheck.utils.Checksum +
    Creates the cryptographic checksum of a given file using the specified + algorithm. +
    getChecksumPolicy() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Gets the value of the checksumPolicy property. +
    getCiManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the ciManagement property. +
    getClassifier() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the classifier property. +
    getCollection() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Returns the collection of NvdCveInfo objects. +
    getComments() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Gets the value of the comments property. +
    getConfidence() - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Get the value of confidence. +
    getConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the configuration property. +
    getConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the configuration property. +
    getConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Gets the value of the configuration property. +
    getConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Gets the value of the configuration property. +
    getConfiguration() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Gets the value of the configuration property. +
    getConnection() - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Returns the database connection. +
    getConnection() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Gets the value of the connection property. +
    getContributor() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors +
    Gets the value of the contributor property. +
    getContributors() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the contributors property. +
    getCpe() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Get the value of cpe. +
    getCPEs(String, String) - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Searches the CPE entries in the database and retrieves all entries for a + given vendor and product combination. +
    getCve() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Get the value of cve. +
    getCveDB() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Returns the CveDB. +
    getCvssAccessComplexity() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssAccessComplexity. +
    getCvssAccessVector() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssAccessVector. +
    getCvssAuthentication() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssAuthentication. +
    getCvssAvailabilityImpact() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssAvailabilityImpact. +
    getCvssBelow() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Get the value of cvssBelow. +
    getCvssConfidentialityImpact() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssConfidentialityImpact. +
    getCvssIntegrityImpact() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssIntegrityImpact. +
    getCvssScore() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cvssScore. +
    getCwe() - +Method in class org.owasp.dependencycheck.data.cwe.CweHandler +
    Returns the HashMap of CWE entries (CWE-ID, Full CWE Name). +
    getCwe() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of cwe. +
    getCwe() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Get the value of cwe. +
    getCweName(String) - +Static method in class org.owasp.dependencycheck.data.cwe.CweDB +
    Returns the full CWE name from the CWE ID. +
    getDataDirectory() - +Static method in class org.owasp.dependencycheck.data.BaseDB +
    Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory. +
    getDataDirectory(String, Class) - +Static method in class org.owasp.dependencycheck.utils.FileUtils +
    Deprecated. This method should no longer be used. See the implementation + in dependency-check-cli/App.java to see how the data directory should be + set. +
    getDataFile(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a value from the properties file as a File object. +
    getDataSources() - +Method in class org.owasp.dependencycheck.data.UpdateService +
    Returns an Iterator for all instances of the CachedWebDataSource + interface. +
    getDefaultGoal() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the defaultGoal property. +
    getDefaultGoal() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the defaultGoal property. +
    getDependencies() - +Method in class org.owasp.dependencycheck.Engine +
    Get the dependencies identified. +
    getDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement +
    Gets the value of the dependencies property. +
    getDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the dependencies property. +
    getDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the dependencies property. +
    getDependencies() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the dependencies property. +
    getDependency() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies +
    Gets the value of the dependency property. +
    getDependency() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies +
    Gets the value of the dependency property. +
    getDependency() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies +
    Gets the value of the dependency property. +
    getDependency() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies +
    Gets the value of the dependency property. +
    getDependencyManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the dependencyManagement property. +
    getDependencyManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the dependencyManagement property. +
    getDescription() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Get the value of description. +
    getDescription() - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Get the value of description. +
    getDescription() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of description. +
    getDescription() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the description property. +
    getDeveloper() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers +
    Gets the value of the developer property. +
    getDeveloperConnection() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Gets the value of the developerConnection property. +
    getDevelopers() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the developers property. +
    getDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the directory property. +
    getDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the directory property. +
    getDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Gets the value of the directory property. +
    getDistribution() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Gets the value of the distribution property. +
    getDistributionManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the distributionManagement property. +
    getDistributionManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the distributionManagement property. +
    getDocument(int) - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Retrieves a document from the Index. +
    getDocumentId() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Get the value of documentId. +
    getDownloadUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Gets the value of the downloadUrl property. +
    getEdition() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Get the value of edition. +
    getEmail() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the email property. +
    getEmail() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the email property. +
    getEvidence() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Returns the evidence used to identify this dependency. +
    getEvidence() - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns the set of evidence. +
    getEvidence(String) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns the set of evidence from a given source. +
    getEvidence(String, String) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns the set of evidence from a given source and name. +
    getEvidenceUsed() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Returns the evidence used to identify this dependency. +
    getException() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Get the value of exception. +
    getExclude() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes +
    Gets the value of the exclude property. +
    getExcludes() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Gets the value of the excludes property. +
    getExclusion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions +
    Gets the value of the exclusion property. +
    getExclusions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the exclusions property. +
    getExecution() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions +
    Gets the value of the execution property. +
    getExecutions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the executions property. +
    getExists() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
    Gets the value of the exists property. +
    getExtension() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions +
    Gets the value of the extension property. +
    getExtensions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the extensions property. +
    getFamily() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Gets the value of the family property. +
    getFile() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Gets the value of the file property. +
    getFile(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a value from the properties file as a File object. +
    getFileExtension() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Gets the file extension of the dependency. +
    getFileExtension(String) - +Static method in class org.owasp.dependencycheck.utils.FileUtils +
    Returns the (lowercase) file extension for a specified file. +
    getFileName() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Returns the file name of the dependency. +
    getFilePath() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Gets the file path of the dependency. +
    getFilePath() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Get the value of filePath. +
    getFilter() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters +
    Gets the value of the filter property. +
    getFilter() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters +
    Gets the value of the filter property. +
    getFilters() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the filters property. +
    getFilters() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the filters property. +
    getFinalName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the finalName property. +
    getFinalName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the finalName property. +
    getFirst() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Get the value of first. +
    getGeneratedKey(PreparedStatement) - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Returns the generated integer primary key for a newly inserted row. +
    getGoal() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals +
    Gets the value of the goal property. +
    getGoals() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the goals property. +
    getGoals() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Gets the value of the goals property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Gets the value of the groupId property. +
    getGroupId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Gets the value of the groupId property. +
    getHex(byte[]) - +Static method in class org.owasp.dependencycheck.utils.Checksum +
    Converts a byte array into a hex string. +
    getId() - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Get the value of id. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Gets the value of the id property. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the id property. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Gets the value of the id property. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the id property. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Gets the value of the id property. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Gets the value of the id property. +
    getId() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
    Gets the value of the id property. +
    getIdentifiers() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Returns a List of Identifiers. +
    getInceptionYear() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the inceptionYear property. +
    getInclude() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes +
    Gets the value of the include property. +
    getIncludes() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Gets the value of the includes property. +
    getInherited() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the inherited property. +
    getInherited() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Gets the value of the inherited property. +
    getInherited() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Gets the value of the inherited property. +
    getInherited() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Gets the value of the inherited property. +
    getInstance() - +Static method in class org.owasp.dependencycheck.analyzer.AnalyzerService +
    Retrieve the singleton instance of AnalyzerService. +
    getInstance() - +Static method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Gets the singleton instance of the CpeMemoryIndex. +
    getInstance() - +Static method in class org.owasp.dependencycheck.data.UpdateService +
    Retrieve the singleton instance of UpdateService. +
    getInt(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns an int value from the properties file. +
    getInt(String, int) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns an int value from the properties file. +
    getIssueManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the issueManagement property. +
    getJdk() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Gets the value of the jdk property. +
    getLastModified(URL) - +Static method in class org.owasp.dependencycheck.utils.Downloader +
    Makes an HTTP Head request to retrieve the last modified date of the + given URL. +
    getLayout() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Gets the value of the layout property. +
    getLayout() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Gets the value of the layout property. +
    getLicense() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Get the value of license. +
    getLicense() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses +
    Gets the value of the license property. +
    getLicenses() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the licenses property. +
    getLong(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a long value from the properties file. +
    getMailingList() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists +
    Gets the value of the mailingList property. +
    getMailingLists() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the mailingLists property. +
    getMaven() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites +
    Gets the value of the maven property. +
    getMaxWait() - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Get the maximum wait time, in seconds, that the spin lock will wait while + trying to obtain a lock. +
    getMD5Checksum(File) - +Static method in class org.owasp.dependencycheck.utils.Checksum +
    Calculates the MD5 checksum of a specified file. +
    getMd5sum() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Returns the MD5 Checksum of the dependency file. +
    getMessage() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Gets the value of the message property. +
    getMissing() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
    Gets the value of the missing property. +
    getModelVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the modelVersion property. +
    getModule() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules +
    Gets the value of the module property. +
    getModule() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules +
    Gets the value of the module property. +
    getModules() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the modules property. +
    getModules() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the modules property. +
    getName() - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Returns the name of this analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.FileNameAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.HintAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation +
    Get the value of name +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Returns the name of this analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer +
    Returns the name of the analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Get the value of name. +
    getName() - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Get the value of name. +
    getName() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of name. +
    getName() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Get the value of name. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Gets the value of the name property. +
    getName() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
    Gets the value of the name property. +
    getNeedsUpdate() - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Get the value of needsUpdate. +
    getNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    Gets the value of node. +
    getNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Gets the value of node. +
    getNotifier() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers +
    Gets the value of the notifier property. +
    getNotifiers() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
    Gets the value of the notifiers property. +
    getNvdCveInfo() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Get the value of nvdCveInfo. +
    getOldSchemaVersionUrl() - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Get the value of oldSchemaVersionUrl. +
    getOrganization() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the organization property. +
    getOrganization() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the organization property. +
    getOrganization() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the organization property. +
    getOrganizationUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the organizationUrl property. +
    getOrganizationUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the organizationUrl property. +
    getOs() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Gets the value of the os property. +
    getOtherArchive() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives +
    Gets the value of the otherArchive property. +
    getOtherArchives() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Gets the value of the otherArchives property. +
    getOutputDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the outputDirectory property. +
    getOutputDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
    Gets the value of the outputDirectory property. +
    getPackageStructure() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation +
    Get the value of packageStructure +
    getPackaging() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the packaging property. +
    getParent() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the parent property. +
    getPathToJar(Class) - +Static method in class org.owasp.dependencycheck.utils.FileUtils +
    Deprecated. this should no longer be used. +
    getPhase() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Gets the value of the phase property. +
    getPlugin() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins +
    Gets the value of the plugin property. +
    getPlugin() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins +
    Gets the value of the plugin property. +
    getPlugin() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins +
    Gets the value of the plugin property. +
    getPlugin() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins +
    Gets the value of the plugin property. +
    getPluginManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the pluginManagement property. +
    getPluginManagement() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the pluginManagement property. +
    getPluginRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the pluginRepositories property. +
    getPluginRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the pluginRepositories property. +
    getPluginRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories +
    Gets the value of the pluginRepository property. +
    getPluginRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories +
    Gets the value of the pluginRepository property. +
    getPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the plugins property. +
    getPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the plugins property. +
    getPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement +
    Gets the value of the plugins property. +
    getPlugins() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
    Gets the value of the plugins property. +
    getPost() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Gets the value of the post property. +
    getPrerequisites() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the prerequisites property. +
    getPreviousVersion() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Get the value of previousVersion. +
    getPreviousWord() - +Method in class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter +
    Returns the previous word. +
    getProduct() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Get the value of product. +
    getProductEvidence() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Gets the Product Evidence. +
    getProfile() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles +
    Gets the value of the profile property. +
    getProfiles() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the profiles property. +
    getProperties() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Returns the data store properties. +
    getProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the properties property. +
    getProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the properties property. +
    getProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the properties property. +
    getProperties() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the properties property. +
    getPropertiesFile() - +Static method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Retrieves the properties file. +
    getProperty(String) - +Method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Returns the property value for the given key. +
    getProperty(String, String) - +Method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Returns the property value for the given key. +
    getProperty() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Gets the value of the property property. +
    getReferences() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of references. +
    getRelatedDependencies() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Get the value of relatedDependencies. +
    getRelativePath() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Gets the value of the relativePath property. +
    getReleases() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Gets the value of the releases property. +
    getRelocation() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Gets the value of the relocation property. +
    getReport() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports +
    Gets the value of the report property. +
    getReporting() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the reporting property. +
    getReporting() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the reporting property. +
    getReports() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the reports property. +
    getReports() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the reports property. +
    getReports() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Gets the value of the reports property. +
    getReportSet() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets +
    Gets the value of the reportSet property. +
    getReportSets() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Gets the value of the reportSets property. +
    getRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the repositories property. +
    getRepositories() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Gets the value of the repositories property. +
    getRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Gets the value of the repository property. +
    getRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories +
    Gets the value of the repository property. +
    getRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories +
    Gets the value of the repository property. +
    getResource() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources +
    Gets the value of the resource property. +
    getResource() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources +
    Gets the value of the resource property. +
    getResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the resources property. +
    getResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the resources property. +
    getRevision() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Get the value of revision. +
    getRole() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles +
    Gets the value of the role property. +
    getRole() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles +
    Gets the value of the role property. +
    getRoles() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the roles property. +
    getRoles() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the roles property. +
    getRules() - +Method in class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer +
    Get the value of rules. +
    getScm() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the scm property. +
    getScope() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the scope property. +
    getScriptSourceDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the scriptSourceDirectory property. +
    getSearchScore() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Get the value of searchScore. +
    getSecond() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Get the value of second. +
    getSha1() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Get the value of sha1. +
    getSHA1Checksum(File) - +Static method in class org.owasp.dependencycheck.utils.Checksum +
    Calculates the SHA1 checksum of a specified file. +
    getSha1sum() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Returns the SHA1 Checksum of the dependency. +
    getSite() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Gets the value of the site property. +
    getSnapshotRepository() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Gets the value of the snapshotRepository property. +
    getSnapshots() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Gets the value of the snapshots property. +
    getSource() - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Get the value of source. +
    getSource() - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Get the value of source. +
    getSourceDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the sourceDirectory property. +
    getStatus() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Gets the value of the status property. +
    getString(String, String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a value from the properties file. +
    getString(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a value from the properties file. +
    getSubscribe() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Gets the value of the subscribe property. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    Returns a list of supported file extensions. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.FileNameAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.HintAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    Returns a list of file EXTENSIONS supported by this analyzer. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    getSupressionRules() - +Method in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    Get the value of supressionRules. +
    getSystem() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
    Gets the value of the system property. +
    getSystem() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
    Gets the value of the system property. +
    getSystemPath() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the systemPath property. +
    getTag() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Gets the value of the tag property. +
    getTargetPath() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Gets the value of the targetPath property. +
    getTempDirectory() - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns the temporary directory. +
    getTermAtt() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter +
    Gets the CharTermAttribute. +
    getTestOutputDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the testOutputDirectory property. +
    getTestResource() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources +
    Gets the value of the testResource property. +
    getTestResource() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources +
    Gets the value of the testResource property. +
    getTestResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the testResources property. +
    getTestResources() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Gets the value of the testResources property. +
    getTestSourceDirectory() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Gets the value of the testSourceDirectory property. +
    getTimestamp() - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Get the value of timestamp - epoch time. +
    getTimeStamp(String) - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Returns the timestamp for the given entry. +
    getTimezone() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the timezone property. +
    getTimezone() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the timezone property. +
    getTokens() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter +
    Gets the list of tokens. +
    getTotalNumberOfApplicationEntries() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
    Get the value of totalNumberOfApplicationEntries. +
    getTotalNumberOfEntries() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
    Get the value of totalNumberOfEntries. +
    getType() - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Get the value of type. +
    getType() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the type property. +
    getType() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the type property. +
    getUnsubscribe() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Gets the value of the unsubscribe property. +
    getUpdateable() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Gets the updateable NVD CVE Entries. +
    getUpdatePolicy() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Gets the value of the updatePolicy property. +
    getUpdateTask() - +Static method in class org.owasp.dependencycheck.data.update.UpdateTaskFactory +
    Constructs the appropriate update task based on configuration. +
    getUrl() - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Get the value of url. +
    getUrl() - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Get the value of url. +
    getUrl() - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Get the value of url. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Gets the value of the url property. +
    getUrl() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
    Gets the value of the url property. +
    getValue() - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Get the value of value. +
    getValue(Boolean) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Get the value of value. +
    getValue() - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Get the value of value. +
    getValue() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
    Gets the value of the value property. +
    getValue() - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Gets the value of the value property. +
    getVendor() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Get the value of vendor. +
    getVendorEvidence() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Gets the Vendor Evidence. +
    getVendorProductList() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Returns the entire list of vendor/product combinations. +
    getVersion() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Get the value of version. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Gets the value of the version property. +
    getVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Gets the value of the version property. +
    getVersionEvidence() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Gets the Version Evidence. +
    getVersionParts() - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Get the value of versionParts. +
    getVulnerabilities(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Retrieves the vulnerabilities associated with the specified CPE. +
    getVulnerabilities() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler +
    Get the value of vulnerabilities. +
    getVulnerabilities() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Get the list of vulnerabilities. +
    getVulnerableSoftware() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Get the value of vulnerableSoftware. +
    getWeighting() - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns a set of Weightings - a list of terms that are believed to be of + higher confidence when also found in another location. +
    getWords() - +Method in class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter +
    Returns the words list. +
    goal - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals +
      +
    goals - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    goals - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
      +
    groupId - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    +
    +

    +H

    +
    +
    hasCpe() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Returns whether or not this suppression rule as CPE entries. +
    hasCve() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Returns whether this suppression rule has CVE entries. +
    hasCvssBelow() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Returns whether or not this suppression rule has cvss suppressions. +
    hasCwe() - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Returns whether this suppression rule has CWE entries. +
    hasException() - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    returns whether or not an exception occurred during download. +
    hashCode() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
      +
    hashCode() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Generates the HashCode. +
    hashCode() - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Implements the hashCode for Evidence. +
    hashCode() - +Method in class org.owasp.dependencycheck.dependency.Identifier +
      +
    hashCode() - +Method in class org.owasp.dependencycheck.dependency.Reference +
      +
    hashCode() - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
      +
    hashCode() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Standard implementation of hashCode. +
    hashCode() - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Default implementation of hashCode. +
    hashCode() - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Calculates the hashCode for this object. +
    hasNext() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Returns whether or not there is another item in the collection. +
    hasPreviousVersion() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Indicates if previous versions of this software are vulnerable. +
    HintAnalyzer - Class in org.owasp.dependencycheck.analyzer
     
    HintAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.HintAnalyzer +
      +
    +
    +

    +I

    +
    +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
      +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
      +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
      +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    id - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
      +
    Identifier - Class in org.owasp.dependencycheck.dependency
     
    Identifier(String, String, String) - +Constructor for class org.owasp.dependencycheck.dependency.Identifier +
    Constructs a new Identifier with the specified data. +
    Identifier(String, String, String, String) - +Constructor for class org.owasp.dependencycheck.dependency.Identifier +
    Constructs a new Identifier with the specified data. +
    idf(long, long) - +Method in class org.owasp.dependencycheck.data.lucene.DependencySimilarity +
    Override the default idf implementation so that frequency within all + document is ignored. +
    importXML(File, File) - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Imports the NVD CVE XML File into the Lucene Index. +
    inceptionYear - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    include - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes +
      +
    includes - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
      +
    incrementToken() - +Method in class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter +
    Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token. +
    incrementToken() - +Method in class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter +
    Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token. +
    incrementToken() - +Method in class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter +
    Deprecated. Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token. +
    IndexEntry - Class in org.owasp.dependencycheck.data.cpe
    A CPE entry containing the name, vendor, product, and version.
    IndexEntry() - +Constructor for class org.owasp.dependencycheck.data.cpe.IndexEntry +
      +
    IndexException - Exception in org.owasp.dependencycheck.data.cpe
    An exception thrown when the there is an issue using the in-memory CPE Index.
    IndexException() - +Constructor for exception org.owasp.dependencycheck.data.cpe.IndexException +
    Creates a new IndexException. +
    IndexException(String) - +Constructor for exception org.owasp.dependencycheck.data.cpe.IndexException +
    Creates a new IndexException. +
    IndexException(Throwable) - +Constructor for exception org.owasp.dependencycheck.data.cpe.IndexException +
    Creates a new IndexException. +
    IndexException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.data.cpe.IndexException +
    Creates a new IndexException. +
    inherited - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    inherited - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
      +
    inherited - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    inherited - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
      +
    init(RuntimeServices) - +Method in class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect +
    This will be invoked once by the LogManager. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.AbstractAnalyzer +
    The initialize method does nothing for this Analyzer. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer +
    The initialize method loads the suppression XML file. +
    initialize() - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    The initialize method is called (once) prior to the analyze method being + called on all of the dependencies. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    The initialize method does nothing for this Analyzer. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Opens the CPE Lucene Index. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    The initialize method does nothing for this Analyzer. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    The initialize method does nothing for this Analyzer. +
    initialize() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Opens the NVD CVE Lucene Index. +
    interpolateString(String, Properties) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    A utility function that will interpolate strings based on values given + in the properties file. +
    InvalidDataException - Exception in org.owasp.dependencycheck.data.nvdcve
    An InvalidDataDataException is a generic exception used when trying to load + the nvd cve meta data.
    InvalidDataException(String) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.InvalidDataException +
    Creates an InvalidDataException. +
    InvalidDataException(String, Exception) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.InvalidDataException +
    Creates an InvalidDataException. +
    InvalidDirectoryException - Exception in org.owasp.dependencycheck.concurrency
    If thrown, indicates that there is a problem with a directory.
    InvalidDirectoryException() - +Constructor for exception org.owasp.dependencycheck.concurrency.InvalidDirectoryException +
    Constructs a new Invalid Directory Exception. +
    InvalidDirectoryException(String) - +Constructor for exception org.owasp.dependencycheck.concurrency.InvalidDirectoryException +
    Constructs a new Invalid Directory Exception. +
    InvalidDirectoryException(Throwable) - +Constructor for exception org.owasp.dependencycheck.concurrency.InvalidDirectoryException +
    Constructs a new Invalid Directory Exception. +
    InvalidDirectoryException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.concurrency.InvalidDirectoryException +
    Constructs a new Invalid Directory Exception. +
    InvalidSettingException - Exception in org.owasp.dependencycheck.utils
    An exception used when an error occurs reading a setting.
    InvalidSettingException() - +Constructor for exception org.owasp.dependencycheck.utils.InvalidSettingException +
    Creates a new InvalidSettingException. +
    InvalidSettingException(String) - +Constructor for exception org.owasp.dependencycheck.utils.InvalidSettingException +
    Creates a new InvalidSettingException. +
    InvalidSettingException(Throwable) - +Constructor for exception org.owasp.dependencycheck.utils.InvalidSettingException +
    Creates a new InvalidSettingException. +
    InvalidSettingException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.utils.InvalidSettingException +
    Creates a new InvalidSettingException. +
    isActiveByDefault() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Gets the value of the activeByDefault property. +
    isBatchUpdateMode() - +Method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Get the value of batchUpdateMode. +
    isCaseSensitive() - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Gets the value of the caseSensitive property. +
    isCVSSAccessComplexityNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node. +
    isCVSSAccessVectorNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_ACCESS_VECTOR node. +
    isCVSSAuthenticationNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_AUTHENTICATION node. +
    isCVSSAvailabilityImpactNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node. +
    isCVSSConfidentialityImpactNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node. +
    isCVSSIntegrityImpactNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_INTEGRITY_IMPACT node. +
    isCVSSScoreNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_SCORE node. +
    isDoBatchUpdate() - +Method in class org.owasp.dependencycheck.data.update.BatchUpdateTask +
    Deprecated. Get the value of doBatchUpdate +
    isEmpty() - +Method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Returns whether or not any properties are set. +
    isEnabled() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Gets the value of the enabled property. +
    isEntryNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    Checks if the handler is at the ENTRY node. +
    isEntryNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the ENTRY node. +
    isExcludeDefaults() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
    Gets the value of the excludeDefaults property. +
    isExtensions() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Gets the value of the extensions property. +
    isFiltering() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Gets the value of the filtering property. +
    isLevelEnabled(int) - +Method in class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect +
    Will always return true. +
    isLoggable(LogRecord) - +Method in class org.owasp.dependencycheck.utils.LogFilter +
    Determines if the record should be logged. +
    isNVDNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    Checks if the handler is at the NVD node. +
    isNVDNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the NVD node. +
    isOpen() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Returns the status of the data source - is the database open. +
    isOpen() - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    returns whether or not the index is open. +
    isOptional() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Gets the value of the optional property. +
    isProdNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    Checks if the handler is at the PROD node. +
    isRegex() - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Returns whether or not the value is a regex. +
    isSendOnError() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the sendOnError property. +
    isSendOnFailure() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the sendOnFailure property. +
    isSendOnSuccess() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the sendOnSuccess property. +
    isSendOnWarning() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Gets the value of the sendOnWarning property. +
    IssueManagement - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Information about the issue tracking (or bug tracking) system used to manage this project.
    IssueManagement() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
      +
    issueManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    isTokenChar(int) - +Method in class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer +
    Determines if the char passed in is part of a token. +
    isUniqueVersion() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Gets the value of the uniqueVersion property. +
    isUpdateNeeded() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Gets whether or not an update is needed. +
    isUpdateNeeded() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Gets whether or not an update is needed. +
    isUpdateNeeded() - +Method in interface org.owasp.dependencycheck.data.update.UpdateTask +
    Gets whether or not an update is needed. +
    isUrl(String) - +Static method in class org.owasp.dependencycheck.utils.UrlStringUtils +
    Tests if the given text is url. +
    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. +
    isVulnCWENode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_CWE node. +
    isVulnProductNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_PRODUCT node. +
    isVulnReferenceNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the REFERENCE node. +
    isVulnReferencesNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the REFERENCES node. +
    isVulnSoftwareNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    Checks if the handler is at the VULN_SOFTWARE node. +
    isVulnSourceNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_SOURCE node. +
    isVulnSummaryNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_SUMMARY node. +
    iterator() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Returns an iterator for the NvdCveInfo contained. +
    iterator(Evidence.Confidence) - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Used to iterate over evidence of the specified confidence. +
    iterator() - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Implements the iterator interface for the Evidence Collection. +
    iterator() - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Retrieves an iterator for the version parts. +
    +
    +

    +J

    +
    +
    JarAnalyzer - Class in org.owasp.dependencycheck.analyzer
    Used to load a JAR file and collect information that can be used to determine + the associated CPE.
    JarAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Constructs a new JarAnalyzer. +
    JarAnalyzer.ClassNameInformation - Class in org.owasp.dependencycheck.analyzer
    Stores information about a class name.
    JavaScriptAnalyzer - Class in org.owasp.dependencycheck.analyzer
    Used to load a JAR file and collect information that can be used to determine + the associated CPE.
    JavaScriptAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
      +
    JAXP_SCHEMA_LANGUAGE - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionParser +
    JAXP Schema Language. +
    JAXP_SCHEMA_SOURCE - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionParser +
    JAXP Schema Source. +
    jdk - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    +
    +

    +L

    +
    +
    LAST_UPDATED - +Static variable in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    The properties file key for the last updated field - used to store the + last updated time of the Modified NVD CVE xml file. +
    LAST_UPDATED_BASE - +Static variable in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Stores the last updated time for each of the NVD CVE files. +
    layout - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
      +
    layout - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    License - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Describes the licenses for this project.
    License() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.License +
      +
    license - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses +
      +
    licenses - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    LOCK_NAME - +Static variable in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    The name of the lock file. +
    log(int, String) - +Method in class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect +
    Given a Velocity log level and message, this method will call the + appropriate Logger level and log the specified values. +
    log(int, String, Throwable) - +Method in class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect +
    Given a Velocity log level, message and Throwable, this method will call + the appropriate Logger level and log the specified values. +
    LogFilter - Class in org.owasp.dependencycheck.utils
    A simple log filter to limit the entries written to the verbose log file.
    LogFilter() - +Constructor for class org.owasp.dependencycheck.utils.LogFilter +
      +
    LogUtils - Class in org.owasp.dependencycheck.utils
    A utility class to aide in the setup of the logging mechanism.
    LuceneUtils - Class in org.owasp.dependencycheck.data.lucene
    Lucene utils is a set of utilize written to make constructing Lucene + queries simpler.
    +
    +

    +M

    +
    +
    MailingList - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This element describes all of the mailing lists associated with + a project.
    MailingList() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    mailingList - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists +
      +
    MailingList.OtherArchives - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    MailingList.OtherArchives() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives +
      +
    mailingLists - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    matches(String) - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Uses the object's properties to determine if the supplied string matches + the value of this property. +
    matchesAtLeastThreeLevels(DependencyVersion) - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Determines if the three most major major version parts are identical. +
    maven - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites +
      +
    MavenNamespaceFilter - Class in org.owasp.dependencycheck.jaxb.pom
    This filter is used when parsing POM documents.
    MavenNamespaceFilter() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
      +
    MAX_DOWNLOAD_THREAD_POOL_SIZE - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The maximum number of threads to allocate when downloading files. +
    MAX_SPIN - +Static variable in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    The maximum wait period used when attempting to obtain a lock. +
    MAX_THREAD_POOL_SIZE - +Static variable in class org.owasp.dependencycheck.data.update.StandardUpdateTask +
    The max thread pool size to use when downloading files. +
    merge(EvidenceCollection...) - +Static method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Merges multiple EvidenceCollections together. +
    mergeProperties(File) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Merges a new properties file into the current properties. +
    mergeProperties(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Merges a new properties file into the current properties. +
    mergeProperties(InputStream) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Merges a new properties file into the current properties. +
    mergeUsed(EvidenceCollection...) - +Static method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Merges multiple EvidenceCollections together, only merging evidence that + was used, into a new EvidenceCollection. +
    message - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
      +
    missing - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
      +
    Model - Class in org.owasp.dependencycheck.jaxb.pom.generated
    The <project> element is the root of the descriptor.
    Model() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    Model.Contributors - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Contributors() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors +
      +
    Model.Dependencies - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Dependencies() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies +
      +
    Model.Developers - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Developers() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers +
      +
    Model.Licenses - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Licenses() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses +
      +
    Model.MailingLists - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.MailingLists() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists +
      +
    Model.Modules - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Modules() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules +
      +
    Model.PluginRepositories - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.PluginRepositories() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories +
      +
    Model.Profiles - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Profiles() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles +
      +
    Model.Properties - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Properties() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties +
      +
    Model.Reports - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Reports() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports +
      +
    Model.Repositories - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Model.Repositories() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories +
      +
    modelVersion - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    MODIFIED - +Static variable in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Modified key word, used as a key to store information about the modified + file (i.e. +
    module - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules +
      +
    module - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules +
      +
    modules - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    modules - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    +
    +

    +N

    +
    +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.License +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    name - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
      +
    newHashSet(String...) - +Static method in class org.owasp.dependencycheck.analyzer.AbstractAnalyzer +
    Utility method to help in the creation of the extensions set. +
    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 +
    Constructs a new NonClosingStream. +
    notifier - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers +
      +
    Notifier - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Configures one method for notifying users/developers when a build breaks.
    Notifier() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    Notifier.Configuration - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Notifier.Configuration() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration +
      +
    notifiers - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
      +
    numDocs() - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    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. +
    NVD - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    NvdCve12Handler - Class in org.owasp.dependencycheck.data.nvdcve
    A SAX Handler that will parse the NVD CVE XML (schema version 1.2).
    NvdCve12Handler() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler +
      +
    NvdCve12Handler.Element - Class in org.owasp.dependencycheck.data.nvdcve
    A simple class to maintain information about the current element while + parsing the NVD CVE XML.
    NvdCve12Handler.Element() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
      +
    NvdCve20Handler - Class in org.owasp.dependencycheck.data.nvdcve
    A SAX Handler that will parse the NVD CVE XML (schema version 2.0).
    NvdCve20Handler() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
      +
    NvdCve20Handler.Element - Class in org.owasp.dependencycheck.data.nvdcve
    A simple class to maintain information about the current element while + parsing the NVD CVE XML.
    NvdCve20Handler.Element() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
      +
    NvdCveAnalyzer - Class in org.owasp.dependencycheck.analyzer
    NvdCveAnalyzer is a utility class that takes a project dependency and + attempts to discern if there is an associated CVEs.
    NvdCveAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
      +
    NvdCveInfo - Class in org.owasp.dependencycheck.data.update
    A pojo that contains the Url and timestamp of the current NvdCve XML files.
    NvdCveInfo() - +Constructor for class org.owasp.dependencycheck.data.update.NvdCveInfo +
      +
    +
    +

    +O

    +
    +
    ObjectFactory - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This object contains factory methods for each + Java content interface and Java element interface + generated in the org.owasp.dependencycheck.analyzer.pom.generated package.
    ObjectFactory() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.owasp.dependencycheck.analyzer.pom.generated +
    obtainExclusiveLock() - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained. +
    obtainLock(boolean, long) - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained. +
    obtainLock(boolean) - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained. +
    obtainSharedLock() - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained. +
    open() - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Opens the data source. +
    open() - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Opens the data source. +
    open() - +Method in class org.owasp.dependencycheck.data.BaseDB +
    Opens the database connection. +
    open(CveDB) - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Creates and loads data into an in memory index. +
    openDataStores() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Opens the CVE and CPE data stores. +
    optional - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    org.owasp.dependencycheck - package org.owasp.dependencycheck
    + + org.owasp.dependencycheck + + + Includes the main entry point (i.e.
    org.owasp.dependencycheck.analyzer - package org.owasp.dependencycheck.analyzer
    + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies.
    org.owasp.dependencycheck.concurrency - package org.owasp.dependencycheck.concurrency
    + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories.
    org.owasp.dependencycheck.data - package org.owasp.dependencycheck.data
    + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources.
    org.owasp.dependencycheck.data.cpe - package org.owasp.dependencycheck.data.cpe
    + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index.
    org.owasp.dependencycheck.data.cwe - package org.owasp.dependencycheck.data.cwe
    + + org.owasp.dependencycheck.data.cwe + + + Contains classes for working with the CWE Database.
    org.owasp.dependencycheck.data.lucene - package org.owasp.dependencycheck.data.lucene
    + + org.owasp.dependencycheck.data.lucene + + + Contains classes used to work with the Lucene Indexes.
    org.owasp.dependencycheck.data.nvdcve - package org.owasp.dependencycheck.data.nvdcve
    + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data.
    org.owasp.dependencycheck.data.update - package org.owasp.dependencycheck.data.update
    + + org.owasp.dependencycheck.data.nvdcve.xml + +
    org.owasp.dependencycheck.dependency - package org.owasp.dependencycheck.dependency
    + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation.
    org.owasp.dependencycheck.jaxb.pom - package org.owasp.dependencycheck.jaxb.pom
    + + org.owasp.dependencycheck.analyzer.pom + + + This package contains utility classes used to parse pom.xml files.
    org.owasp.dependencycheck.jaxb.pom.generated - package org.owasp.dependencycheck.jaxb.pom.generated
     
    org.owasp.dependencycheck.reporting - package org.owasp.dependencycheck.reporting
    + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports.
    org.owasp.dependencycheck.suppression - package org.owasp.dependencycheck.suppression
    + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings.
    org.owasp.dependencycheck.utils - package org.owasp.dependencycheck.utils
    + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc.
    organization - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    organization - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    organization - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    Organization - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Specifies the organization that produces this project.
    Organization() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
      +
    organizationUrl - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    organizationUrl - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    os - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    otherArchive - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives +
      +
    otherArchives - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    outputDirectory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    outputDirectory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
      +
    +
    +

    +P

    +
    +
    packaging - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    parent - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    Parent - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    Parent() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
      +
    parseManifest(Dependency, ArrayList<JarAnalyzer.ClassNameInformation>) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Reads the manifest from the JAR file and collects the entries. +
    parseName(String) - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Parses a name attribute value, from the cpe.xml, into its + corresponding parts: vendor, product. +
    parseName(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Parses a name attribute value, from the cpe.xml, into its + corresponding parts: vendor, product, version, revision. +
    parseSuppressionRules(File) - +Method in class org.owasp.dependencycheck.suppression.SuppressionParser +
    Parses the given xml file and returns a list of the suppression rules + contained. +
    parseVersion(String) - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Parses a version string into its sub parts: major, minor, revision, + build, etc. +
    parseVersion(String) - +Static method in class org.owasp.dependencycheck.utils.DependencyVersionUtil +
    A utility class to extract version numbers from file names (or other + strings containing version numbers.
    + Example:
    + Give the file name: library-name-1.4.1r2-release.jar
    + This function would return: 1.4.1.r2 +
    passes(T) - +Method in class org.owasp.dependencycheck.utils.Filter +
      +
    phase - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
      +
    plugin - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins +
      +
    plugin - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins +
      +
    Plugin - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    Plugin() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    plugin - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins +
      +
    plugin - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins +
      +
    Plugin.Configuration - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Plugin.Configuration() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration +
      +
    Plugin.Dependencies - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Plugin.Dependencies() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies +
      +
    Plugin.Executions - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Plugin.Executions() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions +
      +
    Plugin.Goals - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Plugin.Goals() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals +
      +
    PluginExecution - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    PluginExecution() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
      +
    PluginExecution.Configuration - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    PluginExecution.Configuration() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration +
      +
    PluginExecution.Goals - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    PluginExecution.Goals() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals +
      +
    pluginManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    pluginManagement - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    PluginManagement - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Section for management of default plugin information for use in a group of POMs.
    PluginManagement() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement +
      +
    PluginManagement.Plugins - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    PluginManagement.Plugins() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins +
      +
    pluginRepositories - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    pluginRepositories - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    pluginRepository - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories +
      +
    pluginRepository - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories +
      +
    plugins - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    plugins - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    plugins - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement +
      +
    plugins - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
      +
    post - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    prepareLogger(InputStream, String) - +Static method in class org.owasp.dependencycheck.utils.LogUtils +
    Configures the logger for use by the application. +
    prerequisites - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    Prerequisites - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Describes the prerequisites a project can have.
    Prerequisites() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites +
      +
    process(Dependency) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS + scores should be suppressed. +
    PROD - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    PRODUCT - +Static variable in class org.owasp.dependencycheck.data.cpe.Fields +
    The key for the product field. +
    profile - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles +
      +
    Profile - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Modifications to the build process which is activated based on environmental parameters or command line arguments.
    Profile() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    Profile.Dependencies - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Profile.Dependencies() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies +
      +
    Profile.Modules - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Profile.Modules() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules +
      +
    Profile.PluginRepositories - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Profile.PluginRepositories() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories +
      +
    Profile.Properties - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Profile.Properties() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties +
      +
    Profile.Reports - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Profile.Reports() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports +
      +
    Profile.Repositories - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Profile.Repositories() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories +
      +
    profiles - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    properties - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    properties - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    properties - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    properties - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    property - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    PropertyType - Class in org.owasp.dependencycheck.suppression
    A simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive.
    PropertyType() - +Constructor for class org.owasp.dependencycheck.suppression.PropertyType +
      +
    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 + value. +
    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. +
    +
    +

    +R

    +
    +
    Reference - Class in org.owasp.dependencycheck.dependency
    An external reference for a vulnerability.
    Reference() - +Constructor for class org.owasp.dependencycheck.dependency.Reference +
      +
    relativePath - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
      +
    release() - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Releases the lock. +
    releases - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    relocation - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    Relocation - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Describes where an artifact has moved to.
    Relocation() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
      +
    remove() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
    Removes the current NvdCveInfo object from the collection. +
    removeProperty(String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Removes a property from the local properties collection. +
    report - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports +
      +
    ReportGenerator - Class in org.owasp.dependencycheck.reporting
    The ReportGenerator is used to, as the name implies, generate reports.
    ReportGenerator(String, List<Dependency>, List<Analyzer>) - +Constructor for class org.owasp.dependencycheck.reporting.ReportGenerator +
    Constructs a new ReportGenerator. +
    ReportGenerator.Format - Enum in org.owasp.dependencycheck.reporting
    An enumeration of the report formats.
    reporting - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    reporting - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    Reporting - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Section for management of reports and their configuration.
    Reporting() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
      +
    Reporting.Plugins - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Reporting.Plugins() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins +
      +
    ReportPlugin - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    ReportPlugin() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    ReportPlugin.Configuration - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    ReportPlugin.Configuration() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration +
      +
    ReportPlugin.ReportSets - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    ReportPlugin.ReportSets() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets +
      +
    reports - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    reports - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    reports - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
      +
    reportSet - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets +
      +
    ReportSet - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Represents a set of reports and configuration to be used to generate them.
    ReportSet() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
      +
    ReportSet.Configuration - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    ReportSet.Configuration() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration +
      +
    ReportSet.Reports - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    ReportSet.Reports() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports +
      +
    reportSets - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    repositories - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    repositories - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
      +
    repository - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    repository - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories +
      +
    repository - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories +
      +
    Repository - Class in org.owasp.dependencycheck.jaxb.pom.generated
    A repository contains the information needed for establishing connections with remote repository.
    Repository() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    RepositoryPolicy - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Download policy
    RepositoryPolicy() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
      +
    resource - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources +
      +
    resource - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources +
      +
    Resource - Class in org.owasp.dependencycheck.jaxb.pom.generated
    This element describes all of the classpath resources associated with a project or + unit tests.
    Resource() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
      +
    Resource.Excludes - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Resource.Excludes() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes +
      +
    Resource.Includes - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Java class for anonymous complex type.
    Resource.Includes() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes +
      +
    resources - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    resources - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    role - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles +
      +
    role - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles +
      +
    roles - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    roles - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    +
    +

    +S

    +
    +
    save(NvdCveInfo) - +Method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Writes a properties file containing the last updated date to the + VULNERABLE_CPE directory. +
    saveEntry(String, String, IndexWriter) - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Saves a CPE IndexEntry into the Lucene index. +
    scan(String[]) - +Method in class org.owasp.dependencycheck.Engine +
    Scans an array of files or directories. +
    scan(String) - +Method in class org.owasp.dependencycheck.Engine +
    Scans a given file or directory. +
    scan(File[]) - +Method in class org.owasp.dependencycheck.Engine +
    Scans an array of files or directories. +
    scan(Set<File>) - +Method in class org.owasp.dependencycheck.Engine +
    Scans a list of files or directories. +
    scan(List<File>) - +Method in class org.owasp.dependencycheck.Engine +
    Scans a list of files or directories. +
    scan(File) - +Method in class org.owasp.dependencycheck.Engine +
    Scans a given file or directory. +
    scanDirectory(File) - +Method in class org.owasp.dependencycheck.Engine +
    Recursively scans files and directories. +
    scanFile(File) - +Method in class org.owasp.dependencycheck.Engine +
    Scans a specified file. +
    scm - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    Scm - Class in org.owasp.dependencycheck.jaxb.pom.generated
    4.0.0
    Scm() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
      +
    scope - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    scriptSourceDirectory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    search(String, int) - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Searches the index using the given search string. +
    search(Query, int) - +Method in class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex +
    Searches the index using the given query. +
    searchCPE(String, String, Set<String>, Set<String>) - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Searches the Lucene CPE index to identify possible CPE entries + associated with the supplied vendor, product, and version. +
    SearchFieldAnalyzer - Class in org.owasp.dependencycheck.data.lucene
    A Lucene field analyzer used to analyzer queries against the CPE data.
    SearchFieldAnalyzer(Version) - +Constructor for class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer +
    Constructs a new SearchFieldAnalyzer. +
    SearchVersionAnalyzer - Class in org.owasp.dependencycheck.data.lucene
    Deprecated. version information is no longer stored in lucene
    SearchVersionAnalyzer(Version) - +Constructor for class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer +
    Deprecated. Creates a new SearchVersionAnalyzer. +
    sendOnError - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    sendOnFailure - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    sendOnSuccess - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    sendOnWarning - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    setActivation(Activation) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the activation property. +
    setActiveByDefault(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Sets the value of the activeByDefault property. +
    setActualFilePath(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets the actual file path of the dependency on disk. +
    setAddress(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the address property. +
    setAnalysisExceptions(List<Exception>) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Set the value of analysisExceptions. +
    setArch(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Sets the value of the arch property. +
    setArchive(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Sets the value of the archive property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Sets the value of the artifactId property. +
    setArtifactId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Sets the value of the artifactId property. +
    setBatchUpdateMode(boolean) - +Method in class org.owasp.dependencycheck.data.update.DataStoreMetaInfo +
    Set the value of batchUpdateMode. +
    setBoolean(String, boolean) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Sets a property value. +
    setBuild(Build) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the build property. +
    setBuild(BuildBase) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the build property. +
    setCaseSensitive(boolean) - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Sets the value of the caseSensitive property. +
    setChecksumPolicy(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Sets the value of the checksumPolicy property. +
    setCiManagement(CiManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the ciManagement property. +
    setClassifier(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the classifier property. +
    setComments(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Sets the value of the comments property. +
    setConfidence(Evidence.Confidence) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Set the value of confidence. +
    setConfiguration(Notifier.Configuration) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the configuration property. +
    setConfiguration(Plugin.Configuration) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the configuration property. +
    setConfiguration(PluginExecution.Configuration) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Sets the value of the configuration property. +
    setConfiguration(ReportPlugin.Configuration) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Sets the value of the configuration property. +
    setConfiguration(ReportSet.Configuration) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Sets the value of the configuration property. +
    setConnection(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Sets the value of the connection property. +
    setContributors(Model.Contributors) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the contributors property. +
    setCpe(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Parse a CPE entry from the cpe string representation. +
    setCpe(List<PropertyType>) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Set the value of cpe. +
    setCve(List<String>) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Set the value of cve. +
    setCveDB(CveDB) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
    Sets the cveDB. +
    setCvssAccessComplexity(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssAccessComplexity. +
    setCvssAccessVector(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssAccessVector. +
    setCvssAuthentication(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssAuthentication. +
    setCvssAvailabilityImpact(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssAvailabilityImpact. +
    setCvssBelow(List<Float>) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Set the value of cvssBelow. +
    setCvssConfidentialityImpact(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssConfidentialityImpact. +
    setCvssIntegrityImpact(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssIntegrityImpact. +
    setCvssScore(float) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cvssScore. +
    setCwe(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of cwe. +
    setCwe(List<String>) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Set the value of cwe. +
    setDefaultGoal(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the defaultGoal property. +
    setDefaultGoal(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the defaultGoal property. +
    setDeleteAndRecreate(boolean) - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Set the value of deleteAndRecreate. +
    setDependencies(DependencyManagement.Dependencies) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement +
    Sets the value of the dependencies property. +
    setDependencies(Model.Dependencies) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the dependencies property. +
    setDependencies(Plugin.Dependencies) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the dependencies property. +
    setDependencies(Profile.Dependencies) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the dependencies property. +
    setDependencyManagement(DependencyManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the dependencyManagement property. +
    setDependencyManagement(DependencyManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the dependencyManagement property. +
    setDescription(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Set the value of description. +
    setDescription(String) - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Set the value of description. +
    setDescription(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of description. +
    setDescription(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the description property. +
    setDeveloperConnection(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Sets the value of the developerConnection property. +
    setDevelopers(Model.Developers) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the developers property. +
    setDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the directory property. +
    setDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the directory property. +
    setDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Sets the value of the directory property. +
    setDistribution(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Sets the value of the distribution property. +
    setDistributionManagement(DistributionManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the distributionManagement property. +
    setDistributionManagement(DistributionManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the distributionManagement property. +
    setDoBatchUpdate(boolean) - +Method in class org.owasp.dependencycheck.data.update.BatchUpdateTask +
    Deprecated. Set the value of doBatchUpdate +
    setDocumentId(String) - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Set the value of documentId. +
    setDownloadUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Sets the value of the downloadUrl property. +
    setEdition(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Set the value of edition. +
    setEmail(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the email property. +
    setEmail(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the email property. +
    setEnabled(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Sets the value of the enabled property. +
    setExcludeDefaults(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
    Sets the value of the excludeDefaults property. +
    setExcludes(Resource.Excludes) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Sets the value of the excludes property. +
    setExclusions(Dependency.Exclusions) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the exclusions property. +
    setExecutions(Plugin.Executions) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the executions property. +
    setExists(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
    Sets the value of the exists property. +
    setExtensions(Build.Extensions) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the extensions property. +
    setExtensions(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the extensions property. +
    setFamily(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Sets the value of the family property. +
    setFile(ActivationFile) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Sets the value of the file property. +
    setFileExtension(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets the file name of the dependency. +
    setFileName(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets the file name of the dependency. +
    setFilePath(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets the file path of the dependency. +
    setFilePath(PropertyType) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Set the value of filePath. +
    setFiltering(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Sets the value of the filtering property. +
    setFilters(Build.Filters) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the filters property. +
    setFilters(BuildBase.Filters) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the filters property. +
    setFinalName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the finalName property. +
    setFinalName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the finalName property. +
    setFirst(File) - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Set the value of first. +
    setGoals(Plugin.Goals) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the goals property. +
    setGoals(PluginExecution.Goals) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Sets the value of the goals property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Sets the value of the groupId property. +
    setGroupId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Sets the value of the groupId property. +
    setId(String) - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Set the value of id. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Sets the value of the id property. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the id property. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Sets the value of the id property. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the id property. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Sets the value of the id property. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Sets the value of the id property. +
    setId(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
    Sets the value of the id property. +
    setIdentifiers(Set<Identifier>) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets a List of Identifiers. +
    setInceptionYear(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the inceptionYear property. +
    setIncludes(Resource.Includes) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Sets the value of the includes property. +
    setInherited(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the inherited property. +
    setInherited(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Sets the value of the inherited property. +
    setInherited(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Sets the value of the inherited property. +
    setInherited(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Sets the value of the inherited property. +
    setIssueManagement(IssueManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the issueManagement property. +
    setJdk(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Sets the value of the jdk property. +
    setLayout(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Sets the value of the layout property. +
    setLayout(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Sets the value of the layout property. +
    setLicense(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Set the value of license. +
    setLicenses(Model.Licenses) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the licenses property. +
    setMailingLists(Model.MailingLists) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the mailingLists property. +
    setMaven(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites +
    Sets the value of the maven property. +
    setMaxWait(long) - +Method in class org.owasp.dependencycheck.concurrency.DirectorySpinLock +
    Set the maximum wait time, in seconds, that the spin lock will wait while + trying to obtain a lock. +
    setMd5sum(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets the MD5 Checksum of the dependency. +
    setMessage(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Sets the value of the message property. +
    setMissing(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile +
    Sets the value of the missing property. +
    setModelVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the modelVersion property. +
    setModules(Model.Modules) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the modules property. +
    setModules(Profile.Modules) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the modules property. +
    setName(String) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation +
    Set the value of name +
    setName(String) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Set the value of name. +
    setName(String) - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Set the value of name. +
    setName(String) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of name. +
    setName(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Set the value of name. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Sets the value of the name property. +
    setName(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
    Sets the value of the name property. +
    setNeedsUpdate(boolean) - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Set the value of needsUpdate. +
    setNode(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    Sets the value of node. +
    setNode(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    Sets the value of node. +
    setNotifiers(CiManagement.Notifiers) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
    Sets the value of the notifiers property. +
    setNvdCveInfo(NvdCveInfo) - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Set the value of nvdCveInfo. +
    setOldSchemaVersionUrl(String) - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Set the value of oldSchemaVersionUrl. +
    setOptional(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the optional property. +
    setOrganization(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the organization property. +
    setOrganization(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the organization property. +
    setOrganization(Organization) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the organization property. +
    setOrganizationUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the organizationUrl property. +
    setOrganizationUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the organizationUrl property. +
    setOs(ActivationOS) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Sets the value of the os property. +
    setOtherArchives(MailingList.OtherArchives) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Sets the value of the otherArchives property. +
    setOutputDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the outputDirectory property. +
    setOutputDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
    Sets the value of the outputDirectory property. +
    setPackaging(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the packaging property. +
    setParent(Parent) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the parent property. +
    setPhase(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution +
    Sets the value of the phase property. +
    setPluginManagement(PluginManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the pluginManagement property. +
    setPluginManagement(PluginManagement) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the pluginManagement property. +
    setPluginRepositories(Model.PluginRepositories) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the pluginRepositories property. +
    setPluginRepositories(Profile.PluginRepositories) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the pluginRepositories property. +
    setPlugins(Build.Plugins) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the plugins property. +
    setPlugins(BuildBase.Plugins) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the plugins property. +
    setPlugins(PluginManagement.Plugins) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement +
    Sets the value of the plugins property. +
    setPlugins(Reporting.Plugins) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Reporting +
    Sets the value of the plugins property. +
    setPost(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Sets the value of the post property. +
    setPrerequisites(Prerequisites) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the prerequisites property. +
    setPreviousVersion(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Set the value of previousVersion. +
    setPrevVersionVulnMap(Map<String, List<VulnerableSoftware>>) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
    Sets the prevVersionVulnMap. +
    setProduct(String) - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Set the value of product. +
    setProfiles(Model.Profiles) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the profiles property. +
    setProperties(Contributor.Properties) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the properties property. +
    setProperties(Developer.Properties) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the properties property. +
    setProperties(Model.Properties) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the properties property. +
    setProperties(Profile.Properties) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the properties property. +
    setProperty(ActivationProperty) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Sets the value of the property property. +
    setReferences(SortedSet<Reference>) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of references. +
    setRegex(boolean) - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Sets whether the value property is a regex. +
    setRelatedDependencies(Set<Dependency>) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Set the value of relatedDependencies. +
    setRelativePath(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Sets the value of the relativePath property. +
    setReleases(RepositoryPolicy) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Sets the value of the releases property. +
    setRelocation(Relocation) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Sets the value of the relocation property. +
    setReporting(Reporting) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the reporting property. +
    setReporting(Reporting) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the reporting property. +
    setReports(Model.Reports) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the reports property. +
    setReports(Profile.Reports) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the reports property. +
    setReports(ReportSet.Reports) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet +
    Sets the value of the reports property. +
    setReportSets(ReportPlugin.ReportSets) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Sets the value of the reportSets property. +
    setRepositories(Model.Repositories) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the repositories property. +
    setRepositories(Profile.Repositories) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Profile +
    Sets the value of the repositories property. +
    setRepository(DeploymentRepository) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Sets the value of the repository property. +
    setResources(Build.Resources) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the resources property. +
    setResources(BuildBase.Resources) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the resources property. +
    setRevision(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Set the value of revision. +
    setRoles(Contributor.Roles) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the roles property. +
    setRoles(Developer.Roles) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the roles property. +
    setRules(List<SuppressionRule>) - +Method in class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer +
    Set the value of rules. +
    setScm(Scm) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the scm property. +
    setScope(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the scope property. +
    setScriptSourceDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the scriptSourceDirectory property. +
    setSearchScore(float) - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Set the value of searchScore. +
    setSecond(File) - +Method in class org.owasp.dependencycheck.data.update.CallableDownloadTask +
    Set the value of second. +
    setSendOnError(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the sendOnError property. +
    setSendOnFailure(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the sendOnFailure property. +
    setSendOnSuccess(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the sendOnSuccess property. +
    setSendOnWarning(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the sendOnWarning property. +
    setSha1(String) - +Method in class org.owasp.dependencycheck.suppression.SuppressionRule +
    Set the value of sha1. +
    setSha1sum(String) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Sets the SHA1 Checksum of the dependency. +
    setSite(Site) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Sets the value of the site property. +
    setSnapshotRepository(DeploymentRepository) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Sets the value of the snapshotRepository property. +
    setSnapshots(RepositoryPolicy) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Sets the value of the snapshots property. +
    setSource(String) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Set the value of source. +
    setSource(String) - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Set the value of source. +
    setSourceDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the sourceDirectory property. +
    setStatus(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
    Sets the value of the status property. +
    setString(String, String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Sets a property value. +
    setSubscribe(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Sets the value of the subscribe property. +
    setSystem(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
    Sets the value of the system property. +
    setSystem(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
    Sets the value of the system property. +
    setSystemPath(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the systemPath property. +
    setTag(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Sets the value of the tag property. +
    setTargetPath(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
    Sets the value of the targetPath property. +
    setTestOutputDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the testOutputDirectory property. +
    setTestResources(Build.TestResources) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the testResources property. +
    setTestResources(BuildBase.TestResources) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
    Sets the value of the testResources property. +
    setTestSourceDirectory(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
    Sets the value of the testSourceDirectory property. +
    setTimestamp(long) - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Set the value of timestamp - epoch time. +
    setTimezone(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the timezone property. +
    setTimezone(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the timezone property. +
    Settings - Class in org.owasp.dependencycheck.utils
    A simple settings container that wraps the dependencycheck.properties file.
    Settings.KEYS - Class in org.owasp.dependencycheck.utils
    The collection of keys used within the properties file.
    setType(String) - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Set the value of type. +
    setType(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the type property. +
    setType(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
    Sets the value of the type property. +
    setUniqueVersion(Boolean) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Sets the value of the uniqueVersion property. +
    setUnsubscribe(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
    Sets the value of the unsubscribe property. +
    setUpdatePolicy(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Sets the value of the updatePolicy property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.data.update.NvdCveInfo +
    Set the value of url. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Set the value of url. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.dependency.Reference +
    Set the value of url. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.License +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
    Sets the value of the url property. +
    setUrl(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
    Sets the value of the url property. +
    setUsed(boolean) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Set the value of used. +
    setValue(String) - +Method in class org.owasp.dependencycheck.dependency.Evidence +
    Set the value of value. +
    setValue(String) - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Set the value of value. +
    setValue(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
    Sets the value of the value property. +
    setValue(String) - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Sets the value of the value property. +
    setVendor(String) - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Set the value of vendor. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Set the value of version. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
    Sets the value of the version property. +
    setVersion(String) - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
    Sets the value of the version property. +
    setVersionParts(List<String>) - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Set the value of versionParts. +
    setVulnerabilities(SortedSet<Vulnerability>) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Set the value of vulnerabilities. +
    setVulnerableSoftware(SortedSet<VulnerableSoftware>) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Set the value of vulnerableSoftware. +
    SHA1 - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The sha1 hash element name. +
    shouldDeleteAndRecreate() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Get the value of deleteAndRecreate. +
    shouldDeleteAndRecreate() - +Method in interface org.owasp.dependencycheck.data.update.UpdateTask +
    Get the value of deleteAndRecreate. +
    site - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    Site - Class in org.owasp.dependencycheck.jaxb.pom.generated
    Contains the information needed for deploying websites.
    Site() - +Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.Site +
      +
    size() - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns the number of elements in the EvidenceCollection. +
    snapshotRepository - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    snapshots - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    sourceDirectory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    StandardUpdateTask - Class in org.owasp.dependencycheck.data.update
    Class responsible for updating the CPE and NVDCVE data stores.
    StandardUpdateTask(DataStoreMetaInfo) - +Constructor for class org.owasp.dependencycheck.data.update.StandardUpdateTask +
    Constructs a new Standard Update Task. +
    startDocument() - +Method in class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
    Called at the start of the document parsing. +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.data.cwe.CweHandler +
      +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler +
      +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +
      +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
    Called when an element is started. +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    Handles the start element event. +
    startPrefixMapping(String, String) - +Method in class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
    Called when prefix mapping is started. +
    status - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement +
      +
    subscribe - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in interface org.owasp.dependencycheck.analyzer.Analyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.CPEAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.FileNameAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.HintAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.JarAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +
    Returns whether or not this analyzer can process the given extension. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.Engine +
    Checks all analyzers to see if an extension is supported. +
    SUPPRESS - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionHandler +
    The suppress node, indicates the start of a new rule. +
    SUPPRESSION_FILE - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The key for a list of suppression files. +
    SuppressionErrorHandler - Class in org.owasp.dependencycheck.suppression
    An XML parsing error handler.
    SuppressionErrorHandler() - +Constructor for class org.owasp.dependencycheck.suppression.SuppressionErrorHandler +
      +
    SuppressionHandler - Class in org.owasp.dependencycheck.suppression
    A handler to load suppression rules.
    SuppressionHandler() - +Constructor for class org.owasp.dependencycheck.suppression.SuppressionHandler +
      +
    SuppressionParseException - Exception in org.owasp.dependencycheck.suppression
    An exception used when parsing a suppression rule file fails.
    SuppressionParseException() - +Constructor for exception org.owasp.dependencycheck.suppression.SuppressionParseException +
    Creates a new SuppressionParseException. +
    SuppressionParseException(String) - +Constructor for exception org.owasp.dependencycheck.suppression.SuppressionParseException +
    Creates a new SuppressionParseException. +
    SuppressionParseException(Throwable) - +Constructor for exception org.owasp.dependencycheck.suppression.SuppressionParseException +
    Creates a new SuppressionParseException. +
    SuppressionParseException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.suppression.SuppressionParseException +
    Creates a new SuppressionParseException. +
    SuppressionParser - Class in org.owasp.dependencycheck.suppression
    A simple validating parser for XML Suppression Rules.
    SuppressionParser() - +Constructor for class org.owasp.dependencycheck.suppression.SuppressionParser +
      +
    SuppressionRule - Class in org.owasp.dependencycheck.suppression
     
    SuppressionRule() - +Constructor for class org.owasp.dependencycheck.suppression.SuppressionRule +
      +
    system - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
      +
    system - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
      +
    systemPath - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    +
    +

    +T

    +
    +
    tag - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
      +
    targetPath - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Resource +
      +
    TEMP_DIRECTORY - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The location of the temporary directory. +
    testOutputDirectory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    testResource - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources +
      +
    testResource - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources +
      +
    testResources - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    testResources - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase +
      +
    testSourceDirectory - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Build +
      +
    timezone - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    timezone - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    TokenPairConcatenatingFilter - Class in org.owasp.dependencycheck.data.lucene
    Takes a TokenStream and adds additional tokens by concatenating pairs of + words.
    TokenPairConcatenatingFilter(TokenStream) - +Constructor for class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter +
    Constructs a new TokenPairConcatenatingFilter. +
    toString() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Standard implementation of toString showing vendor and product. +
    toString() - +Method in class org.owasp.dependencycheck.data.update.Updateable +
      +
    toString() - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Standard toString() implementation showing the filename, actualFilePath, + and filePath. +
    toString() - +Method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Returns a string of evidence 'values'. +
    toString() - +Method in class org.owasp.dependencycheck.dependency.Identifier +
    Standard implementation of toString; displays identifier value and type. +
    toString() - +Method in class org.owasp.dependencycheck.dependency.VulnerableSoftware +
    Standard toString() implementation display the name and whether or not + previous versions are also affected. +
    toString() - +Method in class org.owasp.dependencycheck.suppression.PropertyType +
    Default implementation of toString(). +
    toString() - +Method in class org.owasp.dependencycheck.utils.DependencyVersion +
    Reconstructs the version string from the split version parts. +
    type - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    type - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Notifier +
      +
    +
    +

    +U

    +
    +
    uniqueVersion - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
      +
    unsubscribe - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList +
      +
    update() - +Method in interface org.owasp.dependencycheck.data.CachedWebDataSource +
    Determines if an update to the current index is needed, if it is the new + data is downloaded from the Internet and imported into the current Lucene + Index. +
    update() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Updates the data store to the latest version. +
    update() - +Method in class org.owasp.dependencycheck.data.update.BatchUpdateTask +
    Deprecated. Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database. +
    update() - +Method in class org.owasp.dependencycheck.data.update.DatabaseUpdater +
    Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database. +
    update() - +Method in class org.owasp.dependencycheck.data.update.StandardUpdateTask +
    Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database. +
    update() - +Method in interface org.owasp.dependencycheck.data.update.UpdateTask +
    Updates the data store to the latest version. +
    Updateable - Class in org.owasp.dependencycheck.data.update
    Contains a collection of updateable NvdCveInfo objects.
    Updateable() - +Constructor for class org.owasp.dependencycheck.data.update.Updateable +
      +
    UpdateException - Exception in org.owasp.dependencycheck.data
    An exception used when an error occurs reading a setting.
    UpdateException() - +Constructor for exception org.owasp.dependencycheck.data.UpdateException +
    Creates a new UpdateException. +
    UpdateException(String) - +Constructor for exception org.owasp.dependencycheck.data.UpdateException +
    Creates a new UpdateException. +
    UpdateException(Throwable) - +Constructor for exception org.owasp.dependencycheck.data.UpdateException +
    Creates a new UpdateException. +
    UpdateException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.data.UpdateException +
    Creates a new UpdateException. +
    updatePolicy - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
      +
    UpdateService - Class in org.owasp.dependencycheck.data
     
    updatesNeeded() - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Determines if the index needs to be updated. +
    updatesNeeded() - +Method in class org.owasp.dependencycheck.data.update.BatchUpdateTask +
    Deprecated. Determines if the index needs to be updated. +
    updatesNeeded() - +Method in class org.owasp.dependencycheck.data.update.StandardUpdateTask +
    Determines if the index needs to be updated. +
    UpdateTask - Interface in org.owasp.dependencycheck.data.update
    An interface defining an update task.
    UpdateTaskFactory - Class in org.owasp.dependencycheck.data.update
    An UpdateTask Factory that instantiates the correct UpdateTask based on the + given configuration.
    updateVulnerability(Vulnerability) - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Updates the vulnerability within the database. +
    updateVulnerableSoftware(VulnerableSoftware) - +Method in class org.owasp.dependencycheck.dependency.Vulnerability +
    Adds or updates a vulnerable software entry. +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Contributor +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Developer +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.License +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Organization +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Repository +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Scm +
      +
    url - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Site +
      +
    UrlStringUtils - Class in org.owasp.dependencycheck.utils
     
    UrlTokenizingFilter - Class in org.owasp.dependencycheck.data.lucene
    Takes a TokenStream and splits or adds tokens to correctly index version + numbers.
    UrlTokenizingFilter(TokenStream) - +Constructor for class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter +
    Constructs a new VersionTokenizingFilter. +
    +
    +

    +V

    +
    +
    value - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty +
      +
    valueOf(String) - +Static method in enum org.owasp.dependencycheck.analyzer.AnalysisPhase +
    Returns the enum constant of this type with the specified name. +
    valueOf(String) - +Static method in enum org.owasp.dependencycheck.dependency.Evidence.Confidence +
    Returns the enum constant of this type with the specified name. +
    valueOf(String) - +Static method in enum org.owasp.dependencycheck.reporting.ReportGenerator.Format +
    Returns the enum constant of this type with the specified name. +
    values() - +Static method in enum org.owasp.dependencycheck.analyzer.AnalysisPhase +
    Returns an array containing the constants of this enum type, in +the order they are declared. +
    values() - +Static method in enum org.owasp.dependencycheck.dependency.Evidence.Confidence +
    Returns an array containing the constants of this enum type, in +the order they are declared. +
    values() - +Static method in enum org.owasp.dependencycheck.reporting.ReportGenerator.Format +
    Returns an array containing the constants of this enum type, in +the order they are declared. +
    VelocityLoggerRedirect - Class in org.owasp.dependencycheck.reporting
    DependencyCheck uses Logger as a logging + framework, and Apache Velocity uses a custom logging implementation that + outputs to a file named velocity.log by default.
    VelocityLoggerRedirect() - +Constructor for class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect +
      +
    VENDOR - +Static variable in class org.owasp.dependencycheck.data.cpe.Fields +
    The key for the vendor field. +
    VERS - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Extension +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Model +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Parent +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Plugin +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Relocation +
      +
    version - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin +
      +
    VersionAnalyzer - Class in org.owasp.dependencycheck.data.lucene
    Deprecated. version information is no longer stored in lucene
    VersionAnalyzer(Version) - +Constructor for class org.owasp.dependencycheck.data.lucene.VersionAnalyzer +
    Deprecated. Creates a new VersionAnalyzer. +
    VersionTokenizingFilter - Class in org.owasp.dependencycheck.data.lucene
    Deprecated. version information is no longer stored in lucene
    VersionTokenizingFilter(TokenStream) - +Constructor for class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter +
    Deprecated. Constructs a new VersionTokenizingFilter. +
    VULN_CWE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_PRODUCT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_REFERENCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_REFERENCES - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_SOFTWARE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    VULN_SOURCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_SUMMARY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    Vulnerability - Class in org.owasp.dependencycheck.dependency
    Contains the information about a vulnerability.
    Vulnerability() - +Constructor for class org.owasp.dependencycheck.dependency.Vulnerability +
      +
    VulnerabilityComparator - Class in org.owasp.dependencycheck.dependency
    Comparator for Vulnerability objects.
    VulnerabilityComparator() - +Constructor for class org.owasp.dependencycheck.dependency.VulnerabilityComparator +
      +
    VulnerabilitySuppressionAnalyzer - Class in org.owasp.dependencycheck.analyzer
    The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    VulnerabilitySuppressionAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer +
      +
    VulnerableSoftware - Class in org.owasp.dependencycheck.dependency
    A record containing information about vulnerable software.
    VulnerableSoftware() - +Constructor for class org.owasp.dependencycheck.dependency.VulnerableSoftware +
      +
    +
    +

    +W

    +
    +
    W3C_XML_SCHEMA - +Static variable in class org.owasp.dependencycheck.suppression.SuppressionParser +
    W3C XML Schema. +
    warning(SAXParseException) - +Method in class org.owasp.dependencycheck.suppression.SuppressionErrorHandler +
    Logs warnings. +
    withinRange(long, long, int) - +Method in class org.owasp.dependencycheck.data.update.AbstractUpdateTask +
    Determines if the epoch date is within the range specified of the + compareTo epoch time. +
    +
    +A B C D E F G H I J L M N O P R S T U V W + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/index.html b/css/dependency-check-core/apidocs/index.html new file mode 100644 index 000000000..27c1abaa4 --- /dev/null +++ b/css/dependency-check-core/apidocs/index.html @@ -0,0 +1,40 @@ + + + + + + + +Dependency-Check Core 1.0.6 API + + + + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="overview-summary.html">Non-frame version.</A> + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html new file mode 100644 index 000000000..cd87cd361 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html @@ -0,0 +1,576 @@ + + + + + + + +Engine (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck +
    +Class Engine

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.Engine
    +
    +
    +
    +
    public class Engine
    extends Object
    + + +

    +Scans files, directories, etc. for Dependencies. Analyzers are loaded and + used to process the files found by the scan, if a file is encountered and an + Analyzer is associated with the file type then the file is turned into a + dependency. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + +
    +Constructor Summary
    Engine() + +
    +          Creates a new Engine.
    Engine(boolean autoUpdate) + +
    +          Deprecated. This function should no longer be used; the autoupdate flag + should be set using: + Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyzeDependencies() + +
    +          Runs the analyzers against all of the dependencies.
    + List<Analyzer>getAnalyzers() + +
    +          Returns a full list of all of the analyzers.
    + List<Analyzer>getAnalyzers(AnalysisPhase phase) + +
    +          Get the List of the analyzers for a specific phase of analysis.
    + List<Dependency>getDependencies() + +
    +          Get the dependencies identified.
    + voidscan(File file) + +
    +          Scans a given file or directory.
    + voidscan(File[] files) + +
    +          Scans an array of files or directories.
    + voidscan(List<File> files) + +
    +          Scans a list of files or directories.
    + voidscan(Set<File> files) + +
    +          Scans a list of files or directories.
    + voidscan(String path) + +
    +          Scans a given file or directory.
    + voidscan(String[] paths) + +
    +          Scans an array of files or directories.
    +protected  voidscanDirectory(File dir) + +
    +          Recursively scans files and directories.
    +protected  voidscanFile(File file) + +
    +          Scans a specified file.
    + booleansupportsExtension(String ext) + +
    +          Checks all analyzers to see if an extension is supported.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Engine

    +
    +public Engine()
    +
    +
    Creates a new Engine. +

    +

    +
    + +

    +Engine

    +
    +@Deprecated
    +public Engine(boolean autoUpdate)
    +
    +
    Deprecated. This function should no longer be used; the autoupdate flag + should be set using: + Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value); +

    +

    Creates a new Engine. +

    +

    +
    Parameters:
    autoUpdate - indicates whether or not data should be updated from + the Internet
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAnalyzers

    +
    +public List<Analyzer> getAnalyzers(AnalysisPhase phase)
    +
    +
    Get the List of the analyzers for a specific phase of analysis. +

    +

    +
    Parameters:
    phase - the phase to get the configured analyzers. +
    Returns:
    the analyzers loaded
    +
    +
    +
    + +

    +getDependencies

    +
    +public List<Dependency> getDependencies()
    +
    +
    Get the dependencies identified. +

    +

    + +
    Returns:
    the dependencies identified
    +
    +
    +
    + +

    +scan

    +
    +public void scan(String[] paths)
    +
    +
    Scans an array of files or directories. If a directory is specified, it + will be scanned recursively. Any dependencies identified are added to the + dependency collection. +

    +

    +
    Parameters:
    paths - an array of paths to files or directories to be analyzed.
    Since:
    +
    v0.3.2.5
    +
    +
    +
    +
    + +

    +scan

    +
    +public void scan(String path)
    +
    +
    Scans a given file or directory. If a directory is specified, it will be + scanned recursively. Any dependencies identified are added to the + dependency collection. +

    +

    +
    Parameters:
    path - the path to a file or directory to be analyzed.
    +
    +
    +
    + +

    +scan

    +
    +public void scan(File[] files)
    +
    +
    Scans an array of files or directories. If a directory is specified, it + will be scanned recursively. Any dependencies identified are added to the + dependency collection. +

    +

    +
    Parameters:
    files - an array of paths to files or directories to be analyzed.
    Since:
    +
    v0.3.2.5
    +
    +
    +
    +
    + +

    +scan

    +
    +public void scan(Set<File> files)
    +
    +
    Scans a list of files or directories. If a directory is specified, it + will be scanned recursively. Any dependencies identified are added to the + dependency collection. +

    +

    +
    Parameters:
    files - a set of paths to files or directories to be analyzed.
    Since:
    +
    v0.3.2.5
    +
    +
    +
    +
    + +

    +scan

    +
    +public void scan(List<File> files)
    +
    +
    Scans a list of files or directories. If a directory is specified, it + will be scanned recursively. Any dependencies identified are added to the + dependency collection. +

    +

    +
    Parameters:
    files - a set of paths to files or directories to be analyzed.
    Since:
    +
    v0.3.2.5
    +
    +
    +
    +
    + +

    +scan

    +
    +public void scan(File file)
    +
    +
    Scans a given file or directory. If a directory is specified, it will be + scanned recursively. Any dependencies identified are added to the + dependency collection. +

    +

    +
    Parameters:
    file - the path to a file or directory to be analyzed.
    Since:
    +
    v0.3.2.4
    +
    +
    +
    +
    + +

    +scanDirectory

    +
    +protected void scanDirectory(File dir)
    +
    +
    Recursively scans files and directories. Any dependencies identified are + added to the dependency collection. +

    +

    +
    Parameters:
    dir - the directory to scan.
    +
    +
    +
    + +

    +scanFile

    +
    +protected void scanFile(File file)
    +
    +
    Scans a specified file. If a dependency is identified it is added to the + dependency collection. +

    +

    +
    Parameters:
    file - The file to scan.
    +
    +
    +
    + +

    +analyzeDependencies

    +
    +public void analyzeDependencies()
    +
    +
    Runs the analyzers against all of the dependencies. +

    +

    +
    +
    +
    +
    + +

    +getAnalyzers

    +
    +public List<Analyzer> getAnalyzers()
    +
    +
    Returns a full list of all of the analyzers. This is useful for reporting + which analyzers where used. +

    +

    + +
    Returns:
    a list of Analyzers
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String ext)
    +
    +
    Checks all analyzers to see if an extension is supported. +

    +

    +
    Parameters:
    ext - a file extension +
    Returns:
    true or false depending on whether or not the file extension is + supported
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html new file mode 100644 index 000000000..09331820d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html @@ -0,0 +1,337 @@ + + + + + + + +AbstractAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class AbstractAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    Direct Known Subclasses:
    AbstractSuppressionAnalyzer, ArchiveAnalyzer, DependencyBundlingAnalyzer, FalsePositiveAnalyzer, FileNameAnalyzer, HintAnalyzer, JarAnalyzer, JavaScriptAnalyzer
    +
    +
    +
    +
    public abstract class AbstractAnalyzer
    extends Object
    implements Analyzer
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    AbstractAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          The close method does nothing for this Analyzer.
    + voidinitialize() + +
    +          The initialize method does nothing for this Analyzer.
    +protected static Set<String>newHashSet(String... strings) + +
    +          Utility method to help in the creation of the extensions set.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface org.owasp.dependencycheck.analyzer.Analyzer
    analyze, getAnalysisPhase, getName, getSupportedExtensions, supportsExtension
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AbstractAnalyzer

    +
    +public AbstractAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +newHashSet

    +
    +protected static Set<String> newHashSet(String... strings)
    +
    +
    Utility method to help in the creation of the extensions set. This + constructs a new Set that can be used in a final static + declaration.

    + + This implementation was copied from + http://stackoverflow.com/questions/2041778/initialize-java-hashset-values-by-construction +

    +

    +
    +
    +
    +
    Parameters:
    strings - a list of strings to add to the set. +
    Returns:
    a Set of strings.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    The initialize method does nothing for this Analyzer. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +           throws Exception
    +
    +
    The close method does nothing for this Analyzer. +

    +

    +
    Specified by:
    close in interface Analyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..2fb78dab6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html @@ -0,0 +1,383 @@ + + + + + + + +AbstractSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class AbstractSuppressionAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    Direct Known Subclasses:
    CpeSuppressionAnalyzer, VulnerabilitySuppressionAnalyzer
    +
    +
    +
    +
    public abstract class AbstractSuppressionAnalyzer
    extends AbstractAnalyzer
    + + +

    +Abstract base suppression analyzer that contains methods for parsing the + suppression xml file. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    AbstractSuppressionAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + List<SuppressionRule>getRules() + +
    +          Get the value of rules.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + voidinitialize() + +
    +          The initialize method loads the suppression XML file.
    + voidsetRules(List<SuppressionRule> rules) + +
    +          Set the value of rules.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface org.owasp.dependencycheck.analyzer.Analyzer
    analyze, getAnalysisPhase, getName
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AbstractSuppressionAnalyzer

    +
    +public AbstractSuppressionAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    The initialize method loads the suppression XML file. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    Overrides:
    initialize in class AbstractAnalyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception
    +
    +
    +
    + +

    +getRules

    +
    +public List<SuppressionRule> getRules()
    +
    +
    Get the value of rules. +

    +

    + +
    Returns:
    the value of rules
    +
    +
    +
    + +

    +setRules

    +
    +public void setRules(List<SuppressionRule> rules)
    +
    +
    Set the value of rules. +

    +

    +
    Parameters:
    rules - new value of rules
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html new file mode 100644 index 000000000..680681c2c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html @@ -0,0 +1,305 @@ + + + + + + + +AnalysisException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class AnalysisException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.analyzer.AnalysisException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class AnalysisException
    extends Exception
    + + +

    +An exception thrown when the analysis of a dependency fails. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    AnalysisException() + +
    +          Creates a new AnalysisException.
    AnalysisException(String msg) + +
    +          Creates a new AnalysisException.
    AnalysisException(String msg, + Throwable ex) + +
    +          Creates a new AnalysisException.
    AnalysisException(Throwable ex) + +
    +          Creates a new AnalysisException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AnalysisException

    +
    +public AnalysisException()
    +
    +
    Creates a new AnalysisException. +

    +

    +
    + +

    +AnalysisException

    +
    +public AnalysisException(String msg)
    +
    +
    Creates a new AnalysisException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +AnalysisException

    +
    +public AnalysisException(Throwable ex)
    +
    +
    Creates a new AnalysisException. +

    +

    +
    Parameters:
    ex - the cause of the failure.
    +
    +
    + +

    +AnalysisException

    +
    +public AnalysisException(String msg,
    +                         Throwable ex)
    +
    +
    Creates a new AnalysisException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html new file mode 100644 index 000000000..79a636ef6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html @@ -0,0 +1,461 @@ + + + + + + + +AnalysisPhase (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Enum AnalysisPhase

    +
    +java.lang.Object
    +  extended by java.lang.Enum<AnalysisPhase>
    +      extended by org.owasp.dependencycheck.analyzer.AnalysisPhase
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparable<AnalysisPhase>
    +
    +
    +
    +
    public enum AnalysisPhase
    extends Enum<AnalysisPhase>
    + + +

    +An enumeration defining the phases of analysis. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Enum Constant Summary
    FINAL + +
    +          The final analysis phase.
    FINDING_ANALYSIS + +
    +          Finding analysis phase.
    IDENTIFIER_ANALYSIS + +
    +          Identifier analysis phase.
    INFORMATION_COLLECTION + +
    +          Information collection phase.
    INITIAL + +
    +          Initialization phase.
    POST_FINDING_ANALYSIS + +
    +          Post analysis phase.
    POST_IDENTIFIER_ANALYSIS + +
    +          Post identifier analysis phase.
    PRE_FINDING_ANALYSIS + +
    +          Pre finding analysis phase.
    PRE_IDENTIFIER_ANALYSIS + +
    +          Pre identifier analysis phase.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +static AnalysisPhasevalueOf(String name) + +
    +          Returns the enum constant of this type with the specified name.
    +static AnalysisPhase[]values() + +
    +          Returns an array containing the constants of this enum type, in +the order they are declared.
    + + + + + + + +
    Methods inherited from class java.lang.Enum
    clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
    + + + + + + + +
    Methods inherited from class java.lang.Object
    getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Enum Constant Detail
    + +

    +INITIAL

    +
    +public static final AnalysisPhase INITIAL
    +
    +
    Initialization phase. +

    +

    +
    +
    +
    + +

    +INFORMATION_COLLECTION

    +
    +public static final AnalysisPhase INFORMATION_COLLECTION
    +
    +
    Information collection phase. +

    +

    +
    +
    +
    + +

    +PRE_IDENTIFIER_ANALYSIS

    +
    +public static final AnalysisPhase PRE_IDENTIFIER_ANALYSIS
    +
    +
    Pre identifier analysis phase. +

    +

    +
    +
    +
    + +

    +IDENTIFIER_ANALYSIS

    +
    +public static final AnalysisPhase IDENTIFIER_ANALYSIS
    +
    +
    Identifier analysis phase. +

    +

    +
    +
    +
    + +

    +POST_IDENTIFIER_ANALYSIS

    +
    +public static final AnalysisPhase POST_IDENTIFIER_ANALYSIS
    +
    +
    Post identifier analysis phase. +

    +

    +
    +
    +
    + +

    +PRE_FINDING_ANALYSIS

    +
    +public static final AnalysisPhase PRE_FINDING_ANALYSIS
    +
    +
    Pre finding analysis phase. +

    +

    +
    +
    +
    + +

    +FINDING_ANALYSIS

    +
    +public static final AnalysisPhase FINDING_ANALYSIS
    +
    +
    Finding analysis phase. +

    +

    +
    +
    +
    + +

    +POST_FINDING_ANALYSIS

    +
    +public static final AnalysisPhase POST_FINDING_ANALYSIS
    +
    +
    Post analysis phase. +

    +

    +
    +
    +
    + +

    +FINAL

    +
    +public static final AnalysisPhase FINAL
    +
    +
    The final analysis phase. +

    +

    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +values

    +
    +public static AnalysisPhase[] values()
    +
    +
    Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
    +for (AnalysisPhase c : AnalysisPhase.values())
    +    System.out.println(c);
    +
    +

    +

    + +
    Returns:
    an array containing the constants of this enum type, in +the order they are declared
    +
    +
    +
    + +

    +valueOf

    +
    +public static AnalysisPhase valueOf(String name)
    +
    +
    Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.) +

    +

    +
    Parameters:
    name - the name of the enum constant to be returned. +
    Returns:
    the enum constant with the specified name +
    Throws: +
    IllegalArgumentException - if this enum type has no constant +with the specified name +
    NullPointerException - if the argument is null
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html new file mode 100644 index 000000000..d64259466 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html @@ -0,0 +1,382 @@ + + + + + + + +Analyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Interface Analyzer

    +
    +
    All Known Implementing Classes:
    AbstractAnalyzer, AbstractSuppressionAnalyzer, ArchiveAnalyzer, CPEAnalyzer, CpeSuppressionAnalyzer, DependencyBundlingAnalyzer, FalsePositiveAnalyzer, FileNameAnalyzer, HintAnalyzer, JarAnalyzer, JavaScriptAnalyzer, NvdCveAnalyzer, VulnerabilitySuppressionAnalyzer
    +
    +
    +
    +
    public interface Analyzer
    + + +

    +An interface that defines an Analyzer that is used to identify Dependencies. + An analyzer will collect information about the dependency in the form of + Evidence. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    + voidclose() + +
    +          The close method is called after all of the dependencies have been + analyzed.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of supported file extensions.
    + voidinitialize() + +
    +          The initialize method is called (once) prior to the analyze method being + called on all of the dependencies.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +analyze

    +
    +void analyze(Dependency dependency,
    +             Engine engine)
    +             throws AnalysisException
    +
    +
    Analyzes the given dependency. The analysis could be anything from + identifying an Identifier for the dependency, to finding vulnerabilities, + etc. Additionally, if the analyzer collects enough information to add a + description or license information for the dependency it should be added. +

    +

    +
    Parameters:
    dependency - a dependency to analyze.
    engine - the engine that is scanning the dependencies - this is + useful if we need to check other dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error analyzing the + dependency file
    +
    +
    +
    + +

    +getSupportedExtensions

    +
    +Set<String> getSupportedExtensions()
    +
    +

    Returns a list of supported file extensions. An example would be an + analyzer that inspected java jar files. The getSupportedExtensions + function would return a set with a single element "jar".

    + +

    Note: when implementing this the extensions returned MUST be + lowercase.

    +

    +

    + +
    Returns:
    The file extensions supported by this analyzer. + +

    If the analyzer returns null it will not cause additional files to be + analyzed but will be executed against every file loaded

    +
    +
    +
    + +

    +getName

    +
    +String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +initialize

    +
    +void initialize()
    +                throws Exception
    +
    +
    The initialize method is called (once) prior to the analyze method being + called on all of the dependencies. +

    +

    + +
    Throws: +
    Exception - is thrown if an exception occurs initializing the + analyzer.
    +
    +
    +
    + +

    +close

    +
    +void close()
    +           throws Exception
    +
    +
    The close method is called after all of the dependencies have been + analyzed. +

    +

    + +
    Throws: +
    Exception - is thrown if an exception occurs closing the analyzer.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html new file mode 100644 index 000000000..dec583c51 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html @@ -0,0 +1,249 @@ + + + + + + + +AnalyzerService (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class AnalyzerService

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AnalyzerService
    +
    +
    +
    +
    public final class AnalyzerService
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Method Summary
    + Iterator<Analyzer>getAnalyzers() + +
    +          Returns an Iterator for all instances of the Analyzer interface.
    +static AnalyzerServicegetInstance() + +
    +          Retrieve the singleton instance of AnalyzerService.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getInstance

    +
    +public static AnalyzerService getInstance()
    +
    +
    Retrieve the singleton instance of AnalyzerService. +

    +

    + +
    Returns:
    a singleton AnalyzerService.
    +
    +
    +
    + +

    +getAnalyzers

    +
    +public Iterator<Analyzer> getAnalyzers()
    +
    +
    Returns an Iterator for all instances of the Analyzer interface. +

    +

    + +
    Returns:
    an iterator of Analyzers.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html new file mode 100644 index 000000000..8959152b2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html @@ -0,0 +1,444 @@ + + + + + + + +ArchiveAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class ArchiveAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.ArchiveAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class ArchiveAnalyzer
    extends AbstractAnalyzer
    implements Analyzer
    + + +

    +

    An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list.

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    ArchiveAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a given dependency.
    + voidclose() + +
    +          The close method does nothing for this Analyzer.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + voidinitialize() + +
    +          The initialize method does nothing for this Analyzer.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +ArchiveAnalyzer

    +
    +public ArchiveAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    The initialize method does nothing for this Analyzer. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    Overrides:
    initialize in class AbstractAnalyzer
    +
    +
    + +
    Throws: +
    Exception - is thrown if there is an exception deleting or creating + temporary files
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +           throws Exception
    +
    +
    The close method does nothing for this Analyzer. +

    +

    +
    Specified by:
    close in interface Analyzer
    Overrides:
    close in class AbstractAnalyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception deleting temporary + files
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Analyzes a given dependency. If the dependency is an archive, such as a + WAR or EAR, the contents are extracted, scanned, and added to the list of + dependencies within the engine. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - the dependency to analyze
    engine - the engine scanning +
    Throws: +
    AnalysisException - thrown if there is an analysis exception
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html new file mode 100644 index 000000000..b4677277d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html @@ -0,0 +1,305 @@ + + + + + + + +ArchiveExtractionException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class ArchiveExtractionException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.analyzer.ArchiveExtractionException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class ArchiveExtractionException
    extends Exception
    + + +

    +An exception thrown when files in an archive cannot be extracted. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    ArchiveExtractionException() + +
    +          Creates a new ArchiveExtractionException.
    ArchiveExtractionException(String msg) + +
    +          Creates a new ArchiveExtractionException.
    ArchiveExtractionException(String msg, + Throwable ex) + +
    +          Creates a new ArchiveExtractionException.
    ArchiveExtractionException(Throwable ex) + +
    +          Creates a new ArchiveExtractionException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +ArchiveExtractionException

    +
    +public ArchiveExtractionException()
    +
    +
    Creates a new ArchiveExtractionException. +

    +

    +
    + +

    +ArchiveExtractionException

    +
    +public ArchiveExtractionException(String msg)
    +
    +
    Creates a new ArchiveExtractionException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +ArchiveExtractionException

    +
    +public ArchiveExtractionException(Throwable ex)
    +
    +
    Creates a new ArchiveExtractionException. +

    +

    +
    Parameters:
    ex - the cause of the failure.
    +
    +
    + +

    +ArchiveExtractionException

    +
    +public ArchiveExtractionException(String msg,
    +                                  Throwable ex)
    +
    +
    Creates a new ArchiveExtractionException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html new file mode 100644 index 000000000..7d03c5d29 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html @@ -0,0 +1,579 @@ + + + + + + + +CPEAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class CPEAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.CPEAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class CPEAnalyzer
    extends Object
    implements Analyzer
    + + +

    +CPEAnalyzer is a utility class that takes a project dependency and attempts + to discern if there is an associated CPE. It uses the evidence contained + within the dependency to search the Lucene index. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    CPEAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +protected  StringbuildSearch(String vendor, + String product, + Set<String> vendorWeighting, + Set<String> productWeightings) + +
    +          Builds a Lucene search string by properly escaping data and + constructing a valid search query.
    + voidclose() + +
    +          Closes the data sources.
    +protected  voiddetermineCPE(Dependency dependency) + +
    +          Searches the data store of CPE entries, trying to identify the CPE for + the given dependency based on the evidence contained within.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the analysis phase that this analyzer should run in.
    + StringgetName() + +
    +          Returns the name of this analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns true because this analyzer supports all dependency types.
    + voidinitialize() + +
    +          Opens the CPE Lucene Index.
    + voidopen() + +
    +          Opens the data source.
    +protected  List<IndexEntry>searchCPE(String vendor, + String product, + Set<String> vendorWeightings, + Set<String> productWeightings) + +
    +          Searches the Lucene CPE index to identify possible CPE entries + associated with the supplied vendor, product, and version.
    + booleansupportsExtension(String extension) + +
    +          Returns true because this analyzer supports all dependency types.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CPEAnalyzer

    +
    +public CPEAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +open

    +
    +public void open()
    +          throws IOException,
    +                 DatabaseException
    +
    +
    Opens the data source. +

    +

    +
    +
    +
    + +
    Throws: +
    IOException - when the Lucene directory to be queried does not + exist or is corrupt. +
    DatabaseException - when the database throws an exception. This + usually occurs when the database is in use by another process.
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the data sources. +

    +

    +
    Specified by:
    close in interface Analyzer
    +
    +
    +
    +
    +
    +
    + +

    +determineCPE

    +
    +protected void determineCPE(Dependency dependency)
    +                     throws org.apache.lucene.index.CorruptIndexException,
    +                            IOException,
    +                            org.apache.lucene.queryparser.classic.ParseException
    +
    +
    Searches the data store of CPE entries, trying to identify the CPE for + the given dependency based on the evidence contained within. The + dependency passed in is updated with any identified CPE values. +

    +

    +
    +
    +
    +
    Parameters:
    dependency - the dependency to search for CPE entries on. +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown when the Lucene index is corrupt. +
    IOException - is thrown when an IOException occurs. +
    org.apache.lucene.queryparser.classic.ParseException - is thrown when the Lucene query cannot be parsed.
    +
    +
    +
    + +

    +searchCPE

    +
    +protected List<IndexEntry> searchCPE(String vendor,
    +                                     String product,
    +                                     Set<String> vendorWeightings,
    +                                     Set<String> productWeightings)
    +                              throws org.apache.lucene.index.CorruptIndexException,
    +                                     IOException,
    +                                     org.apache.lucene.queryparser.classic.ParseException
    +
    +

    Searches the Lucene CPE index to identify possible CPE entries + associated with the supplied vendor, product, and version.

    + +

    If either the vendorWeightings or productWeightings lists have been + populated this data is used to add weighting factors to the search.

    +

    +

    +
    +
    +
    +
    Parameters:
    vendor - the text used to search the vendor field
    product - the text used to search the product field
    vendorWeightings - a list of strings to use to add weighting factors + to the vendor field
    productWeightings - Adds a list of strings that will be used to add + weighting factors to the product search +
    Returns:
    a list of possible CPE values +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - when the Lucene index is corrupt +
    IOException - when the Lucene index is not found +
    org.apache.lucene.queryparser.classic.ParseException - when the generated query is not valid
    +
    +
    +
    + +

    +buildSearch

    +
    +protected String buildSearch(String vendor,
    +                             String product,
    +                             Set<String> vendorWeighting,
    +                             Set<String> productWeightings)
    +
    +

    Builds a Lucene search string by properly escaping data and + constructing a valid search query.

    + +

    If either the possibleVendor or possibleProducts lists have been + populated this data is used to add weighting factors to the search string + generated.

    +

    +

    +
    +
    +
    +
    Parameters:
    vendor - text to search the vendor field
    product - text to search the product field
    vendorWeighting - a list of strings to apply to the vendor to boost + the terms weight
    productWeightings - a list of strings to apply to the product to + boost the terms weight +
    Returns:
    the Lucene query
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - The Dependency to analyze.
    engine - The analysis engine +
    Throws: +
    AnalysisException - is thrown if there is an issue analyzing the + dependency.
    +
    +
    +
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns true because this analyzer supports all dependency types. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    true.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of this analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of this analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns true because this analyzer supports all dependency types. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension of the dependency being analyzed. +
    Returns:
    true.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the analysis phase that this analyzer should run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the analysis phase that this analyzer should run in.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    Opens the CPE Lucene Index. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    +
    +
    + +
    Throws: +
    Exception - is thrown if there is an issue opening the index.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..f3540d826 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html @@ -0,0 +1,343 @@ + + + + + + + +CpeSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class CpeSuppressionAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +          extended by org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class CpeSuppressionAnalyzer
    extends AbstractSuppressionAnalyzer
    + + +

    +The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema. Any identified CPE entries within + the dependencies that match will be removed. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    CpeSuppressionAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    getRules, getSupportedExtensions, initialize, setRules, supportsExtension
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CpeSuppressionAnalyzer

    +
    +public CpeSuppressionAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Description copied from interface: Analyzer
    +
    Analyzes the given dependency. The analysis could be anything from + identifying an Identifier for the dependency, to finding vulnerabilities, + etc. Additionally, if the analyzer collects enough information to add a + description or license information for the dependency it should be added. +

    +

    +
    Parameters:
    dependency - a dependency to analyze.
    engine - the engine that is scanning the dependencies - this is + useful if we need to check other dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error analyzing the + dependency file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..6e4d7e592 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html @@ -0,0 +1,403 @@ + + + + + + + +DependencyBundlingAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class DependencyBundlingAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class DependencyBundlingAnalyzer
    extends AbstractAnalyzer
    implements Analyzer
    + + +

    +

    This analyzer ensures dependencies that should be grouped together, to + remove excess noise from the report, are grouped. An example would be Spring, + Spring Beans, Spring MVC, etc. If they are all for the same version and have + the same relative path then these should be grouped into a single dependency + under the core/main library.

    +

    Note, this grouping only works on dependencies with identified CVE + entries

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    DependencyBundlingAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency ignore, + Engine engine) + +
    +          Analyzes a set of dependencies.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, initialize, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface org.owasp.dependencycheck.analyzer.Analyzer
    close, initialize
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DependencyBundlingAnalyzer

    +
    +public DependencyBundlingAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension to test for support +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency ignore,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Analyzes a set of dependencies. If they have been found to have the same + base path and the same set of identifiers they are likely related. The + related dependencies are bundled into a single reportable item. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    ignore - this analyzer ignores the dependency being analyzed
    engine - the engine that is scanning the dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error reading the JAR + file.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html new file mode 100644 index 000000000..dcfbefa50 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html @@ -0,0 +1,434 @@ + + + + + + + +FalsePositiveAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class FalsePositiveAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class FalsePositiveAnalyzer
    extends AbstractAnalyzer
    + + +

    +This analyzer attempts to remove some well known false positives - + specifically regarding the java runtime. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +static PatternCORE_FILES + +
    +          Regex to identify core java library files.
    +static PatternCORE_JAVA + +
    +          Regex to identify core java libraries and a few other commonly + misidentified ones.
    +  + + + + + + + + + + +
    +Constructor Summary
    FalsePositiveAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the dependencies and removes bad/incorrect CPE associations + based on various heuristics.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, initialize, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +CORE_JAVA

    +
    +public static final Pattern CORE_JAVA
    +
    +
    Regex to identify core java libraries and a few other commonly + misidentified ones. +

    +

    +
    +
    +
    + +

    +CORE_FILES

    +
    +public static final Pattern CORE_FILES
    +
    +
    Regex to identify core java library files. This is currently incomplete. +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +FalsePositiveAnalyzer

    +
    +public FalsePositiveAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Parameters:
    extension - the file extension to test for support +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Analyzes the dependencies and removes bad/incorrect CPE associations + based on various heuristics. +

    +

    +
    Parameters:
    dependency - the dependency to analyze.
    engine - the engine that is scanning the dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error reading the JAR + file.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html new file mode 100644 index 000000000..3d55f1803 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html @@ -0,0 +1,395 @@ + + + + + + + +FileNameAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class FileNameAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.FileNameAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class FileNameAnalyzer
    extends AbstractAnalyzer
    implements Analyzer
    + + +

    +Takes a dependency and analyzes the filename and determines the hashes. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    FileNameAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Collects information about the file name.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, initialize, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface org.owasp.dependencycheck.analyzer.Analyzer
    close, initialize
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +FileNameAnalyzer

    +
    +public FileNameAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Collects information about the file name. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - the dependency to analyze.
    engine - the engine that is scanning the dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error reading the JAR + file.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html new file mode 100644 index 000000000..dab07f903 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html @@ -0,0 +1,393 @@ + + + + + + + +HintAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class HintAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.HintAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class HintAnalyzer
    extends AbstractAnalyzer
    implements Analyzer
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    HintAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          The HintAnalyzer uses knowledge about a dependency to add additional + information to help in identification of identifiers or vulnerabilities.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, initialize, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface org.owasp.dependencycheck.analyzer.Analyzer
    close, initialize
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +HintAnalyzer

    +
    +public HintAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    The HintAnalyzer uses knowledge about a dependency to add additional + information to help in identification of identifiers or vulnerabilities. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - The dependency being analyzed
    engine - The scanning engine +
    Throws: +
    AnalysisException - is thrown if there is an exception analyzing + the dependency.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html new file mode 100644 index 000000000..624f60af9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html @@ -0,0 +1,273 @@ + + + + + + + +JarAnalyzer.ClassNameInformation (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class JarAnalyzer.ClassNameInformation

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation
    +
    +
    +
    Enclosing class:
    JarAnalyzer
    +
    +
    +
    +
    protected static class JarAnalyzer.ClassNameInformation
    extends Object
    + + +

    +Stores information about a class name. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetName() + +
    +          Get the value of name
    + ArrayList<String>getPackageStructure() + +
    +          Get the value of packageStructure
    + voidsetName(String name) + +
    +          Set the value of name
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Get the value of name +

    +

    + +
    Returns:
    the value of name
    +
    +
    +
    + +

    +setName

    +
    +public void setName(String name)
    +
    +
    Set the value of name +

    +

    +
    Parameters:
    name - new value of name
    +
    +
    +
    + +

    +getPackageStructure

    +
    +public ArrayList<String> getPackageStructure()
    +
    +
    Get the value of packageStructure +

    +

    + +
    Returns:
    the value of packageStructure
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html new file mode 100644 index 000000000..99c9978ec --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html @@ -0,0 +1,605 @@ + + + + + + + +JarAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class JarAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.JarAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class JarAnalyzer
    extends AbstractAnalyzer
    implements Analyzer
    + + +

    +Used to load a JAR file and collect information that can be used to determine + the associated CPE. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +protected static classJarAnalyzer.ClassNameInformation + +
    +          Stores information about a class name.
    +  + + + + + + + + + + +
    +Constructor Summary
    JarAnalyzer() + +
    +          Constructs a new JarAnalyzer.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    +protected  voidanalyzePackageNames(ArrayList<JarAnalyzer.ClassNameInformation> classNames, + Dependency dependency, + boolean addPackagesAsEvidence) + +
    +          Analyzes the path information of the classes contained within the + JarAnalyzer to try and determine possible vendor or product names.
    +protected  booleananalyzePOM(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classes) + +
    +          Attempts to find a pom.xml within the JAR file.
    + voidclose() + +
    +          The close method does nothing for this Analyzer.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + voidinitialize() + +
    +          The initialize method does nothing for this Analyzer.
    +protected  StringinterpolateString(String text, + Properties properties) + +
    +          A utility function that will interpolate strings based on values given + in the properties file.
    +protected  booleanparseManifest(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classInformation) + +
    +          Reads the manifest from the JAR file and collects the entries.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +JarAnalyzer

    +
    +public JarAnalyzer()
    +
    +
    Constructs a new JarAnalyzer. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - the dependency to analyze.
    engine - the engine that is scanning the dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error reading the JAR + file.
    +
    +
    +
    + +

    +analyzePOM

    +
    +protected boolean analyzePOM(Dependency dependency,
    +                             ArrayList<JarAnalyzer.ClassNameInformation> classes)
    +                      throws AnalysisException
    +
    +
    Attempts to find a pom.xml within the JAR file. If found it extracts + information and adds it to the evidence. This will attempt to interpolate + the strings contained within the pom.properties if one exists. +

    +

    +
    +
    +
    +
    Parameters:
    dependency - the dependency being analyzed
    classes - a collection of class name information +
    Returns:
    whether or not evidence was added to the dependency +
    Throws: +
    AnalysisException - is thrown if there is an exception parsing the + pom
    +
    +
    +
    + +

    +analyzePackageNames

    +
    +protected void analyzePackageNames(ArrayList<JarAnalyzer.ClassNameInformation> classNames,
    +                                   Dependency dependency,
    +                                   boolean addPackagesAsEvidence)
    +
    +
    Analyzes the path information of the classes contained within the + JarAnalyzer to try and determine possible vendor or product names. If any + are found they are stored in the packageVendor and packageProduct + hashSets. +

    +

    +
    +
    +
    +
    Parameters:
    classNames - a list of class names
    dependency - a dependency to analyze
    addPackagesAsEvidence - a flag indicating whether or not package + names should be added as evidence.
    +
    +
    +
    + +

    +parseManifest

    +
    +protected boolean parseManifest(Dependency dependency,
    +                                ArrayList<JarAnalyzer.ClassNameInformation> classInformation)
    +                         throws IOException
    +
    +

    Reads the manifest from the JAR file and collects the entries. Some + vendorKey entries are:

    • Implementation Title
    • +
    • Implementation Version
    • Implementation Vendor
    • +
    • Implementation VendorId
    • Bundle Name
    • Bundle + Version
    • Bundle Vendor
    • Bundle Description
    • Main + Class
    + However, all but a handful of specific entries are read in. +

    +

    +
    +
    +
    +
    Parameters:
    dependency - A reference to the dependency
    classInformation - a collection of class information +
    Returns:
    whether evidence was identified parsing the manifest +
    Throws: +
    IOException - if there is an issue reading the JAR file
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +
    +
    The initialize method does nothing for this Analyzer. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    Overrides:
    initialize in class AbstractAnalyzer
    +
    +
    +
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    The close method does nothing for this Analyzer. +

    +

    +
    Specified by:
    close in interface Analyzer
    Overrides:
    close in class AbstractAnalyzer
    +
    +
    +
    +
    +
    +
    + +

    +interpolateString

    +
    +protected String interpolateString(String text,
    +                                   Properties properties)
    +
    +

    A utility function that will interpolate strings based on values given + in the properties file. It will also interpolate the strings contained + within the properties file so that properties can reference other + properties.

    +

    Note: if there is no property found the reference will be + removed. In other words, if the interpolated string will be replaced with + an empty string. +

    +

    Example:

    + + Properties p = new Properties(); + p.setProperty("key", "value"); + String s = interpolateString("'${key}' and '${nothing}'", p); + System.out.println(s); + +

    Will result in:

    + + 'value' and '' + +

    +

    +
    +
    +
    +
    Parameters:
    text - the string that contains references to properties.
    properties - a collection of properties that may be referenced + within the text. +
    Returns:
    the interpolated text.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html new file mode 100644 index 000000000..7dd0e4202 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html @@ -0,0 +1,443 @@ + + + + + + + +JavaScriptAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class JavaScriptAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class JavaScriptAnalyzer
    extends AbstractAnalyzer
    implements Analyzer
    + + +

    +Used to load a JAR file and collect information that can be used to determine + the associated CPE. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    JavaScriptAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidclose() + +
    +          The close method does nothing for this Analyzer.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + voidinitialize() + +
    +          The initialize method does nothing for this Analyzer.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +JavaScriptAnalyzer

    +
    +public JavaScriptAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - the dependency to analyze.
    engine - the engine that is scanning the dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error reading the JAR + file.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    The initialize method does nothing for this Analyzer. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    Overrides:
    initialize in class AbstractAnalyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +           throws Exception
    +
    +
    The close method does nothing for this Analyzer. +

    +

    +
    Specified by:
    close in interface Analyzer
    Overrides:
    close in class AbstractAnalyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html new file mode 100644 index 000000000..5340bf12c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html @@ -0,0 +1,516 @@ + + + + + + + +NvdCveAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class NvdCveAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.NvdCveAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class NvdCveAnalyzer
    extends Object
    implements Analyzer
    + + +

    +NvdCveAnalyzer is a utility class that takes a project dependency and + attempts to discern if there is an associated CVEs. It uses the the + identifiers found by other analyzers to lookup the CVE data. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    NvdCveAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidclose() + +
    +          Closes the data source.
    +protected  voidfinalize() + +
    +          Ensures that the CVE Database is closed.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the analysis phase that this analyzer should run in.
    + StringgetName() + +
    +          Returns the name of this analyzer.
    + Set<String>getSupportedExtensions() + +
    +          Returns true because this analyzer supports all dependency types.
    + voidinitialize() + +
    +          Opens the NVD CVE Lucene Index.
    + booleanisOpen() + +
    +          Returns the status of the data source - is the database open.
    + voidopen() + +
    +          Opens the data source.
    + booleansupportsExtension(String extension) + +
    +          Returns true because this analyzer supports all dependency types.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NvdCveAnalyzer

    +
    +public NvdCveAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +open

    +
    +public void open()
    +          throws SQLException,
    +                 IOException,
    +                 DatabaseException,
    +                 ClassNotFoundException
    +
    +
    Opens the data source. +

    +

    +
    +
    +
    + +
    Throws: +
    SQLException - thrown when there is a SQL Exception +
    IOException - thrown when there is an IO Exception +
    DatabaseException - thrown when there is a database exceptions +
    ClassNotFoundException - thrown if the h2 database driver cannot be + loaded
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the data source. +

    +

    +
    Specified by:
    close in interface Analyzer
    +
    +
    +
    +
    +
    +
    + +

    +isOpen

    +
    +public boolean isOpen()
    +
    +
    Returns the status of the data source - is the database open. +

    +

    +
    +
    +
    + +
    Returns:
    true or false.
    +
    +
    +
    + +

    +finalize

    +
    +protected void finalize()
    +                 throws Throwable
    +
    +
    Ensures that the CVE Database is closed. +

    +

    +
    Overrides:
    finalize in class Object
    +
    +
    + +
    Throws: +
    Throwable - when a throwable is thrown.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency. +

    +

    +
    Specified by:
    analyze in interface Analyzer
    +
    +
    +
    Parameters:
    dependency - The Dependency to analyze
    engine - The analysis engine +
    Throws: +
    AnalysisException - is thrown if there is an issue analyzing the + dependency
    +
    +
    +
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns true because this analyzer supports all dependency types. +

    +

    +
    Specified by:
    getSupportedExtensions in interface Analyzer
    +
    +
    + +
    Returns:
    true.
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of this analyzer. +

    +

    +
    Specified by:
    getName in interface Analyzer
    +
    +
    + +
    Returns:
    the name of this analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns true because this analyzer supports all dependency types. +

    +

    +
    Specified by:
    supportsExtension in interface Analyzer
    +
    +
    +
    Parameters:
    extension - the file extension of the dependency being analyzed. +
    Returns:
    true.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the analysis phase that this analyzer should run in. +

    +

    +
    Specified by:
    getAnalysisPhase in interface Analyzer
    +
    +
    + +
    Returns:
    the analysis phase that this analyzer should run in.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    Opens the NVD CVE Lucene Index. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    +
    +
    + +
    Throws: +
    Exception - is thrown if there is an issue opening the index.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..6843b6988 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,343 @@ + + + + + + + +VulnerabilitySuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class VulnerabilitySuppressionAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +          extended by org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class VulnerabilitySuppressionAnalyzer
    extends AbstractSuppressionAnalyzer
    + + +

    +The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema. Any identified Vulnerability + entries within the dependencies that match will be removed. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    VulnerabilitySuppressionAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    getRules, getSupportedExtensions, initialize, setRules, supportsExtension
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VulnerabilitySuppressionAnalyzer

    +
    +public VulnerabilitySuppressionAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Description copied from interface: Analyzer
    +
    Analyzes the given dependency. The analysis could be anything from + identifying an Identifier for the dependency, to finding vulnerabilities, + etc. Additionally, if the analyzer collects enough information to add a + description or license information for the dependency it should be added. +

    +

    +
    Parameters:
    dependency - a dependency to analyze.
    engine - the engine that is scanning the dependencies - this is + useful if we need to check other dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error analyzing the + dependency file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html new file mode 100644 index 000000000..dc61fc113 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html @@ -0,0 +1,267 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AbstractAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.AbstractAnalyzer

    +
    + + + + + + + + + +
    +Packages that use AbstractAnalyzer
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of AbstractAnalyzer in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Subclasses of AbstractAnalyzer in org.owasp.dependencycheck.analyzer
    + classAbstractSuppressionAnalyzer + +
    +          Abstract base suppression analyzer that contains methods for parsing the + suppression xml file.
    + classArchiveAnalyzer + +
    +          An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list.
    + classCpeSuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    + classDependencyBundlingAnalyzer + +
    +          This analyzer ensures dependencies that should be grouped together, to + remove excess noise from the report, are grouped.
    + classFalsePositiveAnalyzer + +
    +          This analyzer attempts to remove some well known false positives - + specifically regarding the java runtime.
    + classFileNameAnalyzer + +
    +          Takes a dependency and analyzes the filename and determines the hashes.
    + classHintAnalyzer + +
    +           
    + classJarAnalyzer + +
    +          Used to load a JAR file and collect information that can be used to determine + the associated CPE.
    + classJavaScriptAnalyzer + +
    +          Used to load a JAR file and collect information that can be used to determine + the associated CPE.
    + classVulnerabilitySuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..bf8bd4d22 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html @@ -0,0 +1,197 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer

    +
    + + + + + + + + + +
    +Packages that use AbstractSuppressionAnalyzer
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of AbstractSuppressionAnalyzer in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + +
    Subclasses of AbstractSuppressionAnalyzer in org.owasp.dependencycheck.analyzer
    + classCpeSuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    + classVulnerabilitySuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html new file mode 100644 index 000000000..e13e1fd08 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html @@ -0,0 +1,302 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.AnalysisException

    +
    + + + + + + + + + +
    +Packages that use AnalysisException
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of AnalysisException in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that throw AnalysisException
    + voidVulnerabilitySuppressionAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +           
    + voidNvdCveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidJavaScriptAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidJarAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidHintAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          The HintAnalyzer uses knowledge about a dependency to add additional + information to help in identification of identifiers or vulnerabilities.
    + voidFileNameAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Collects information about the file name.
    + voidFalsePositiveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the dependencies and removes bad/incorrect CPE associations + based on various heuristics.
    + voidDependencyBundlingAnalyzer.analyze(Dependency ignore, + Engine engine) + +
    +          Analyzes a set of dependencies.
    + voidCpeSuppressionAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +           
    + voidCPEAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidArchiveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a given dependency.
    + voidAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    +protected  booleanJarAnalyzer.analyzePOM(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classes) + +
    +          Attempts to find a pom.xml within the JAR file.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html new file mode 100644 index 000000000..5c31a38e9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html @@ -0,0 +1,326 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.AnalysisPhase

    +
    + + + + + + + + + + + + + +
    +Packages that use AnalysisPhase
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. 
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of AnalysisPhase in org.owasp.dependencycheck
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck with parameters of type AnalysisPhase
    + List<Analyzer>Engine.getAnalyzers(AnalysisPhase phase) + +
    +          Get the List of the analyzers for a specific phase of analysis.
    +  +

    + + + + + +
    +Uses of AnalysisPhase in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that return AnalysisPhase
    + AnalysisPhaseVulnerabilitySuppressionAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseNvdCveAnalyzer.getAnalysisPhase() + +
    +          Returns the analysis phase that this analyzer should run in.
    + AnalysisPhaseJavaScriptAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseJarAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseHintAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseFileNameAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseFalsePositiveAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseDependencyBundlingAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseCpeSuppressionAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseCPEAnalyzer.getAnalysisPhase() + +
    +          Returns the analysis phase that this analyzer should run in.
    + AnalysisPhaseArchiveAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + AnalysisPhaseAnalyzer.getAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    +static AnalysisPhaseAnalysisPhase.valueOf(String name) + +
    +          Returns the enum constant of this type with the specified name.
    +static AnalysisPhase[]AnalysisPhase.values() + +
    +          Returns an array containing the constants of this enum type, in +the order they are declared.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html new file mode 100644 index 000000000..8bb55d872 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html @@ -0,0 +1,385 @@ + + + + + + + +Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Interface
    org.owasp.dependencycheck.analyzer.Analyzer

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use Analyzer
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. 
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    +  +

    + + + + + +
    +Uses of Analyzer in org.owasp.dependencycheck
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck that return types with arguments of type Analyzer
    + List<Analyzer>Engine.getAnalyzers() + +
    +          Returns a full list of all of the analyzers.
    + List<Analyzer>Engine.getAnalyzers(AnalysisPhase phase) + +
    +          Get the List of the analyzers for a specific phase of analysis.
    +  +

    + + + + + +
    +Uses of Analyzer in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in org.owasp.dependencycheck.analyzer that implement Analyzer
    + classAbstractAnalyzer + +
    +           
    + classAbstractSuppressionAnalyzer + +
    +          Abstract base suppression analyzer that contains methods for parsing the + suppression xml file.
    + classArchiveAnalyzer + +
    +          An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list.
    + classCPEAnalyzer + +
    +          CPEAnalyzer is a utility class that takes a project dependency and attempts + to discern if there is an associated CPE.
    + classCpeSuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    + classDependencyBundlingAnalyzer + +
    +          This analyzer ensures dependencies that should be grouped together, to + remove excess noise from the report, are grouped.
    + classFalsePositiveAnalyzer + +
    +          This analyzer attempts to remove some well known false positives - + specifically regarding the java runtime.
    + classFileNameAnalyzer + +
    +          Takes a dependency and analyzes the filename and determines the hashes.
    + classHintAnalyzer + +
    +           
    + classJarAnalyzer + +
    +          Used to load a JAR file and collect information that can be used to determine + the associated CPE.
    + classJavaScriptAnalyzer + +
    +          Used to load a JAR file and collect information that can be used to determine + the associated CPE.
    + classNvdCveAnalyzer + +
    +          NvdCveAnalyzer is a utility class that takes a project dependency and + attempts to discern if there is an associated CVEs.
    + classVulnerabilitySuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that return types with arguments of type Analyzer
    + Iterator<Analyzer>AnalyzerService.getAnalyzers() + +
    +          Returns an Iterator for all instances of the Analyzer interface.
    +  +

    + + + + + +
    +Uses of Analyzer in org.owasp.dependencycheck.reporting
    +  +

    + + + + + + + + +
    Constructor parameters in org.owasp.dependencycheck.reporting with type arguments of type Analyzer
    ReportGenerator(String applicationName, + List<Dependency> dependencies, + List<Analyzer> analyzers) + +
    +          Constructs a new ReportGenerator.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html new file mode 100644 index 000000000..d5e985567 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html @@ -0,0 +1,187 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AnalyzerService (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.AnalyzerService

    +
    + + + + + + + + + +
    +Packages that use AnalyzerService
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of AnalyzerService in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that return AnalyzerService
    +static AnalyzerServiceAnalyzerService.getInstance() + +
    +          Retrieve the singleton instance of AnalyzerService.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html new file mode 100644 index 000000000..8b6e6c32b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.ArchiveAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveExtractionException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveExtractionException.html new file mode 100644 index 000000000..0b5de6144 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveExtractionException.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.ArchiveExtractionException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.ArchiveExtractionException

    +
    +No usage of org.owasp.dependencycheck.analyzer.ArchiveExtractionException +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html new file mode 100644 index 000000000..121786ca2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.CPEAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.CPEAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.CPEAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..2f08f0325 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..1e30813fe --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html new file mode 100644 index 000000000..6f0604409 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html new file mode 100644 index 000000000..c36ea57a8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.FileNameAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.FileNameAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.FileNameAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html new file mode 100644 index 000000000..185f7b31a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.HintAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.HintAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.HintAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html new file mode 100644 index 000000000..114a769af --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html @@ -0,0 +1,208 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation

    +
    + + + + + + + + + +
    +Packages that use JarAnalyzer.ClassNameInformation
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of JarAnalyzer.ClassNameInformation in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.analyzer with type arguments of type JarAnalyzer.ClassNameInformation
    +protected  voidJarAnalyzer.analyzePackageNames(ArrayList<JarAnalyzer.ClassNameInformation> classNames, + Dependency dependency, + boolean addPackagesAsEvidence) + +
    +          Analyzes the path information of the classes contained within the + JarAnalyzer to try and determine possible vendor or product names.
    +protected  booleanJarAnalyzer.analyzePOM(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classes) + +
    +          Attempts to find a pom.xml within the JAR file.
    +protected  booleanJarAnalyzer.parseManifest(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classInformation) + +
    +          Reads the manifest from the JAR file and collects the entries.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html new file mode 100644 index 000000000..ef5a557e0 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.JarAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.JarAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html new file mode 100644 index 000000000..a8642fa12 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html new file mode 100644 index 000000000..e4b95b1fa --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.NvdCveAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.NvdCveAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..a9883e6e7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html new file mode 100644 index 000000000..f9ebad76a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html @@ -0,0 +1,96 @@ + + + + + + + +org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.analyzer + + + + +
    +Interfaces  + +
    +Analyzer
    + + + + + + +
    +Classes  + +
    +AbstractAnalyzer +
    +AbstractSuppressionAnalyzer +
    +AnalyzerService +
    +ArchiveAnalyzer +
    +CPEAnalyzer +
    +CpeSuppressionAnalyzer +
    +DependencyBundlingAnalyzer +
    +FalsePositiveAnalyzer +
    +FileNameAnalyzer +
    +HintAnalyzer +
    +JarAnalyzer +
    +JarAnalyzer.ClassNameInformation +
    +JavaScriptAnalyzer +
    +NvdCveAnalyzer +
    +VulnerabilitySuppressionAnalyzer
    + + + + + + +
    +Enums  + +
    +AnalysisPhase
    + + + + + + +
    +Exceptions  + +
    +AnalysisException +
    +ArchiveExtractionException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html new file mode 100644 index 000000000..2510e04fc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html @@ -0,0 +1,299 @@ + + + + + + + +org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.analyzer +

    + + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Interface Summary
    AnalyzerAn interface that defines an Analyzer that is used to identify Dependencies.
    +  + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    AbstractAnalyzer 
    AbstractSuppressionAnalyzerAbstract base suppression analyzer that contains methods for parsing the + suppression xml file.
    AnalyzerService 
    ArchiveAnalyzerAn analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list.
    CPEAnalyzerCPEAnalyzer is a utility class that takes a project dependency and attempts + to discern if there is an associated CPE.
    CpeSuppressionAnalyzerThe suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    DependencyBundlingAnalyzerThis analyzer ensures dependencies that should be grouped together, to + remove excess noise from the report, are grouped.
    FalsePositiveAnalyzerThis analyzer attempts to remove some well known false positives - + specifically regarding the java runtime.
    FileNameAnalyzerTakes a dependency and analyzes the filename and determines the hashes.
    HintAnalyzer 
    JarAnalyzerUsed to load a JAR file and collect information that can be used to determine + the associated CPE.
    JarAnalyzer.ClassNameInformationStores information about a class name.
    JavaScriptAnalyzerUsed to load a JAR file and collect information that can be used to determine + the associated CPE.
    NvdCveAnalyzerNvdCveAnalyzer is a utility class that takes a project dependency and + attempts to discern if there is an associated CVEs.
    VulnerabilitySuppressionAnalyzerThe suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    +  + +

    + + + + + + + + + +
    +Enum Summary
    AnalysisPhaseAn enumeration defining the phases of analysis.
    +  + +

    + + + + + + + + + + + + + +
    +Exception Summary
    AnalysisExceptionAn exception thrown when the analysis of a dependency fails.
    ArchiveExtractionExceptionAn exception thrown when files in an archive cannot be extracted.
    +  + +

    +

    +Package org.owasp.dependencycheck.analyzer Description +

    + +

    + + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html new file mode 100644 index 000000000..128fd8106 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html @@ -0,0 +1,187 @@ + + + + + + + +org.owasp.dependencycheck.analyzer Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.analyzer +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +

    +Interface Hierarchy +

    +
      +
    • org.owasp.dependencycheck.analyzer.Analyzer
    +

    +Enum Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html new file mode 100644 index 000000000..821ac488f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html @@ -0,0 +1,268 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.analyzer

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.analyzer
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. 
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.analyzer used by org.owasp.dependencycheck
    AnalysisPhase + +
    +          An enumeration defining the phases of analysis.
    Analyzer + +
    +          An interface that defines an Analyzer that is used to identify Dependencies.
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.analyzer used by org.owasp.dependencycheck.analyzer
    AbstractAnalyzer + +
    +           
    AbstractSuppressionAnalyzer + +
    +          Abstract base suppression analyzer that contains methods for parsing the + suppression xml file.
    AnalysisException + +
    +          An exception thrown when the analysis of a dependency fails.
    AnalysisPhase + +
    +          An enumeration defining the phases of analysis.
    Analyzer + +
    +          An interface that defines an Analyzer that is used to identify Dependencies.
    AnalyzerService + +
    +           
    JarAnalyzer.ClassNameInformation + +
    +          Stores information about a class name.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.analyzer used by org.owasp.dependencycheck.reporting
    Analyzer + +
    +          An interface that defines an Analyzer that is used to identify Dependencies.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html new file mode 100644 index 000000000..980b57c8f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html @@ -0,0 +1,329 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.Engine (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.Engine

    +
    + + + + + + + + + + + + + +
    +Packages that use Engine
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + +
    +Uses of Engine in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer with parameters of type Engine
    + voidVulnerabilitySuppressionAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +           
    + voidNvdCveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidJavaScriptAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidJarAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidHintAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          The HintAnalyzer uses knowledge about a dependency to add additional + information to help in identification of identifiers or vulnerabilities.
    + voidFileNameAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Collects information about the file name.
    + voidFalsePositiveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the dependencies and removes bad/incorrect CPE associations + based on various heuristics.
    + voidDependencyBundlingAnalyzer.analyze(Dependency ignore, + Engine engine) + +
    +          Analyzes a set of dependencies.
    + voidCpeSuppressionAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +           
    + voidCPEAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidArchiveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a given dependency.
    + voidAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    +  +

    + + + + + +
    +Uses of Engine in org.owasp.dependencycheck.utils
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.utils with parameters of type Engine
    +static voidFileUtils.extractFiles(File archive, + File extractTo, + Engine engine) + +
    +          Extracts the contents of an archive into the specified directory.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html new file mode 100644 index 000000000..3371c221f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html @@ -0,0 +1,305 @@ + + + + + + + +DirectoryLockException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.concurrency +
    +Class DirectoryLockException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.concurrency.DirectoryLockException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class DirectoryLockException
    extends Exception
    + + +

    +If thrown, indicates that a problem occurred when locking a directory. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    DirectoryLockException() + +
    +          Constructs a new Directory Lock Exception.
    DirectoryLockException(String msg) + +
    +          Constructs a new Directory Lock Exception.
    DirectoryLockException(String msg, + Throwable ex) + +
    +          Constructs a new Directory Lock Exception.
    DirectoryLockException(Throwable ex) + +
    +          Constructs a new Directory Lock Exception.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DirectoryLockException

    +
    +public DirectoryLockException()
    +
    +
    Constructs a new Directory Lock Exception. +

    +

    +
    + +

    +DirectoryLockException

    +
    +public DirectoryLockException(String msg)
    +
    +
    Constructs a new Directory Lock Exception. +

    +

    +
    Parameters:
    msg - the message describing the exception
    +
    +
    + +

    +DirectoryLockException

    +
    +public DirectoryLockException(Throwable ex)
    +
    +
    Constructs a new Directory Lock Exception. +

    +

    +
    Parameters:
    ex - the cause of the exception
    +
    +
    + +

    +DirectoryLockException

    +
    +public DirectoryLockException(String msg,
    +                              Throwable ex)
    +
    +
    Constructs a new Directory Lock Exception. +

    +

    +
    Parameters:
    msg - the message describing the exception
    ex - the cause of the exception
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html new file mode 100644 index 000000000..460435549 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html @@ -0,0 +1,548 @@ + + + + + + + +DirectorySpinLock (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.concurrency +
    +Class DirectorySpinLock

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.concurrency.DirectorySpinLock
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public class DirectorySpinLock
    extends Object
    implements Closeable
    + + +

    +Implements a spin lock on a given directory. If the lock cannot be obtained, + the process will "spin" waiting for an opportunity to obtain the lock + requested. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringLOCK_NAME + +
    +          The name of the lock file.
    +static intMAX_SPIN + +
    +          The maximum wait period used when attempting to obtain a lock.
    +  + + + + + + + + + + +
    +Constructor Summary
    DirectorySpinLock(File directory) + +
    +          Constructs a new spin lock on the given directory.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Releases any locks and closes the underlying channel.
    + longgetMaxWait() + +
    +          Get the maximum wait time, in seconds, that the spin lock will wait while + trying to obtain a lock.
    + voidobtainExclusiveLock() + +
    +          Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained.
    +protected  voidobtainLock(boolean shared) + +
    +          Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained.
    +protected  voidobtainLock(boolean shared, + long maxWait) + +
    +          Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained.
    + voidobtainSharedLock() + +
    +          Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained.
    + voidrelease() + +
    +          Releases the lock.
    + voidsetMaxWait(long maxWait) + +
    +          Set the maximum wait time, in seconds, that the spin lock will wait while + trying to obtain a lock.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +LOCK_NAME

    +
    +public static final String LOCK_NAME
    +
    +
    The name of the lock file. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +MAX_SPIN

    +
    +public static final int MAX_SPIN
    +
    +
    The maximum wait period used when attempting to obtain a lock. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +DirectorySpinLock

    +
    +public DirectorySpinLock(File directory)
    +                  throws InvalidDirectoryException,
    +                         DirectoryLockException
    +
    +
    Constructs a new spin lock on the given directory. +

    +

    +
    Parameters:
    directory - the directory to monitor/lock +
    Throws: +
    InvalidDirectoryException - thrown if there is an issue with the + directory provided +
    DirectoryLockException - thrown there is an issue obtaining a + handle to the lock file
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getMaxWait

    +
    +public long getMaxWait()
    +
    +
    Get the maximum wait time, in seconds, that the spin lock will wait while + trying to obtain a lock. +

    +

    +
    +
    +
    + +
    Returns:
    the number of seconds the spin lock will wait
    +
    +
    +
    + +

    +setMaxWait

    +
    +public void setMaxWait(long maxWait)
    +
    +
    Set the maximum wait time, in seconds, that the spin lock will wait while + trying to obtain a lock. +

    +

    +
    +
    +
    +
    Parameters:
    maxWait - the number of seconds the spin lock will wait
    +
    +
    +
    + +

    +obtainSharedLock

    +
    +public void obtainSharedLock()
    +                      throws DirectoryLockException
    +
    +
    Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained. This method may block for a few seconds if a lock + cannot be obtained. +

    +

    +
    +
    +
    + +
    Throws: +
    DirectoryLockException - thrown if there is an exception obtaining + the lock
    +
    +
    +
    + +

    +obtainExclusiveLock

    +
    +public void obtainExclusiveLock()
    +                         throws DirectoryLockException
    +
    +
    Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained. This method may block for a few seconds if a lock + cannot be obtained. +

    +

    +
    +
    +
    + +
    Throws: +
    DirectoryLockException - thrown if there is an exception obtaining + the lock
    +
    +
    +
    + +

    +obtainLock

    +
    +protected void obtainLock(boolean shared,
    +                          long maxWait)
    +                   throws DirectoryLockException
    +
    +
    Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained. This method may block for a few seconds if a lock cannot be + obtained. +

    +

    +
    +
    +
    +
    Parameters:
    shared - true if the lock is shared, otherwise false
    maxWait - the maximum time to wait, in seconds, while trying to + obtain the lock +
    Throws: +
    DirectoryLockException - thrown if there is an exception obtaining + the lock
    +
    +
    +
    + +

    +obtainLock

    +
    +protected void obtainLock(boolean shared)
    +                   throws DirectoryLockException
    +
    +
    Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained. This method may block for a few seconds if a lock cannot be + obtained. +

    +

    +
    +
    +
    +
    Parameters:
    shared - true if the lock is shared, otherwise false +
    Throws: +
    DirectoryLockException - thrown if there is an exception obtaining + the lock
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +           throws IOException
    +
    +
    Releases any locks and closes the underlying channel. +

    +

    +
    Specified by:
    close in interface Closeable
    +
    +
    + +
    Throws: +
    IOException - if an IO Exception occurs
    +
    +
    +
    + +

    +release

    +
    +public void release()
    +
    +
    Releases the lock. Any exceptions that are thrown by the underlying lock + during the release are ignored. +

    +

    +
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html new file mode 100644 index 000000000..562ad2135 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html @@ -0,0 +1,305 @@ + + + + + + + +InvalidDirectoryException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.concurrency +
    +Class InvalidDirectoryException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.concurrency.InvalidDirectoryException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class InvalidDirectoryException
    extends Exception
    + + +

    +If thrown, indicates that there is a problem with a directory. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    InvalidDirectoryException() + +
    +          Constructs a new Invalid Directory Exception.
    InvalidDirectoryException(String msg) + +
    +          Constructs a new Invalid Directory Exception.
    InvalidDirectoryException(String msg, + Throwable ex) + +
    +          Constructs a new Invalid Directory Exception.
    InvalidDirectoryException(Throwable ex) + +
    +          Constructs a new Invalid Directory Exception.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +InvalidDirectoryException

    +
    +public InvalidDirectoryException()
    +
    +
    Constructs a new Invalid Directory Exception. +

    +

    +
    + +

    +InvalidDirectoryException

    +
    +public InvalidDirectoryException(String msg)
    +
    +
    Constructs a new Invalid Directory Exception. +

    +

    +
    Parameters:
    msg - the message describing the exception
    +
    +
    + +

    +InvalidDirectoryException

    +
    +public InvalidDirectoryException(Throwable ex)
    +
    +
    Constructs a new Invalid Directory Exception. +

    +

    +
    Parameters:
    ex - the cause of the exception
    +
    +
    + +

    +InvalidDirectoryException

    +
    +public InvalidDirectoryException(String msg,
    +                                 Throwable ex)
    +
    +
    Constructs a new Invalid Directory Exception. +

    +

    +
    Parameters:
    msg - the message describing the exception
    ex - the cause of the exception
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html new file mode 100644 index 000000000..7cab5f869 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html @@ -0,0 +1,229 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.concurrency.DirectoryLockException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.concurrency.DirectoryLockException

    +
    + + + + + + + + + +
    +Packages that use DirectoryLockException
    org.owasp.dependencycheck.concurrency + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories. 
    +  +

    + + + + + +
    +Uses of DirectoryLockException in org.owasp.dependencycheck.concurrency
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.concurrency that throw DirectoryLockException
    + voidDirectorySpinLock.obtainExclusiveLock() + +
    +          Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained.
    +protected  voidDirectorySpinLock.obtainLock(boolean shared) + +
    +          Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained.
    +protected  voidDirectorySpinLock.obtainLock(boolean shared, + long maxWait) + +
    +          Attempts to obtain a lock; an exception is thrown if the lock could not + be obtained.
    + voidDirectorySpinLock.obtainSharedLock() + +
    +          Attempts to obtain an exclusive lock; an exception is thrown if the lock + could not be obtained.
    +  +

    + + + + + + + + +
    Constructors in org.owasp.dependencycheck.concurrency that throw DirectoryLockException
    DirectorySpinLock(File directory) + +
    +          Constructs a new spin lock on the given directory.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html new file mode 100644 index 000000000..71449c321 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.concurrency.DirectorySpinLock (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.concurrency.DirectorySpinLock

    +
    +No usage of org.owasp.dependencycheck.concurrency.DirectorySpinLock +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html new file mode 100644 index 000000000..03c89d1f7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html @@ -0,0 +1,184 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.concurrency.InvalidDirectoryException

    +
    + + + + + + + + + +
    +Packages that use InvalidDirectoryException
    org.owasp.dependencycheck.concurrency + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories. 
    +  +

    + + + + + +
    +Uses of InvalidDirectoryException in org.owasp.dependencycheck.concurrency
    +  +

    + + + + + + + + +
    Constructors in org.owasp.dependencycheck.concurrency that throw InvalidDirectoryException
    DirectorySpinLock(File directory) + +
    +          Constructs a new spin lock on the given directory.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html new file mode 100644 index 000000000..001ead093 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html @@ -0,0 +1,46 @@ + + + + + + + +org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.concurrency + + + + +
    +Classes  + +
    +DirectorySpinLock
    + + + + + + +
    +Exceptions  + +
    +DirectoryLockException +
    +InvalidDirectoryException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html new file mode 100644 index 000000000..e984798f8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html @@ -0,0 +1,203 @@ + + + + + + + +org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.concurrency +

    + + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories. +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Class Summary
    DirectorySpinLockImplements a spin lock on a given directory.
    +  + +

    + + + + + + + + + + + + + +
    +Exception Summary
    DirectoryLockExceptionIf thrown, indicates that a problem occurred when locking a directory.
    InvalidDirectoryExceptionIf thrown, indicates that there is a problem with a directory.
    +  + +

    +

    +Package org.owasp.dependencycheck.concurrency Description +

    + +

    + + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html new file mode 100644 index 000000000..2becec3de --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html @@ -0,0 +1,160 @@ + + + + + + + +org.owasp.dependencycheck.concurrency Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.concurrency +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html new file mode 100644 index 000000000..68dcca753 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.concurrency

    +
    + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.concurrency
    org.owasp.dependencycheck.concurrency + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories. 
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.concurrency used by org.owasp.dependencycheck.concurrency
    DirectoryLockException + +
    +          If thrown, indicates that a problem occurred when locking a directory.
    InvalidDirectoryException + +
    +          If thrown, indicates that there is a problem with a directory.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html new file mode 100644 index 000000000..71dcf51ab --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html @@ -0,0 +1,524 @@ + + + + + + + +BaseDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data +
    +Class BaseDB

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.BaseDB
    +
    +
    +
    Direct Known Subclasses:
    CveDB
    +
    +
    +
    +
    public class BaseDB
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringDB_SCHEMA_VERSION + +
    +          The version of the current DB Schema.
    +static StringDB_STRUCTURE_RESOURCE + +
    +          Resource location for SQL file used to create the database schema.
    +  + + + + + + + + + + +
    +Constructor Summary
    BaseDB() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Closes the DB4O database.
    + voidcloseResultSet(ResultSet rs) + +
    +          Closes the result set capturing and ignoring any SQLExceptions that + occur.
    + voidcloseStatement(Statement statement) + +
    +          Closes the given statement object ignoring any exceptions that occur.
    + voidcommit() + +
    +          Commits all completed transactions.
    +protected  voidfinalize() + +
    +          Cleans up the object and ensures that "close" has been called.
    +protected  ConnectiongetConnection() + +
    +          Returns the database connection.
    +static FilegetDataDirectory() + +
    +          Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory.
    +protected  intgetGeneratedKey(PreparedStatement statement) + +
    +          Returns the generated integer primary key for a newly inserted row.
    + voidopen() + +
    +          Opens the database connection.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +DB_STRUCTURE_RESOURCE

    +
    +public static final String DB_STRUCTURE_RESOURCE
    +
    +
    Resource location for SQL file used to create the database schema. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DB_SCHEMA_VERSION

    +
    +public static final String DB_SCHEMA_VERSION
    +
    +
    The version of the current DB Schema. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BaseDB

    +
    +public BaseDB()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getConnection

    +
    +protected Connection getConnection()
    +
    +
    Returns the database connection. +

    +

    + +
    Returns:
    the database connection
    +
    +
    +
    + +

    +open

    +
    +public void open()
    +          throws IOException,
    +                 SQLException,
    +                 DatabaseException,
    +                 ClassNotFoundException
    +
    +
    Opens the database connection. If the database does not exist, it will + create a new one. +

    +

    + +
    Throws: +
    IOException - thrown if there is an IO Exception +
    SQLException - thrown if there is a SQL Exception +
    DatabaseException - thrown if there is an error initializing a new + database +
    ClassNotFoundException - thrown if the h2 database driver cannot be + loaded
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the DB4O database. Close should be called on this object when it + is done being used. +

    +

    +
    +
    +
    +
    + +

    +commit

    +
    +public void commit()
    +            throws SQLException
    +
    +
    Commits all completed transactions. +

    +

    + +
    Throws: +
    SQLException - thrown if a SQL Exception occurs
    +
    +
    +
    + +

    +finalize

    +
    +protected void finalize()
    +                 throws Throwable
    +
    +
    Cleans up the object and ensures that "close" has been called. +

    +

    +
    Overrides:
    finalize in class Object
    +
    +
    + +
    Throws: +
    Throwable - thrown if there is a problem
    +
    +
    +
    + +

    +getDataDirectory

    +
    +public static File getDataDirectory()
    +                             throws IOException
    +
    +
    Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory. +

    +

    + +
    Returns:
    the data directory for this index. +
    Throws: +
    IOException - is thrown if an IOException occurs of course...
    +
    +
    +
    + +

    +getGeneratedKey

    +
    +protected int getGeneratedKey(PreparedStatement statement)
    +                       throws DatabaseException
    +
    +
    Returns the generated integer primary key for a newly inserted row. +

    +

    +
    Parameters:
    statement - a prepared statement that just executed an insert +
    Returns:
    a primary key +
    Throws: +
    DatabaseException - thrown if there is an exception obtaining the + key
    +
    +
    +
    + +

    +closeStatement

    +
    +public void closeStatement(Statement statement)
    +
    +
    Closes the given statement object ignoring any exceptions that occur. +

    +

    +
    Parameters:
    statement - a Statement object
    +
    +
    +
    + +

    +closeResultSet

    +
    +public void closeResultSet(ResultSet rs)
    +
    +
    Closes the result set capturing and ignoring any SQLExceptions that + occur. +

    +

    +
    Parameters:
    rs - a ResultSet to close
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html new file mode 100644 index 000000000..ae4f10512 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html @@ -0,0 +1,229 @@ + + + + + + + +CachedWebDataSource (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data +
    +Interface CachedWebDataSource

    +
    +
    All Known Implementing Classes:
    DatabaseUpdater
    +
    +
    +
    +
    public interface CachedWebDataSource
    + + +

    +Defines an Index who's data is retrieved from the Internet. This data can be + downloaded and the index updated. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + +
    +Method Summary
    + voidupdate() + +
    +          Determines if an update to the current index is needed, if it is the new + data is downloaded from the Internet and imported into the current Lucene + Index.
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +update

    +
    +void update()
    +            throws UpdateException
    +
    +
    Determines if an update to the current index is needed, if it is the new + data is downloaded from the Internet and imported into the current Lucene + Index. +

    +

    + +
    Throws: +
    UpdateException - is thrown if there is an exception updating the + index.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/NoDataException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/NoDataException.html new file mode 100644 index 000000000..7591cc4bb --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/NoDataException.html @@ -0,0 +1,306 @@ + + + + + + + +NoDataException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data +
    +Class NoDataException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.data.NoDataException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class NoDataException
    extends IOException
    + + +

    +An exception used when the data needed does not exist to perform analysis. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    NoDataException() + +
    +          Creates a new NoDataException.
    NoDataException(String msg) + +
    +          Creates a new NoDataException.
    NoDataException(String msg, + Throwable ex) + +
    +          Creates a new NoDataException.
    NoDataException(Throwable ex) + +
    +          Creates a new NoDataException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NoDataException

    +
    +public NoDataException()
    +
    +
    Creates a new NoDataException. +

    +

    +
    + +

    +NoDataException

    +
    +public NoDataException(String msg)
    +
    +
    Creates a new NoDataException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +NoDataException

    +
    +public NoDataException(Throwable ex)
    +
    +
    Creates a new NoDataException. +

    +

    +
    Parameters:
    ex - the cause of the exception.
    +
    +
    + +

    +NoDataException

    +
    +public NoDataException(String msg,
    +                       Throwable ex)
    +
    +
    Creates a new NoDataException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the exception.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html new file mode 100644 index 000000000..b555125b1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html @@ -0,0 +1,306 @@ + + + + + + + +UpdateException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data +
    +Class UpdateException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.data.UpdateException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class UpdateException
    extends IOException
    + + +

    +An exception used when an error occurs reading a setting. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    UpdateException() + +
    +          Creates a new UpdateException.
    UpdateException(String msg) + +
    +          Creates a new UpdateException.
    UpdateException(String msg, + Throwable ex) + +
    +          Creates a new UpdateException.
    UpdateException(Throwable ex) + +
    +          Creates a new UpdateException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +UpdateException

    +
    +public UpdateException()
    +
    +
    Creates a new UpdateException. +

    +

    +
    + +

    +UpdateException

    +
    +public UpdateException(String msg)
    +
    +
    Creates a new UpdateException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +UpdateException

    +
    +public UpdateException(Throwable ex)
    +
    +
    Creates a new UpdateException. +

    +

    +
    Parameters:
    ex - the cause of the update exception.
    +
    +
    + +

    +UpdateException

    +
    +public UpdateException(String msg,
    +                       Throwable ex)
    +
    +
    Creates a new UpdateException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the update exception.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html new file mode 100644 index 000000000..ac407e95f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html @@ -0,0 +1,251 @@ + + + + + + + +UpdateService (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data +
    +Class UpdateService

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.UpdateService
    +
    +
    +
    +
    public final class UpdateService
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Method Summary
    + Iterator<CachedWebDataSource>getDataSources() + +
    +          Returns an Iterator for all instances of the CachedWebDataSource + interface.
    +static UpdateServicegetInstance() + +
    +          Retrieve the singleton instance of UpdateService.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getInstance

    +
    +public static UpdateService getInstance()
    +
    +
    Retrieve the singleton instance of UpdateService. +

    +

    + +
    Returns:
    a singleton UpdateService.
    +
    +
    +
    + +

    +getDataSources

    +
    +public Iterator<CachedWebDataSource> getDataSources()
    +
    +
    Returns an Iterator for all instances of the CachedWebDataSource + interface. +

    +

    + +
    Returns:
    an iterator of CachedWebDataSource.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html new file mode 100644 index 000000000..2252ba3bc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.BaseDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.BaseDB

    +
    + + + + + + + + + +
    +Packages that use BaseDB
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    +  +

    + + + + + +
    +Uses of BaseDB in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Subclasses of BaseDB in org.owasp.dependencycheck.data.nvdcve
    + classCveDB + +
    +          The database holding information about the NVD CVE data.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html new file mode 100644 index 000000000..8d62b3e9b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html @@ -0,0 +1,220 @@ + + + + + + + +Uses of Interface org.owasp.dependencycheck.data.CachedWebDataSource (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Interface
    org.owasp.dependencycheck.data.CachedWebDataSource

    +
    + + + + + + + + + + + + + +
    +Packages that use CachedWebDataSource
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. 
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of CachedWebDataSource in org.owasp.dependencycheck.data
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data that return types with arguments of type CachedWebDataSource
    + Iterator<CachedWebDataSource>UpdateService.getDataSources() + +
    +          Returns an Iterator for all instances of the CachedWebDataSource + interface.
    +  +

    + + + + + +
    +Uses of CachedWebDataSource in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + +
    Classes in org.owasp.dependencycheck.data.update that implement CachedWebDataSource
    + classDatabaseUpdater + +
    +          Class responsible for updating the CPE and NVDCVE data stores.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/NoDataException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/NoDataException.html new file mode 100644 index 000000000..6c3558e66 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/NoDataException.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.NoDataException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.NoDataException

    +
    +No usage of org.owasp.dependencycheck.data.NoDataException +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html new file mode 100644 index 000000000..e5b5680b7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html @@ -0,0 +1,331 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.UpdateException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.UpdateException

    +
    + + + + + + + + + + + + + +
    +Packages that use UpdateException
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. 
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of UpdateException in org.owasp.dependencycheck.data
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data that throw UpdateException
    + voidCachedWebDataSource.update() + +
    +          Determines if an update to the current index is needed, if it is the new + data is downloaded from the Internet and imported into the current Lucene + Index.
    +  +

    + + + + + +
    +Uses of UpdateException in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that throw UpdateException
    +static UpdateTaskUpdateTaskFactory.getUpdateTask() + +
    +          Constructs the appropriate update task based on configuration.
    +protected  voidAbstractUpdateTask.openDataStores() + +
    +          Opens the CVE and CPE data stores.
    + voidDataStoreMetaInfo.save(NvdCveInfo updatedValue) + +
    +          Writes a properties file containing the last updated date to the + VULNERABLE_CPE directory.
    + voidUpdateTask.update() + +
    +          Updates the data store to the latest version.
    + voidStandardUpdateTask.update() + +
    +          Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    + voidDatabaseUpdater.update() + +
    +          Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    + voidBatchUpdateTask.update() + +
    +          Deprecated. Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    +abstract  voidAbstractUpdateTask.update() + +
    +          Updates the data store to the latest version.
    +protected  UpdateableStandardUpdateTask.updatesNeeded() + +
    +          Determines if the index needs to be updated.
    + UpdateableBatchUpdateTask.updatesNeeded() + +
    +          Deprecated. Determines if the index needs to be updated.
    +protected abstract  UpdateableAbstractUpdateTask.updatesNeeded() + +
    +          Determines if the index needs to be updated.
    +  +

    + + + + + + + + + + + + + + +
    Constructors in org.owasp.dependencycheck.data.update that throw UpdateException
    AbstractUpdateTask(DataStoreMetaInfo properties) + +
    +          Initializes the AbstractUpdateTask.
    BatchUpdateTask(DataStoreMetaInfo properties) + +
    +          Deprecated. Constructs a new BatchUpdateTask.
    StandardUpdateTask(DataStoreMetaInfo properties) + +
    +          Constructs a new Standard Update Task.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html new file mode 100644 index 000000000..c88bdcc15 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.UpdateService (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.UpdateService

    +
    + + + + + + + + + +
    +Packages that use UpdateService
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. 
    +  +

    + + + + + +
    +Uses of UpdateService in org.owasp.dependencycheck.data
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data that return UpdateService
    +static UpdateServiceUpdateService.getInstance() + +
    +          Retrieve the singleton instance of UpdateService.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html new file mode 100644 index 000000000..05784578e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html @@ -0,0 +1,435 @@ + + + + + + + +CpeMemoryIndex (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class CpeMemoryIndex

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cpe.CpeMemoryIndex
    +
    +
    +
    +
    public final class CpeMemoryIndex
    extends Object
    + + +

    +An in memory lucene index that contains the vendor/product combinations from + the CPE (application) identifiers within the NVD CVE data. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Closes the CPE Index.
    + org.apache.lucene.document.DocumentgetDocument(int documentId) + +
    +          Retrieves a document from the Index.
    +static CpeMemoryIndexgetInstance() + +
    +          Gets the singleton instance of the CpeMemoryIndex.
    + booleanisOpen() + +
    +          returns whether or not the index is open.
    + intnumDocs() + +
    +          Returns the number of CPE entries stored in the index.
    + voidopen(CveDB cve) + +
    +          Creates and loads data into an in memory index.
    + voidsaveEntry(String vendor, + String product, + org.apache.lucene.index.IndexWriter indexWriter) + +
    +          Saves a CPE IndexEntry into the Lucene index.
    + org.apache.lucene.search.TopDocssearch(org.apache.lucene.search.Query query, + int maxQueryResults) + +
    +          Searches the index using the given query.
    + org.apache.lucene.search.TopDocssearch(String searchString, + int maxQueryResults) + +
    +          Searches the index using the given search string.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getInstance

    +
    +public static CpeMemoryIndex getInstance()
    +
    +
    Gets the singleton instance of the CpeMemoryIndex. +

    +

    + +
    Returns:
    the instance of the CpeMemoryIndex
    +
    +
    +
    + +

    +open

    +
    +public void open(CveDB cve)
    +          throws IndexException
    +
    +
    Creates and loads data into an in memory index. +

    +

    +
    Parameters:
    cve - the data source to retrieve the cpe data +
    Throws: +
    IndexException - thrown if there is an error creating the index
    +
    +
    +
    + +

    +isOpen

    +
    +public boolean isOpen()
    +
    +
    returns whether or not the index is open. +

    +

    + +
    Returns:
    whether or not the index is open
    +
    +
    +
    + +

    +saveEntry

    +
    +public void saveEntry(String vendor,
    +                      String product,
    +                      org.apache.lucene.index.IndexWriter indexWriter)
    +               throws org.apache.lucene.index.CorruptIndexException,
    +                      IOException
    +
    +
    Saves a CPE IndexEntry into the Lucene index. +

    +

    +
    Parameters:
    vendor - the vendor to index
    product - the product to index
    indexWriter - the index writer to write the entry into +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the index is corrupt +
    IOException - is thrown if an IOException occurs
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the CPE Index. +

    +

    +
    +
    +
    +
    + +

    +search

    +
    +public org.apache.lucene.search.TopDocs search(String searchString,
    +                                               int maxQueryResults)
    +                                        throws org.apache.lucene.queryparser.classic.ParseException,
    +                                               IOException
    +
    +
    Searches the index using the given search string. +

    +

    +
    Parameters:
    searchString - the query text
    maxQueryResults - the maximum number of documents to return +
    Returns:
    the TopDocs found by the search +
    Throws: +
    org.apache.lucene.queryparser.classic.ParseException - thrown when the searchString is invalid +
    IOException - is thrown if there is an issue with the underlying + Index
    +
    +
    +
    + +

    +search

    +
    +public org.apache.lucene.search.TopDocs search(org.apache.lucene.search.Query query,
    +                                               int maxQueryResults)
    +                                        throws org.apache.lucene.index.CorruptIndexException,
    +                                               IOException
    +
    +
    Searches the index using the given query. +

    +

    +
    Parameters:
    query - the query used to search the index
    maxQueryResults - the max number of results to return +
    Returns:
    the TopDocs found be the query +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - thrown if the Index is corrupt +
    IOException - thrown if there is an IOException
    +
    +
    +
    + +

    +getDocument

    +
    +public org.apache.lucene.document.Document getDocument(int documentId)
    +                                                throws IOException
    +
    +
    Retrieves a document from the Index. +

    +

    +
    Parameters:
    documentId - the id of the document to retrieve +
    Returns:
    the Document +
    Throws: +
    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
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html new file mode 100644 index 000000000..43121be3f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html @@ -0,0 +1,312 @@ + + + + + + + +Fields (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class Fields

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cpe.Fields
    +
    +
    +
    +
    public abstract class Fields
    extends Object
    + + +

    +Fields is a collection of field names used within the Lucene index for CPE + entries. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringDOCUMENT_KEY + +
    +          The key for the name document id.
    +static StringPRODUCT + +
    +          The key for the product field.
    +static StringVENDOR + +
    +          The key for the vendor field.
    +  + + + + + + + + + + +
    +Constructor Summary
    Fields() + +
    +           
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +DOCUMENT_KEY

    +
    +public static final String DOCUMENT_KEY
    +
    +
    The key for the name document id. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VENDOR

    +
    +public static final String VENDOR
    +
    +
    The key for the vendor field. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PRODUCT

    +
    +public static final String PRODUCT
    +
    +
    The key for the product field. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Fields

    +
    +public Fields()
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html new file mode 100644 index 000000000..beab7c10a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html @@ -0,0 +1,550 @@ + + + + + + + +IndexEntry (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class IndexEntry

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cpe.IndexEntry
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    Direct Known Subclasses:
    VulnerableSoftware
    +
    +
    +
    +
    public class IndexEntry
    extends Object
    implements Serializable
    + + +

    +A CPE entry containing the name, vendor, product, and version. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    IndexEntry() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + booleanequals(Object obj) + +
    +           
    + StringgetDocumentId() + +
    +          Get the value of documentId.
    + StringgetProduct() + +
    +          Get the value of product.
    + floatgetSearchScore() + +
    +          Get the value of searchScore.
    + StringgetVendor() + +
    +          Get the value of vendor.
    + inthashCode() + +
    +           
    + voidparseName(String cpeName) + +
    +          Parses a name attribute value, from the cpe.xml, into its + corresponding parts: vendor, product.
    + voidsetDocumentId(String documentId) + +
    +          Set the value of documentId.
    + voidsetProduct(String product) + +
    +          Set the value of product.
    + voidsetSearchScore(float searchScore) + +
    +          Set the value of searchScore.
    + voidsetVendor(String vendor) + +
    +          Set the value of vendor.
    + StringtoString() + +
    +          Standard implementation of toString showing vendor and product.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +IndexEntry

    +
    +public IndexEntry()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDocumentId

    +
    +public String getDocumentId()
    +
    +
    Get the value of documentId. +

    +

    +
    +
    +
    + +
    Returns:
    the value of documentId
    +
    +
    +
    + +

    +setDocumentId

    +
    +public void setDocumentId(String documentId)
    +
    +
    Set the value of documentId. +

    +

    +
    +
    +
    +
    Parameters:
    documentId - new value of documentId
    +
    +
    +
    + +

    +getVendor

    +
    +public String getVendor()
    +
    +
    Get the value of vendor. +

    +

    +
    +
    +
    + +
    Returns:
    the value of vendor
    +
    +
    +
    + +

    +setVendor

    +
    +public void setVendor(String vendor)
    +
    +
    Set the value of vendor. +

    +

    +
    +
    +
    +
    Parameters:
    vendor - new value of vendor
    +
    +
    +
    + +

    +getProduct

    +
    +public String getProduct()
    +
    +
    Get the value of product. +

    +

    +
    +
    +
    + +
    Returns:
    the value of product
    +
    +
    +
    + +

    +setProduct

    +
    +public void setProduct(String product)
    +
    +
    Set the value of product. +

    +

    +
    +
    +
    +
    Parameters:
    product - new value of product
    +
    +
    +
    + +

    +getSearchScore

    +
    +public float getSearchScore()
    +
    +
    Get the value of searchScore. +

    +

    +
    +
    +
    + +
    Returns:
    the value of searchScore
    +
    +
    +
    + +

    +setSearchScore

    +
    +public void setSearchScore(float searchScore)
    +
    +
    Set the value of searchScore. +

    +

    +
    +
    +
    +
    Parameters:
    searchScore - new value of searchScore
    +
    +
    +
    + +

    +parseName

    +
    +public void parseName(String cpeName)
    +               throws UnsupportedEncodingException
    +
    +

    Parses a name attribute value, from the cpe.xml, into its + corresponding parts: vendor, product.

    +

    Example:

    + nbsp;nbsp;nbsp;cpe:/a:apache:struts:1.1:rc2 + +

    Results in:

    • Vendor: apache
    • Product: struts
    • +
    +

    If it is necessary to parse the CPE into more parts (i.e. to include + version and revision) then you should use the + VulnerableSoftware.parseName(). +

    +

    +
    +
    +
    +
    Parameters:
    cpeName - the cpe name +
    Throws: +
    UnsupportedEncodingException - should never be thrown...
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    +
    Overrides:
    hashCode in class Object
    +
    +
    +
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    +
    Overrides:
    equals in class Object
    +
    +
    +
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Standard implementation of toString showing vendor and product. +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    the string representation of the object
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html new file mode 100644 index 000000000..96ff9908d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html @@ -0,0 +1,305 @@ + + + + + + + +IndexException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class IndexException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.data.cpe.IndexException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class IndexException
    extends Exception
    + + +

    +An exception thrown when the there is an issue using the in-memory CPE Index. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    IndexException() + +
    +          Creates a new IndexException.
    IndexException(String msg) + +
    +          Creates a new IndexException.
    IndexException(String msg, + Throwable ex) + +
    +          Creates a new IndexException.
    IndexException(Throwable ex) + +
    +          Creates a new IndexException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +IndexException

    +
    +public IndexException()
    +
    +
    Creates a new IndexException. +

    +

    +
    + +

    +IndexException

    +
    +public IndexException(String msg)
    +
    +
    Creates a new IndexException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +IndexException

    +
    +public IndexException(Throwable ex)
    +
    +
    Creates a new IndexException. +

    +

    +
    Parameters:
    ex - the cause of the failure.
    +
    +
    + +

    +IndexException

    +
    +public IndexException(String msg,
    +                      Throwable ex)
    +
    +
    Creates a new IndexException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html new file mode 100644 index 000000000..f731a03ba --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.CpeMemoryIndex

    +
    + + + + + + + + + +
    +Packages that use CpeMemoryIndex
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    +  +

    + + + + + +
    +Uses of CpeMemoryIndex in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that return CpeMemoryIndex
    +static CpeMemoryIndexCpeMemoryIndex.getInstance() + +
    +          Gets the singleton instance of the CpeMemoryIndex.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html new file mode 100644 index 000000000..7623dd598 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.Fields (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.Fields

    +
    +No usage of org.owasp.dependencycheck.data.cpe.Fields +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html new file mode 100644 index 000000000..abc2cd6df --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html @@ -0,0 +1,225 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.IndexEntry

    +
    + + + + + + + + + + + + + +
    +Packages that use IndexEntry
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of IndexEntry in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that return types with arguments of type IndexEntry
    +protected  List<IndexEntry>CPEAnalyzer.searchCPE(String vendor, + String product, + Set<String> vendorWeightings, + Set<String> productWeightings) + +
    +          Searches the Lucene CPE index to identify possible CPE entries + associated with the supplied vendor, product, and version.
    +  +

    + + + + + +
    +Uses of IndexEntry in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Subclasses of IndexEntry in org.owasp.dependencycheck.dependency
    + classVulnerableSoftware + +
    +          A record containing information about vulnerable software.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html new file mode 100644 index 000000000..3480b4859 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.IndexException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.IndexException

    +
    + + + + + + + + + +
    +Packages that use IndexException
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    +  +

    + + + + + +
    +Uses of IndexException in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that throw IndexException
    + voidCpeMemoryIndex.open(CveDB cve) + +
    +          Creates and loads data into an in memory index.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html new file mode 100644 index 000000000..9373f3cd7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -0,0 +1,48 @@ + + + + + + + +org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.cpe + + + + +
    +Classes  + +
    +CpeMemoryIndex +
    +Fields +
    +IndexEntry
    + + + + + + +
    +Exceptions  + +
    +IndexException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html new file mode 100644 index 000000000..602a80ac9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -0,0 +1,209 @@ + + + + + + + +org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data.cpe +

    + + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + +
    +Class Summary
    CpeMemoryIndexAn in memory lucene index that contains the vendor/product combinations from + the CPE (application) identifiers within the NVD CVE data.
    FieldsFields is a collection of field names used within the Lucene index for CPE + entries.
    IndexEntryA CPE entry containing the name, vendor, product, and version.
    +  + +

    + + + + + + + + + +
    +Exception Summary
    IndexExceptionAn exception thrown when the there is an issue using the in-memory CPE Index.
    +  + +

    +

    +Package org.owasp.dependencycheck.data.cpe Description +

    + +

    + + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html new file mode 100644 index 000000000..a4eeb12f3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html @@ -0,0 +1,160 @@ + + + + + + + +org.owasp.dependencycheck.data.cpe Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data.cpe +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html new file mode 100644 index 000000000..e90bbe864 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html @@ -0,0 +1,232 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.cpe

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.cpe
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.cpe used by org.owasp.dependencycheck.analyzer
    IndexEntry + +
    +          A CPE entry containing the name, vendor, product, and version.
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.cpe used by org.owasp.dependencycheck.data.cpe
    CpeMemoryIndex + +
    +          An in memory lucene index that contains the vendor/product combinations from + the CPE (application) identifiers within the NVD CVE data.
    IndexException + +
    +          An exception thrown when the there is an issue using the in-memory CPE Index.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.cpe used by org.owasp.dependencycheck.dependency
    IndexEntry + +
    +          A CPE entry containing the name, vendor, product, and version.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html new file mode 100644 index 000000000..0709cb940 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html @@ -0,0 +1,227 @@ + + + + + + + +CweDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cwe +
    +Class CweDB

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cwe.CweDB
    +
    +
    +
    +
    public final class CweDB
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + +
    +Method Summary
    +static StringgetCweName(String cweId) + +
    +          Returns the full CWE name from the CWE ID.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getCweName

    +
    +public static String getCweName(String cweId)
    +
    +

    Returns the full CWE name from the CWE ID.

    +

    +

    +
    Parameters:
    cweId - the CWE ID +
    Returns:
    the full name of the CWE
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html new file mode 100644 index 000000000..352ceb84d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html @@ -0,0 +1,308 @@ + + + + + + + +CweHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cwe +
    +Class CweHandler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.data.cwe.CweHandler
    +
    +
    +
    All Implemented Interfaces:
    ContentHandler, DTDHandler, EntityResolver, ErrorHandler
    +
    +
    +
    +
    public class CweHandler
    extends org.xml.sax.helpers.DefaultHandler
    + + +

    +A SAX Handler that will parse the CWE XML. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    CweHandler() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + HashMap<String,String>getCwe() + +
    +          Returns the HashMap of CWE entries (CWE-ID, Full CWE Name).
    + voidstartElement(String uri, + String localName, + String qName, + Attributes attributes) + +
    +           
    + + + + + + + +
    Methods inherited from class org.xml.sax.helpers.DefaultHandler
    characters, endDocument, endElement, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CweHandler

    +
    +public CweHandler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getCwe

    +
    +public HashMap<String,String> getCwe()
    +
    +
    Returns the HashMap of CWE entries (CWE-ID, Full CWE Name). +

    +

    + +
    Returns:
    a HashMap of CWE entries
    +
    +
    +
    + +

    +startElement

    +
    +public void startElement(String uri,
    +                         String localName,
    +                         String qName,
    +                         Attributes attributes)
    +                  throws SAXException
    +
    +
    +
    Specified by:
    startElement in interface ContentHandler
    Overrides:
    startElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    + +
    Throws: +
    SAXException
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html new file mode 100644 index 000000000..c2cae01c6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cwe.CweDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cwe.CweDB

    +
    +No usage of org.owasp.dependencycheck.data.cwe.CweDB +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html new file mode 100644 index 000000000..dbe80ec9a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cwe.CweHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cwe.CweHandler

    +
    +No usage of org.owasp.dependencycheck.data.cwe.CweHandler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html new file mode 100644 index 000000000..91916121f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -0,0 +1,35 @@ + + + + + + + +org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.cwe + + + + +
    +Classes  + +
    +CweDB +
    +CweHandler
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html new file mode 100644 index 000000000..8be419406 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -0,0 +1,189 @@ + + + + + + + +org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data.cwe +

    + + + org.owasp.dependencycheck.data.cwe + + + Contains classes for working with the CWE Database. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + +
    +Class Summary
    CweDB 
    CweHandlerA SAX Handler that will parse the CWE XML.
    +  + +

    +

    +Package org.owasp.dependencycheck.data.cwe Description +

    + +

    + + + org.owasp.dependencycheck.data.cwe + + + Contains classes for working with the CWE Database. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html new file mode 100644 index 000000000..3d82d8a76 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html @@ -0,0 +1,157 @@ + + + + + + + +org.owasp.dependencycheck.data.cwe Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data.cwe +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html new file mode 100644 index 000000000..3d4dc1a0c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.cwe

    +
    +No usage of org.owasp.dependencycheck.data.cwe +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html new file mode 100644 index 000000000..4b514c59b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html @@ -0,0 +1,386 @@ + + + + + + + +AbstractTokenizingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class AbstractTokenizingFilter

    +
    +java.lang.Object
    +  extended by org.apache.lucene.util.AttributeSource
    +      extended by org.apache.lucene.analysis.TokenStream
    +          extended by org.apache.lucene.analysis.TokenFilter
    +              extended by org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    Direct Known Subclasses:
    UrlTokenizingFilter, VersionTokenizingFilter
    +
    +
    +
    +
    public abstract class AbstractTokenizingFilter
    extends org.apache.lucene.analysis.TokenFilter
    + + +

    +An abstract tokenizing filter that can be used as the base for a tokenizing + filter. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
    org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.TokenFilter
    input
    +  + + + + + + + + + + +
    +Constructor Summary
    AbstractTokenizingFilter(org.apache.lucene.analysis.TokenStream stream) + +
    +          Constructs a new AbstractTokenizingFilter.
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  booleanaddTerm() + +
    +          Adds a term, if one exists, from the tokens collection.
    +protected  org.apache.lucene.analysis.tokenattributes.CharTermAttributegetTermAtt() + +
    +          Gets the CharTermAttribute.
    +protected  LinkedList<String>getTokens() + +
    +          Gets the list of tokens.
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.TokenFilter
    close, end, reset
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.TokenStream
    incrementToken
    + + + + + + + +
    Methods inherited from class org.apache.lucene.util.AttributeSource
    addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AbstractTokenizingFilter

    +
    +public AbstractTokenizingFilter(org.apache.lucene.analysis.TokenStream stream)
    +
    +
    Constructs a new AbstractTokenizingFilter. +

    +

    +
    Parameters:
    stream - the TokenStream that this filter will process
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getTermAtt

    +
    +protected org.apache.lucene.analysis.tokenattributes.CharTermAttribute getTermAtt()
    +
    +
    Gets the CharTermAttribute. +

    +

    + +
    Returns:
    the CharTermAttribute
    +
    +
    +
    + +

    +getTokens

    +
    +protected LinkedList<String> getTokens()
    +
    +
    Gets the list of tokens. +

    +

    + +
    Returns:
    the list of tokens
    +
    +
    +
    + +

    +addTerm

    +
    +protected boolean addTerm()
    +
    +
    Adds a term, if one exists, from the tokens collection. +

    +

    + +
    Returns:
    whether or not a new term was added
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html new file mode 100644 index 000000000..1a5b47c68 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html @@ -0,0 +1,367 @@ + + + + + + + +AlphaNumericTokenizer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class AlphaNumericTokenizer

    +
    +java.lang.Object
    +  extended by org.apache.lucene.util.AttributeSource
    +      extended by org.apache.lucene.analysis.TokenStream
    +          extended by org.apache.lucene.analysis.Tokenizer
    +              extended by org.apache.lucene.analysis.util.CharTokenizer
    +                  extended by org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public class AlphaNumericTokenizer
    extends org.apache.lucene.analysis.util.CharTokenizer
    + + +

    +Tokenizes the input breaking it into tokens when non-alpha/numeric characters + are found. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
    org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.Tokenizer
    input
    +  + + + + + + + + + + + + + +
    +Constructor Summary
    AlphaNumericTokenizer(org.apache.lucene.util.Version matchVersion, + org.apache.lucene.util.AttributeSource.AttributeFactory factory, + Reader in) + +
    +          Constructs a new AlphaNumericTokenizer.
    AlphaNumericTokenizer(org.apache.lucene.util.Version matchVersion, + Reader in) + +
    +          Constructs a new AlphaNumericTokenizer.
    +  + + + + + + + + + + + +
    +Method Summary
    +protected  booleanisTokenChar(int c) + +
    +          Determines if the char passed in is part of a token.
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.util.CharTokenizer
    end, incrementToken, normalize, reset
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.Tokenizer
    close, correctOffset, setReader
    + + + + + + + +
    Methods inherited from class org.apache.lucene.util.AttributeSource
    addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AlphaNumericTokenizer

    +
    +public AlphaNumericTokenizer(org.apache.lucene.util.Version matchVersion,
    +                             Reader in)
    +
    +
    Constructs a new AlphaNumericTokenizer. +

    +

    +
    Parameters:
    matchVersion - the lucene version
    in - the Reader
    +
    +
    + +

    +AlphaNumericTokenizer

    +
    +public AlphaNumericTokenizer(org.apache.lucene.util.Version matchVersion,
    +                             org.apache.lucene.util.AttributeSource.AttributeFactory factory,
    +                             Reader in)
    +
    +
    Constructs a new AlphaNumericTokenizer. +

    +

    +
    Parameters:
    matchVersion - the lucene version
    factory - the AttributeFactory
    in - the Reader
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isTokenChar

    +
    +protected boolean isTokenChar(int c)
    +
    +
    Determines if the char passed in is part of a token. +

    +

    +
    Specified by:
    isTokenChar in class org.apache.lucene.analysis.util.CharTokenizer
    +
    +
    +
    Parameters:
    c - the char being analyzed +
    Returns:
    true if the char is a letter or digit, otherwise false
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html new file mode 100644 index 000000000..99b924f80 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html @@ -0,0 +1,329 @@ + + + + + + + +DependencySimilarity (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class DependencySimilarity

    +
    +java.lang.Object
    +  extended by org.apache.lucene.search.similarities.Similarity
    +      extended by org.apache.lucene.search.similarities.TFIDFSimilarity
    +          extended by org.apache.lucene.search.similarities.DefaultSimilarity
    +              extended by org.owasp.dependencycheck.data.lucene.DependencySimilarity
    +
    +
    +
    +
    public class DependencySimilarity
    extends org.apache.lucene.search.similarities.DefaultSimilarity
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.search.similarities.Similarity
    org.apache.lucene.search.similarities.Similarity.SimScorer, org.apache.lucene.search.similarities.Similarity.SimWeight
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.search.similarities.DefaultSimilarity
    discountOverlaps
    +  + + + + + + + + + + +
    +Constructor Summary
    DependencySimilarity() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + floatidf(long docFreq, + long numDocs) + +
    +          Override the default idf implementation so that frequency within all + document is ignored.
    + + + + + + + +
    Methods inherited from class org.apache.lucene.search.similarities.DefaultSimilarity
    coord, decodeNormValue, encodeNormValue, getDiscountOverlaps, lengthNorm, queryNorm, scorePayload, setDiscountOverlaps, sloppyFreq, tf, toString
    + + + + + + + +
    Methods inherited from class org.apache.lucene.search.similarities.TFIDFSimilarity
    computeNorm, computeWeight, idfExplain, idfExplain, simScorer
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DependencySimilarity

    +
    +public DependencySimilarity()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +idf

    +
    +public float idf(long docFreq,
    +                 long numDocs)
    +
    +

    Override the default idf implementation so that frequency within all + document is ignored.

    + + See this + article for more details. +

    +

    +
    Overrides:
    idf in class org.apache.lucene.search.similarities.DefaultSimilarity
    +
    +
    +
    Parameters:
    docFreq - - the number of documents which contain the term
    numDocs - - the total number of documents in the collection +
    Returns:
    1
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html new file mode 100644 index 000000000..72f12c9cf --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html @@ -0,0 +1,325 @@ + + + + + + + +FieldAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class FieldAnalyzer

    +
    +java.lang.Object
    +  extended by org.apache.lucene.analysis.Analyzer
    +      extended by org.owasp.dependencycheck.data.lucene.FieldAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public class FieldAnalyzer
    extends org.apache.lucene.analysis.Analyzer
    + + +

    +

    A Lucene Analyzer that utilizes the WhitespaceTokenizer, + WordDelimiterFilter, LowerCaseFilter, and StopFilter. The intended purpose of + this Analyzer is to index the CPE fields vendor and product.

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.analysis.Analyzer
    org.apache.lucene.analysis.Analyzer.GlobalReuseStrategy, org.apache.lucene.analysis.Analyzer.PerFieldReuseStrategy, org.apache.lucene.analysis.Analyzer.ReuseStrategy, org.apache.lucene.analysis.Analyzer.TokenStreamComponents
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.Analyzer
    GLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY
    +  + + + + + + + + + + +
    +Constructor Summary
    FieldAnalyzer(org.apache.lucene.util.Version version) + +
    +          Creates a new FieldAnalyzer.
    +  + + + + + + + + + + + +
    +Method Summary
    +protected  org.apache.lucene.analysis.Analyzer.TokenStreamComponentscreateComponents(String fieldName, + Reader reader) + +
    +          Creates the TokenStreamComponents
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.Analyzer
    close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, initReader, tokenStream, tokenStream
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +FieldAnalyzer

    +
    +public FieldAnalyzer(org.apache.lucene.util.Version version)
    +
    +
    Creates a new FieldAnalyzer. +

    +

    +
    Parameters:
    version - the Lucene version
    +
    + + + + + + + + +
    +Method Detail
    + +

    +createComponents

    +
    +protected org.apache.lucene.analysis.Analyzer.TokenStreamComponents createComponents(String fieldName,
    +                                                                                     Reader reader)
    +
    +
    Creates the TokenStreamComponents +

    +

    +
    Specified by:
    createComponents in class org.apache.lucene.analysis.Analyzer
    +
    +
    +
    Parameters:
    fieldName - the field name being analyzed
    reader - the reader containing the input +
    Returns:
    the TokenStreamComponents
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html new file mode 100644 index 000000000..9366ebc99 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html @@ -0,0 +1,298 @@ + + + + + + + +LuceneUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class LuceneUtils

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.lucene.LuceneUtils
    +
    +
    +
    +
    public final class LuceneUtils
    extends Object
    + + +

    +

    Lucene utils is a set of utilize written to make constructing Lucene + queries simpler.

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Field Summary
    +static org.apache.lucene.util.VersionCURRENT_VERSION + +
    +          The current version of Lucene being used.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +static voidappendEscapedLuceneQuery(StringBuilder buf, + CharSequence text) + +
    +          Appends the text to the supplied StringBuilder escaping Lucene control + characters in the process.
    +static StringescapeLuceneQuery(CharSequence text) + +
    +          Escapes the text passed in so that it is treated as data instead of + control characters.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +CURRENT_VERSION

    +
    +public static final org.apache.lucene.util.Version CURRENT_VERSION
    +
    +
    The current version of Lucene being used. Declaring this one place so an + upgrade doesn't require hunting through the code base. +

    +

    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +appendEscapedLuceneQuery

    +
    +public static void appendEscapedLuceneQuery(StringBuilder buf,
    +                                            CharSequence text)
    +
    +
    Appends the text to the supplied StringBuilder escaping Lucene control + characters in the process. +

    +

    +
    Parameters:
    buf - a StringBuilder to append the escaped text to
    text - the data to be escaped
    +
    +
    +
    + +

    +escapeLuceneQuery

    +
    +public static String escapeLuceneQuery(CharSequence text)
    +
    +
    Escapes the text passed in so that it is treated as data instead of + control characters. +

    +

    +
    Parameters:
    text - data to be escaped +
    Returns:
    the escaped text.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html new file mode 100644 index 000000000..135c0d9a3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html @@ -0,0 +1,348 @@ + + + + + + + +SearchFieldAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class SearchFieldAnalyzer

    +
    +java.lang.Object
    +  extended by org.apache.lucene.analysis.Analyzer
    +      extended by org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public class SearchFieldAnalyzer
    extends org.apache.lucene.analysis.Analyzer
    + + +

    +A Lucene field analyzer used to analyzer queries against the CPE data. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.analysis.Analyzer
    org.apache.lucene.analysis.Analyzer.GlobalReuseStrategy, org.apache.lucene.analysis.Analyzer.PerFieldReuseStrategy, org.apache.lucene.analysis.Analyzer.ReuseStrategy, org.apache.lucene.analysis.Analyzer.TokenStreamComponents
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.Analyzer
    GLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY
    +  + + + + + + + + + + +
    +Constructor Summary
    SearchFieldAnalyzer(org.apache.lucene.util.Version version) + +
    +          Constructs a new SearchFieldAnalyzer.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclear() + +
    +          Resets the analyzer and clears any internal state data that may have + been left-over from previous uses of the analyzer.
    +protected  org.apache.lucene.analysis.Analyzer.TokenStreamComponentscreateComponents(String fieldName, + Reader reader) + +
    +          Creates a the TokenStreamComponents used to analyze the stream.
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.Analyzer
    close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, initReader, tokenStream, tokenStream
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SearchFieldAnalyzer

    +
    +public SearchFieldAnalyzer(org.apache.lucene.util.Version version)
    +
    +
    Constructs a new SearchFieldAnalyzer. +

    +

    +
    Parameters:
    version - the Lucene version
    +
    + + + + + + + + +
    +Method Detail
    + +

    +createComponents

    +
    +protected org.apache.lucene.analysis.Analyzer.TokenStreamComponents createComponents(String fieldName,
    +                                                                                     Reader reader)
    +
    +
    Creates a the TokenStreamComponents used to analyze the stream. +

    +

    +
    Specified by:
    createComponents in class org.apache.lucene.analysis.Analyzer
    +
    +
    +
    Parameters:
    fieldName - the field that this lucene analyzer will process
    reader - a reader containing the tokens +
    Returns:
    the token stream filter chain
    +
    +
    +
    + +

    +clear

    +
    +public void clear()
    +
    +

    Resets the analyzer and clears any internal state data that may have + been left-over from previous uses of the analyzer.

    +

    If this analyzer is re-used this method must be called between + uses.

    +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html new file mode 100644 index 000000000..a4d9a71de --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html @@ -0,0 +1,327 @@ + + + + + + + +SearchVersionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class SearchVersionAnalyzer

    +
    +java.lang.Object
    +  extended by org.apache.lucene.analysis.Analyzer
    +      extended by org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +Deprecated. version information is no longer stored in lucene +

    +

    +
    @Deprecated
    +public class SearchVersionAnalyzer
    extends org.apache.lucene.analysis.Analyzer
    + + +

    +SearchVersionAnalyzer is a Lucene Analyzer used to analyze version + information. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.analysis.Analyzer
    org.apache.lucene.analysis.Analyzer.GlobalReuseStrategy, org.apache.lucene.analysis.Analyzer.PerFieldReuseStrategy, org.apache.lucene.analysis.Analyzer.ReuseStrategy, org.apache.lucene.analysis.Analyzer.TokenStreamComponents
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.Analyzer
    GLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY
    +  + + + + + + + + + + +
    +Constructor Summary
    SearchVersionAnalyzer(org.apache.lucene.util.Version version) + +
    +          Deprecated. Creates a new SearchVersionAnalyzer.
    +  + + + + + + + + + + + +
    +Method Summary
    +protected  org.apache.lucene.analysis.Analyzer.TokenStreamComponentscreateComponents(String fieldName, + Reader reader) + +
    +          Deprecated. Creates the TokenStreamComponents
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.Analyzer
    close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, initReader, tokenStream, tokenStream
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SearchVersionAnalyzer

    +
    +public SearchVersionAnalyzer(org.apache.lucene.util.Version version)
    +
    +
    Deprecated. 
    Creates a new SearchVersionAnalyzer. +

    +

    +
    Parameters:
    version - the Lucene version
    +
    + + + + + + + + +
    +Method Detail
    + +

    +createComponents

    +
    +protected org.apache.lucene.analysis.Analyzer.TokenStreamComponents createComponents(String fieldName,
    +                                                                                     Reader reader)
    +
    +
    Deprecated. 
    Creates the TokenStreamComponents +

    +

    +
    Specified by:
    createComponents in class org.apache.lucene.analysis.Analyzer
    +
    +
    +
    Parameters:
    fieldName - the field name being analyzed
    reader - the reader containing the input +
    Returns:
    the TokenStreamComponents
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..4091026d7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html @@ -0,0 +1,411 @@ + + + + + + + +TokenPairConcatenatingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class TokenPairConcatenatingFilter

    +
    +java.lang.Object
    +  extended by org.apache.lucene.util.AttributeSource
    +      extended by org.apache.lucene.analysis.TokenStream
    +          extended by org.apache.lucene.analysis.TokenFilter
    +              extended by org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public final class TokenPairConcatenatingFilter
    extends org.apache.lucene.analysis.TokenFilter
    + + +

    +

    Takes a TokenStream and adds additional tokens by concatenating pairs of + words.

    +

    Example: "Spring Framework Core" -> "Spring SpringFramework + Framework FrameworkCore Core".

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
    org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.TokenFilter
    input
    +  + + + + + + + + + + +
    +Constructor Summary
    TokenPairConcatenatingFilter(org.apache.lucene.analysis.TokenStream stream) + +
    +          Constructs a new TokenPairConcatenatingFilter.
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclear() + +
    +          Resets the Filter and clears any internal state data that may have + been left-over from previous uses of the Filter.
    +protected  StringgetPreviousWord() + +
    +          Returns the previous word.
    +protected  LinkedList<String>getWords() + +
    +          Returns the words list.
    + booleanincrementToken() + +
    +          Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token.
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.TokenFilter
    close, end, reset
    + + + + + + + +
    Methods inherited from class org.apache.lucene.util.AttributeSource
    addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +TokenPairConcatenatingFilter

    +
    +public TokenPairConcatenatingFilter(org.apache.lucene.analysis.TokenStream stream)
    +
    +
    Constructs a new TokenPairConcatenatingFilter. +

    +

    +
    Parameters:
    stream - the TokenStream that this filter will process
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPreviousWord

    +
    +protected String getPreviousWord()
    +
    +
    Returns the previous word. This is needed in the test cases. +

    +

    + +
    Returns:
    te previous word
    +
    +
    +
    + +

    +getWords

    +
    +protected LinkedList<String> getWords()
    +
    +
    Returns the words list. This is needed in the test cases. +

    +

    + +
    Returns:
    the words list
    +
    +
    +
    + +

    +incrementToken

    +
    +public boolean incrementToken()
    +                       throws IOException
    +
    +
    Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token. +

    +

    +
    Specified by:
    incrementToken in class org.apache.lucene.analysis.TokenStream
    +
    +
    + +
    Returns:
    whether or not we have hit the end of the TokenStream +
    Throws: +
    IOException - is thrown when an IOException occurs
    +
    +
    +
    + +

    +clear

    +
    +public void clear()
    +
    +

    Resets the Filter and clears any internal state data that may have + been left-over from previous uses of the Filter.

    +

    If this Filter is re-used this method must be called between + uses.

    +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html new file mode 100644 index 000000000..171610c2f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html @@ -0,0 +1,352 @@ + + + + + + + +UrlTokenizingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class UrlTokenizingFilter

    +
    +java.lang.Object
    +  extended by org.apache.lucene.util.AttributeSource
    +      extended by org.apache.lucene.analysis.TokenStream
    +          extended by org.apache.lucene.analysis.TokenFilter
    +              extended by org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter
    +                  extended by org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public final class UrlTokenizingFilter
    extends AbstractTokenizingFilter
    + + +

    +

    Takes a TokenStream and splits or adds tokens to correctly index version + numbers.

    +

    Example: "3.0.0.RELEASE" -> "3 3.0 3.0.0 RELEASE + 3.0.0.RELEASE".

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
    org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.TokenFilter
    input
    +  + + + + + + + + + + +
    +Constructor Summary
    UrlTokenizingFilter(org.apache.lucene.analysis.TokenStream stream) + +
    +          Constructs a new VersionTokenizingFilter.
    +  + + + + + + + + + + + +
    +Method Summary
    + booleanincrementToken() + +
    +          Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter
    addTerm, getTermAtt, getTokens
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.TokenFilter
    close, end, reset
    + + + + + + + +
    Methods inherited from class org.apache.lucene.util.AttributeSource
    addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +UrlTokenizingFilter

    +
    +public UrlTokenizingFilter(org.apache.lucene.analysis.TokenStream stream)
    +
    +
    Constructs a new VersionTokenizingFilter. +

    +

    +
    Parameters:
    stream - the TokenStream that this filter will process
    +
    + + + + + + + + +
    +Method Detail
    + +

    +incrementToken

    +
    +public boolean incrementToken()
    +                       throws IOException
    +
    +
    Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token. +

    +

    +
    Specified by:
    incrementToken in class org.apache.lucene.analysis.TokenStream
    +
    +
    + +
    Returns:
    whether or not we have hit the end of the TokenStream +
    Throws: +
    IOException - is thrown when an IOException occurs
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html new file mode 100644 index 000000000..28922d917 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html @@ -0,0 +1,326 @@ + + + + + + + +VersionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class VersionAnalyzer

    +
    +java.lang.Object
    +  extended by org.apache.lucene.analysis.Analyzer
    +      extended by org.owasp.dependencycheck.data.lucene.VersionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +Deprecated. version information is no longer stored in lucene +

    +

    +
    @Deprecated
    +public class VersionAnalyzer
    extends org.apache.lucene.analysis.Analyzer
    + + +

    +VersionAnalyzer is a Lucene Analyzer used to analyze version information. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.analysis.Analyzer
    org.apache.lucene.analysis.Analyzer.GlobalReuseStrategy, org.apache.lucene.analysis.Analyzer.PerFieldReuseStrategy, org.apache.lucene.analysis.Analyzer.ReuseStrategy, org.apache.lucene.analysis.Analyzer.TokenStreamComponents
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.Analyzer
    GLOBAL_REUSE_STRATEGY, PER_FIELD_REUSE_STRATEGY
    +  + + + + + + + + + + +
    +Constructor Summary
    VersionAnalyzer(org.apache.lucene.util.Version version) + +
    +          Deprecated. Creates a new VersionAnalyzer.
    +  + + + + + + + + + + + +
    +Method Summary
    +protected  org.apache.lucene.analysis.Analyzer.TokenStreamComponentscreateComponents(String fieldName, + Reader reader) + +
    +          Deprecated. Creates the TokenStreamComponents
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.Analyzer
    close, getOffsetGap, getPositionIncrementGap, getReuseStrategy, initReader, tokenStream, tokenStream
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VersionAnalyzer

    +
    +public VersionAnalyzer(org.apache.lucene.util.Version version)
    +
    +
    Deprecated. 
    Creates a new VersionAnalyzer. +

    +

    +
    Parameters:
    version - the Lucene version
    +
    + + + + + + + + +
    +Method Detail
    + +

    +createComponents

    +
    +protected org.apache.lucene.analysis.Analyzer.TokenStreamComponents createComponents(String fieldName,
    +                                                                                     Reader reader)
    +
    +
    Deprecated. 
    Creates the TokenStreamComponents +

    +

    +
    Specified by:
    createComponents in class org.apache.lucene.analysis.Analyzer
    +
    +
    +
    Parameters:
    fieldName - the field name being analyzed
    reader - the reader containing the input +
    Returns:
    the TokenStreamComponents
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html new file mode 100644 index 000000000..ae63776eb --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html @@ -0,0 +1,355 @@ + + + + + + + +VersionTokenizingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class VersionTokenizingFilter

    +
    +java.lang.Object
    +  extended by org.apache.lucene.util.AttributeSource
    +      extended by org.apache.lucene.analysis.TokenStream
    +          extended by org.apache.lucene.analysis.TokenFilter
    +              extended by org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter
    +                  extended by org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +Deprecated. version information is no longer stored in lucene +

    +

    +
    @Deprecated
    +public final class VersionTokenizingFilter
    extends AbstractTokenizingFilter
    + + +

    +

    Takes a TokenStream and splits or adds tokens to correctly index version + numbers.

    +

    Example: "3.0.0.RELEASE" -> "3 3.0 3.0.0 RELEASE + 3.0.0.RELEASE".

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Nested Class Summary
    + + + + + + + +
    Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
    org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State
    +  + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.apache.lucene.analysis.TokenFilter
    input
    +  + + + + + + + + + + +
    +Constructor Summary
    VersionTokenizingFilter(org.apache.lucene.analysis.TokenStream stream) + +
    +          Deprecated. Constructs a new VersionTokenizingFilter.
    +  + + + + + + + + + + + +
    +Method Summary
    + booleanincrementToken() + +
    +          Deprecated. Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter
    addTerm, getTermAtt, getTokens
    + + + + + + + +
    Methods inherited from class org.apache.lucene.analysis.TokenFilter
    close, end, reset
    + + + + + + + +
    Methods inherited from class org.apache.lucene.util.AttributeSource
    addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VersionTokenizingFilter

    +
    +public VersionTokenizingFilter(org.apache.lucene.analysis.TokenStream stream)
    +
    +
    Deprecated. 
    Constructs a new VersionTokenizingFilter. +

    +

    +
    Parameters:
    stream - the TokenStream that this filter will process
    +
    + + + + + + + + +
    +Method Detail
    + +

    +incrementToken

    +
    +public boolean incrementToken()
    +                       throws IOException
    +
    +
    Deprecated. 
    Increments the underlying TokenStream and sets CharTermAttributes to + construct an expanded set of tokens by concatenating tokens with the + previous token. +

    +

    +
    Specified by:
    incrementToken in class org.apache.lucene.analysis.TokenStream
    +
    +
    + +
    Returns:
    whether or not we have hit the end of the TokenStream +
    Throws: +
    IOException - is thrown when an IOException occurs
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html new file mode 100644 index 000000000..1fab06477 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html @@ -0,0 +1,195 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter

    +
    + + + + + + + + + +
    +Packages that use AbstractTokenizingFilter
    org.owasp.dependencycheck.data.lucene + + org.owasp.dependencycheck.data.lucene + + + Contains classes used to work with the Lucene Indexes. 
    +  +

    + + + + + +
    +Uses of AbstractTokenizingFilter in org.owasp.dependencycheck.data.lucene
    +  +

    + + + + + + + + + + + + + +
    Subclasses of AbstractTokenizingFilter in org.owasp.dependencycheck.data.lucene
    + classUrlTokenizingFilter + +
    +          Takes a TokenStream and splits or adds tokens to correctly index version + numbers.
    + classVersionTokenizingFilter + +
    +          Deprecated. version information is no longer stored in lucene
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html new file mode 100644 index 000000000..beefd5d68 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer

    +
    +No usage of org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html new file mode 100644 index 000000000..d72a91192 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.DependencySimilarity (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.DependencySimilarity

    +
    +No usage of org.owasp.dependencycheck.data.lucene.DependencySimilarity +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html new file mode 100644 index 000000000..20120aa9e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.FieldAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.FieldAnalyzer

    +
    +No usage of org.owasp.dependencycheck.data.lucene.FieldAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html new file mode 100644 index 000000000..150ca058e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.LuceneUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.LuceneUtils

    +
    +No usage of org.owasp.dependencycheck.data.lucene.LuceneUtils +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html new file mode 100644 index 000000000..482a16ee6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer

    +
    +No usage of org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html new file mode 100644 index 000000000..fd20037c4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer

    +
    +No usage of org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..240ece4a6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter

    +
    +No usage of org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html new file mode 100644 index 000000000..f770fd392 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter

    +
    +No usage of org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html new file mode 100644 index 000000000..2a622dbc4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.VersionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.VersionAnalyzer

    +
    +No usage of org.owasp.dependencycheck.data.lucene.VersionAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html new file mode 100644 index 000000000..c1dd33510 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter

    +
    +No usage of org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html new file mode 100644 index 000000000..a21968c48 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -0,0 +1,53 @@ + + + + + + + +org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.lucene + + + + +
    +Classes  + +
    +AbstractTokenizingFilter +
    +AlphaNumericTokenizer +
    +DependencySimilarity +
    +FieldAnalyzer +
    +LuceneUtils +
    +SearchFieldAnalyzer +
    +SearchVersionAnalyzer +
    +TokenPairConcatenatingFilter +
    +UrlTokenizingFilter +
    +VersionAnalyzer +
    +VersionTokenizingFilter
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html new file mode 100644 index 000000000..2510d1b47 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -0,0 +1,231 @@ + + + + + + + +org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data.lucene +

    + + + org.owasp.dependencycheck.data.lucene + + + Contains classes used to work with the Lucene Indexes. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    AbstractTokenizingFilterAn abstract tokenizing filter that can be used as the base for a tokenizing + filter.
    AlphaNumericTokenizerTokenizes the input breaking it into tokens when non-alpha/numeric characters + are found.
    DependencySimilarity 
    FieldAnalyzerA Lucene Analyzer that utilizes the WhitespaceTokenizer, + WordDelimiterFilter, LowerCaseFilter, and StopFilter.
    LuceneUtilsLucene utils is a set of utilize written to make constructing Lucene + queries simpler.
    SearchFieldAnalyzerA Lucene field analyzer used to analyzer queries against the CPE data.
    SearchVersionAnalyzerDeprecated. version information is no longer stored in lucene
    TokenPairConcatenatingFilterTakes a TokenStream and adds additional tokens by concatenating pairs of + words.
    UrlTokenizingFilterTakes a TokenStream and splits or adds tokens to correctly index version + numbers.
    VersionAnalyzerDeprecated. version information is no longer stored in lucene
    VersionTokenizingFilterDeprecated. version information is no longer stored in lucene
    +  + +

    +

    +Package org.owasp.dependencycheck.data.lucene Description +

    + +

    + + + org.owasp.dependencycheck.data.lucene + + + Contains classes used to work with the Lucene Indexes. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html new file mode 100644 index 000000000..441f68899 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html @@ -0,0 +1,176 @@ + + + + + + + +org.owasp.dependencycheck.data.lucene Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data.lucene +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html new file mode 100644 index 000000000..906d18aa5 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html @@ -0,0 +1,177 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.lucene

    +
    + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.lucene
    org.owasp.dependencycheck.data.lucene + + org.owasp.dependencycheck.data.lucene + + + Contains classes used to work with the Lucene Indexes. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.lucene used by org.owasp.dependencycheck.data.lucene
    AbstractTokenizingFilter + +
    +          An abstract tokenizing filter that can be used as the base for a tokenizing + filter.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html new file mode 100644 index 000000000..60fd98b4f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html @@ -0,0 +1,394 @@ + + + + + + + +CveDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class CveDB

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.BaseDB
    +      extended by org.owasp.dependencycheck.data.nvdcve.CveDB
    +
    +
    +
    +
    public class CveDB
    extends BaseDB
    + + +

    +The database holding information about the NVD CVE data. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class org.owasp.dependencycheck.data.BaseDB
    DB_SCHEMA_VERSION, DB_STRUCTURE_RESOURCE
    +  + + + + + + + + + + +
    +Constructor Summary
    CveDB() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidcleanupDatabase() + +
    +          It is possible that orphaned rows may be generated during database + updates.
    + Set<VulnerableSoftware>getCPEs(String vendor, + String product) + +
    +          Searches the CPE entries in the database and retrieves all entries for a + given vendor and product combination.
    + ResultSetgetVendorProductList() + +
    +          Returns the entire list of vendor/product combinations.
    + List<Vulnerability>getVulnerabilities(String cpeStr) + +
    +          Retrieves the vulnerabilities associated with the specified CPE.
    + voidupdateVulnerability(Vulnerability vuln) + +
    +          Updates the vulnerability within the database.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.BaseDB
    close, closeResultSet, closeStatement, commit, finalize, getConnection, getDataDirectory, getGeneratedKey, open
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CveDB

    +
    +public CveDB()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getCPEs

    +
    +public Set<VulnerableSoftware> getCPEs(String vendor,
    +                                       String product)
    +
    +
    Searches the CPE entries in the database and retrieves all entries for a + given vendor and product combination. The returned list will include all + versions of the product that are registered in the NVD CVE data. +

    +

    +
    Parameters:
    vendor - the identified vendor name of the dependency being analyzed
    product - the identified name of the product of the dependency being + analyzed +
    Returns:
    a set of vulnerable software
    +
    +
    +
    + +

    +getVendorProductList

    +
    +public ResultSet getVendorProductList()
    +
    +
    Returns the entire list of vendor/product combinations. +

    +

    + +
    Returns:
    the entire list of vendor/product combinations.
    +
    +
    +
    + +

    +getVulnerabilities

    +
    +public List<Vulnerability> getVulnerabilities(String cpeStr)
    +                                       throws DatabaseException
    +
    +
    Retrieves the vulnerabilities associated with the specified CPE. +

    +

    +
    Parameters:
    cpeStr - the CPE name +
    Returns:
    a list of Vulnerabilities +
    Throws: +
    DatabaseException - thrown if there is an exception retrieving data
    +
    +
    +
    + +

    +updateVulnerability

    +
    +public void updateVulnerability(Vulnerability vuln)
    +                         throws DatabaseException
    +
    +
    Updates the vulnerability within the database. If the vulnerability does + not exist it will be added. +

    +

    +
    Parameters:
    vuln - the vulnerability to add to the database +
    Throws: +
    DatabaseException - is thrown if the database
    +
    +
    +
    + +

    +cleanupDatabase

    +
    +public void cleanupDatabase()
    +
    +
    It is possible that orphaned rows may be generated during database + updates. This should be called after all updates have been completed to + ensure orphan entries are removed. +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html new file mode 100644 index 000000000..a5f7a1999 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html @@ -0,0 +1,289 @@ + + + + + + + +DatabaseException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class DatabaseException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.data.nvdcve.DatabaseException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class DatabaseException
    extends Exception
    + + +

    +An exception thrown if an operation against the database fails. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    DatabaseException(String msg) + +
    +          Creates an DatabaseException.
    DatabaseException(String msg, + Throwable ex) + +
    +          Creates an DatabaseException.
    DatabaseException(Throwable ex) + +
    +          Creates an DatabaseException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DatabaseException

    +
    +public DatabaseException(String msg)
    +
    +
    Creates an DatabaseException. +

    +

    +
    Parameters:
    msg - the exception message
    +
    +
    + +

    +DatabaseException

    +
    +public DatabaseException(Throwable ex)
    +
    +
    Creates an DatabaseException. +

    +

    +
    Parameters:
    ex - the cause of the exception
    +
    +
    + +

    +DatabaseException

    +
    +public DatabaseException(String msg,
    +                         Throwable ex)
    +
    +
    Creates an DatabaseException. +

    +

    +
    Parameters:
    msg - the exception message
    ex - the cause of the exception
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html new file mode 100644 index 000000000..a49df987b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html @@ -0,0 +1,272 @@ + + + + + + + +InvalidDataException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class InvalidDataException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.data.nvdcve.InvalidDataException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class InvalidDataException
    extends Exception
    + + +

    +An InvalidDataDataException is a generic exception used when trying to load + the nvd cve meta data. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + +
    +Constructor Summary
    InvalidDataException(String msg) + +
    +          Creates an InvalidDataException.
    InvalidDataException(String msg, + Exception ex) + +
    +          Creates an InvalidDataException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +InvalidDataException

    +
    +public InvalidDataException(String msg)
    +
    +
    Creates an InvalidDataException. +

    +

    +
    Parameters:
    msg - the exception message
    +
    +
    + +

    +InvalidDataException

    +
    +public InvalidDataException(String msg,
    +                            Exception ex)
    +
    +
    Creates an InvalidDataException. +

    +

    +
    Parameters:
    msg - the exception message
    ex - the cause of the exception
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html new file mode 100644 index 000000000..9379c214b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html @@ -0,0 +1,515 @@ + + + + + + + +NvdCve12Handler.Element (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class NvdCve12Handler.Element

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element
    +
    +
    +
    Enclosing class:
    NvdCve12Handler
    +
    +
    +
    +
    protected static class NvdCve12Handler.Element
    extends Object
    + + +

    +A simple class to maintain information about the current element while + parsing the NVD CVE XML. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringENTRY + +
    +          A node type in the NVD CVE Schema 1.2.
    +static StringNVD + +
    +          A node type in the NVD CVE Schema 1.2.
    +static StringPROD + +
    +          A node type in the NVD CVE Schema 1.2.
    +static StringVERS + +
    +          A node type in the NVD CVE Schema 1.2.
    +static StringVULN_SOFTWARE + +
    +          A node type in the NVD CVE Schema 1.2.
    +  + + + + + + + + + + + +
    +Constructor Summary
    +protected NvdCve12Handler.Element() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetNode() + +
    +          Gets the value of node.
    + booleanisEntryNode() + +
    +          Checks if the handler is at the ENTRY node.
    + booleanisNVDNode() + +
    +          Checks if the handler is at the NVD node.
    + booleanisProdNode() + +
    +          Checks if the handler is at the PROD node.
    + booleanisVersNode() + +
    +          Checks if the handler is at the VERS node.
    + booleanisVulnSoftwareNode() + +
    +          Checks if the handler is at the VULN_SOFTWARE node.
    + voidsetNode(String node) + +
    +          Sets the value of node.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +NVD

    +
    +public static final String NVD
    +
    +
    A node type in the NVD CVE Schema 1.2. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +ENTRY

    +
    +public static final String ENTRY
    +
    +
    A node type in the NVD CVE Schema 1.2. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_SOFTWARE

    +
    +public static final String VULN_SOFTWARE
    +
    +
    A node type in the NVD CVE Schema 1.2. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROD

    +
    +public static final String PROD
    +
    +
    A node type in the NVD CVE Schema 1.2. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VERS

    +
    +public static final String VERS
    +
    +
    A node type in the NVD CVE Schema 1.2. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +NvdCve12Handler.Element

    +
    +protected NvdCve12Handler.Element()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getNode

    +
    +public String getNode()
    +
    +
    Gets the value of node. +

    +

    + +
    Returns:
    the value of node
    +
    +
    +
    + +

    +setNode

    +
    +public void setNode(String node)
    +
    +
    Sets the value of node. +

    +

    +
    Parameters:
    node - new value of node
    +
    +
    +
    + +

    +isNVDNode

    +
    +public boolean isNVDNode()
    +
    +
    Checks if the handler is at the NVD node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isEntryNode

    +
    +public boolean isEntryNode()
    +
    +
    Checks if the handler is at the ENTRY node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnSoftwareNode

    +
    +public boolean isVulnSoftwareNode()
    +
    +
    Checks if the handler is at the VULN_SOFTWARE node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isProdNode

    +
    +public boolean isProdNode()
    +
    +
    Checks if the handler is at the PROD node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVersNode

    +
    +public boolean isVersNode()
    +
    +
    Checks if the handler is at the VERS node. +

    +

    + +
    Returns:
    true or false
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html new file mode 100644 index 000000000..4a14646da --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html @@ -0,0 +1,359 @@ + + + + + + + +NvdCve12Handler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class NvdCve12Handler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler
    +
    +
    +
    All Implemented Interfaces:
    ContentHandler, DTDHandler, EntityResolver, ErrorHandler
    +
    +
    +
    +
    public class NvdCve12Handler
    extends org.xml.sax.helpers.DefaultHandler
    + + +

    +A SAX Handler that will parse the NVD CVE XML (schema version 1.2). This + parses the xml and retrieves a listing of CPEs that have previous versions + specified. The previous version information is not in the 2.0 version of the + schema and is useful to ensure accurate identification (or at least + complete). +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +protected static classNvdCve12Handler.Element + +
    +          A simple class to maintain information about the current element while + parsing the NVD CVE XML.
    +  + + + + + + + + + + +
    +Constructor Summary
    NvdCve12Handler() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidendElement(String uri, + String localName, + String qName) + +
    +           
    + Map<String,List<VulnerableSoftware>>getVulnerabilities() + +
    +          Get the value of vulnerabilities.
    + voidstartElement(String uri, + String localName, + String qName, + Attributes attributes) + +
    +           
    + + + + + + + +
    Methods inherited from class org.xml.sax.helpers.DefaultHandler
    characters, endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NvdCve12Handler

    +
    +public NvdCve12Handler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getVulnerabilities

    +
    +public Map<String,List<VulnerableSoftware>> getVulnerabilities()
    +
    +
    Get the value of vulnerabilities. +

    +

    + +
    Returns:
    the value of vulnerabilities
    +
    +
    +
    + +

    +startElement

    +
    +public void startElement(String uri,
    +                         String localName,
    +                         String qName,
    +                         Attributes attributes)
    +                  throws SAXException
    +
    +
    +
    Specified by:
    startElement in interface ContentHandler
    Overrides:
    startElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    + +
    Throws: +
    SAXException
    +
    +
    +
    + +

    +endElement

    +
    +public void endElement(String uri,
    +                       String localName,
    +                       String qName)
    +                throws SAXException
    +
    +
    +
    Specified by:
    endElement in interface ContentHandler
    Overrides:
    endElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    + +
    Throws: +
    SAXException
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html new file mode 100644 index 000000000..8d5eeeae7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html @@ -0,0 +1,935 @@ + + + + + + + +NvdCve20Handler.Element (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class NvdCve20Handler.Element

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element
    +
    +
    +
    Enclosing class:
    NvdCve20Handler
    +
    +
    +
    +
    protected static class NvdCve20Handler.Element
    extends Object
    + + +

    +A simple class to maintain information about the current element while + parsing the NVD CVE XML. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringCVSS_ACCESS_COMPLEXITY + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringCVSS_ACCESS_VECTOR + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringCVSS_AUTHENTICATION + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringCVSS_AVAILABILITY_IMPACT + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringCVSS_CONFIDENTIALITY_IMPACT + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringCVSS_INTEGRITY_IMPACT + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringCVSS_SCORE + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringENTRY + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringNVD + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringVULN_CWE + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringVULN_PRODUCT + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringVULN_REFERENCE + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringVULN_REFERENCES + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringVULN_SOURCE + +
    +          A node type in the NVD CVE Schema 2.0
    +static StringVULN_SUMMARY + +
    +          A node type in the NVD CVE Schema 2.0
    +  + + + + + + + + + + + +
    +Constructor Summary
    +protected NvdCve20Handler.Element() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetNode() + +
    +          Gets the value of node.
    + booleanisCVSSAccessComplexityNode() + +
    +          Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node.
    + booleanisCVSSAccessVectorNode() + +
    +          Checks if the handler is at the CVSS_ACCESS_VECTOR node.
    + booleanisCVSSAuthenticationNode() + +
    +          Checks if the handler is at the CVSS_AUTHENTICATION node.
    + booleanisCVSSAvailabilityImpactNode() + +
    +          Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node.
    + booleanisCVSSConfidentialityImpactNode() + +
    +          Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node.
    + booleanisCVSSIntegrityImpactNode() + +
    +          Checks if the handler is at the CVSS_INTEGRITY_IMPACT node.
    + booleanisCVSSScoreNode() + +
    +          Checks if the handler is at the CVSS_SCORE node.
    + booleanisEntryNode() + +
    +          Checks if the handler is at the ENTRY node.
    + booleanisNVDNode() + +
    +          Checks if the handler is at the NVD node.
    + booleanisVulnCWENode() + +
    +          Checks if the handler is at the VULN_CWE node.
    + booleanisVulnProductNode() + +
    +          Checks if the handler is at the VULN_PRODUCT node.
    + booleanisVulnReferenceNode() + +
    +          Checks if the handler is at the REFERENCE node.
    + booleanisVulnReferencesNode() + +
    +          Checks if the handler is at the REFERENCES node.
    + booleanisVulnSourceNode() + +
    +          Checks if the handler is at the VULN_SOURCE node.
    + booleanisVulnSummaryNode() + +
    +          Checks if the handler is at the VULN_SUMMARY node.
    + voidsetNode(String node) + +
    +          Sets the value of node.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +NVD

    +
    +public static final String NVD
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +ENTRY

    +
    +public static final String ENTRY
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_PRODUCT

    +
    +public static final String VULN_PRODUCT
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_REFERENCES

    +
    +public static final String VULN_REFERENCES
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_SOURCE

    +
    +public static final String VULN_SOURCE
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_REFERENCE

    +
    +public static final String VULN_REFERENCE
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_SUMMARY

    +
    +public static final String VULN_SUMMARY
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +VULN_CWE

    +
    +public static final String VULN_CWE
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_SCORE

    +
    +public static final String CVSS_SCORE
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_ACCESS_VECTOR

    +
    +public static final String CVSS_ACCESS_VECTOR
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_ACCESS_COMPLEXITY

    +
    +public static final String CVSS_ACCESS_COMPLEXITY
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_AUTHENTICATION

    +
    +public static final String CVSS_AUTHENTICATION
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_CONFIDENTIALITY_IMPACT

    +
    +public static final String CVSS_CONFIDENTIALITY_IMPACT
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_INTEGRITY_IMPACT

    +
    +public static final String CVSS_INTEGRITY_IMPACT
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_AVAILABILITY_IMPACT

    +
    +public static final String CVSS_AVAILABILITY_IMPACT
    +
    +
    A node type in the NVD CVE Schema 2.0 +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +NvdCve20Handler.Element

    +
    +protected NvdCve20Handler.Element()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getNode

    +
    +public String getNode()
    +
    +
    Gets the value of node. +

    +

    + +
    Returns:
    the value of node
    +
    +
    +
    + +

    +setNode

    +
    +public void setNode(String node)
    +
    +
    Sets the value of node. +

    +

    +
    Parameters:
    node - new value of node
    +
    +
    +
    + +

    +isNVDNode

    +
    +public boolean isNVDNode()
    +
    +
    Checks if the handler is at the NVD node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isEntryNode

    +
    +public boolean isEntryNode()
    +
    +
    Checks if the handler is at the ENTRY node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnProductNode

    +
    +public boolean isVulnProductNode()
    +
    +
    Checks if the handler is at the VULN_PRODUCT node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnReferencesNode

    +
    +public boolean isVulnReferencesNode()
    +
    +
    Checks if the handler is at the REFERENCES node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnReferenceNode

    +
    +public boolean isVulnReferenceNode()
    +
    +
    Checks if the handler is at the REFERENCE node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnSourceNode

    +
    +public boolean isVulnSourceNode()
    +
    +
    Checks if the handler is at the VULN_SOURCE node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnSummaryNode

    +
    +public boolean isVulnSummaryNode()
    +
    +
    Checks if the handler is at the VULN_SUMMARY node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isVulnCWENode

    +
    +public boolean isVulnCWENode()
    +
    +
    Checks if the handler is at the VULN_CWE node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSScoreNode

    +
    +public boolean isCVSSScoreNode()
    +
    +
    Checks if the handler is at the CVSS_SCORE node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSAccessVectorNode

    +
    +public boolean isCVSSAccessVectorNode()
    +
    +
    Checks if the handler is at the CVSS_ACCESS_VECTOR node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSAccessComplexityNode

    +
    +public boolean isCVSSAccessComplexityNode()
    +
    +
    Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSAuthenticationNode

    +
    +public boolean isCVSSAuthenticationNode()
    +
    +
    Checks if the handler is at the CVSS_AUTHENTICATION node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSConfidentialityImpactNode

    +
    +public boolean isCVSSConfidentialityImpactNode()
    +
    +
    Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSIntegrityImpactNode

    +
    +public boolean isCVSSIntegrityImpactNode()
    +
    +
    Checks if the handler is at the CVSS_INTEGRITY_IMPACT node. +

    +

    + +
    Returns:
    true or false
    +
    +
    +
    + +

    +isCVSSAvailabilityImpactNode

    +
    +public boolean isCVSSAvailabilityImpactNode()
    +
    +
    Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node. +

    +

    + +
    Returns:
    true or false
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html new file mode 100644 index 000000000..fe1dc191b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html @@ -0,0 +1,449 @@ + + + + + + + +NvdCve20Handler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class NvdCve20Handler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler
    +
    +
    +
    All Implemented Interfaces:
    ContentHandler, DTDHandler, EntityResolver, ErrorHandler
    +
    +
    +
    +
    public class NvdCve20Handler
    extends org.xml.sax.helpers.DefaultHandler
    + + +

    +A SAX Handler that will parse the NVD CVE XML (schema version 2.0). +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +protected static classNvdCve20Handler.Element + +
    +          A simple class to maintain information about the current element while + parsing the NVD CVE XML.
    +  + + + + + + + + + + +
    +Constructor Summary
    NvdCve20Handler() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidcharacters(char[] ch, + int start, + int length) + +
    +           
    + voidendElement(String uri, + String localName, + String qName) + +
    +           
    + intgetTotalNumberOfApplicationEntries() + +
    +          Get the value of totalNumberOfApplicationEntries.
    + intgetTotalNumberOfEntries() + +
    +          Get the value of totalNumberOfEntries.
    + voidsetCveDB(CveDB db) + +
    +          Sets the cveDB.
    + voidsetPrevVersionVulnMap(Map<String,List<VulnerableSoftware>> map) + +
    +          Sets the prevVersionVulnMap.
    + voidstartElement(String uri, + String localName, + String qName, + Attributes attributes) + +
    +           
    + + + + + + + +
    Methods inherited from class org.xml.sax.helpers.DefaultHandler
    endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NvdCve20Handler

    +
    +public NvdCve20Handler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getTotalNumberOfEntries

    +
    +public int getTotalNumberOfEntries()
    +
    +
    Get the value of totalNumberOfEntries. +

    +

    + +
    Returns:
    the value of totalNumberOfEntries
    +
    +
    +
    + +

    +getTotalNumberOfApplicationEntries

    +
    +public int getTotalNumberOfApplicationEntries()
    +
    +
    Get the value of totalNumberOfApplicationEntries. +

    +

    + +
    Returns:
    the value of totalNumberOfApplicationEntries
    +
    +
    +
    + +

    +startElement

    +
    +public void startElement(String uri,
    +                         String localName,
    +                         String qName,
    +                         Attributes attributes)
    +                  throws SAXException
    +
    +
    +
    Specified by:
    startElement in interface ContentHandler
    Overrides:
    startElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    + +
    Throws: +
    SAXException
    +
    +
    +
    + +

    +characters

    +
    +public void characters(char[] ch,
    +                       int start,
    +                       int length)
    +                throws SAXException
    +
    +
    +
    Specified by:
    characters in interface ContentHandler
    Overrides:
    characters in class org.xml.sax.helpers.DefaultHandler
    +
    +
    + +
    Throws: +
    SAXException
    +
    +
    +
    + +

    +endElement

    +
    +public void endElement(String uri,
    +                       String localName,
    +                       String qName)
    +                throws SAXException
    +
    +
    +
    Specified by:
    endElement in interface ContentHandler
    Overrides:
    endElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    + +
    Throws: +
    SAXException
    +
    +
    +
    + +

    +setCveDB

    +
    +public void setCveDB(CveDB db)
    +
    +
    Sets the cveDB. +

    +

    +
    Parameters:
    db - a reference to the CveDB
    +
    +
    +
    + +

    +setPrevVersionVulnMap

    +
    +public void setPrevVersionVulnMap(Map<String,List<VulnerableSoftware>> map)
    +
    +
    Sets the prevVersionVulnMap. +

    +

    +
    Parameters:
    map - the map of vulnerable software with previous versions being + vulnerable
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html new file mode 100644 index 000000000..16df6c657 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html @@ -0,0 +1,253 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.CveDB

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use CveDB
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of CveDB in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe with parameters of type CveDB
    + voidCpeMemoryIndex.open(CveDB cve) + +
    +          Creates and loads data into an in memory index.
    +  +

    + + + + + +
    +Uses of CveDB in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve with parameters of type CveDB
    + voidNvdCve20Handler.setCveDB(CveDB db) + +
    +          Sets the cveDB.
    +  +

    + + + + + +
    +Uses of CveDB in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return CveDB
    +protected  CveDBAbstractUpdateTask.getCveDB() + +
    +          Returns the CveDB.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html new file mode 100644 index 000000000..0e15a6f32 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html @@ -0,0 +1,313 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.DatabaseException

    +
    + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use DatabaseException
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. 
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that throw DatabaseException
    + voidNvdCveAnalyzer.open() + +
    +          Opens the data source.
    + voidCPEAnalyzer.open() + +
    +          Opens the data source.
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.data
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data that throw DatabaseException
    +protected  intBaseDB.getGeneratedKey(PreparedStatement statement) + +
    +          Returns the generated integer primary key for a newly inserted row.
    + voidBaseDB.open() + +
    +          Opens the database connection.
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve that throw DatabaseException
    + List<Vulnerability>CveDB.getVulnerabilities(String cpeStr) + +
    +          Retrieves the vulnerabilities associated with the specified CPE.
    + voidCveDB.updateVulnerability(Vulnerability vuln) + +
    +          Updates the vulnerability within the database.
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that throw DatabaseException
    +protected  voidAbstractUpdateTask.importXML(File file, + File oldVersion) + +
    +          Imports the NVD CVE XML File into the Lucene Index.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html new file mode 100644 index 000000000..bae3b4197 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.InvalidDataException

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.InvalidDataException +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html new file mode 100644 index 000000000..09c8fb2db --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html new file mode 100644 index 000000000..db66c00aa --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html new file mode 100644 index 000000000..6e5eaa596 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html new file mode 100644 index 000000000..197bf4216 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html new file mode 100644 index 000000000..3db14ca2e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -0,0 +1,54 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.nvdcve + + + + +
    +Classes  + +
    +CveDB +
    +NvdCve12Handler +
    +NvdCve12Handler.Element +
    +NvdCve20Handler +
    +NvdCve20Handler.Element
    + + + + + + +
    +Exceptions  + +
    +DatabaseException +
    +InvalidDataException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html new file mode 100644 index 000000000..d3018c578 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -0,0 +1,222 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data.nvdcve +

    + + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    CveDBThe database holding information about the NVD CVE data.
    NvdCve12HandlerA SAX Handler that will parse the NVD CVE XML (schema version 1.2).
    NvdCve12Handler.ElementA simple class to maintain information about the current element while + parsing the NVD CVE XML.
    NvdCve20HandlerA SAX Handler that will parse the NVD CVE XML (schema version 2.0).
    NvdCve20Handler.ElementA simple class to maintain information about the current element while + parsing the NVD CVE XML.
    +  + +

    + + + + + + + + + + + + + +
    +Exception Summary
    DatabaseExceptionAn exception thrown if an operation against the database fails.
    InvalidDataExceptionAn InvalidDataDataException is a generic exception used when trying to load + the nvd cve meta data.
    +  + +

    +

    +Package org.owasp.dependencycheck.data.nvdcve Description +

    + +

    + + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html new file mode 100644 index 000000000..5d7aa202b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html @@ -0,0 +1,164 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data.nvdcve +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html new file mode 100644 index 000000000..9865c4587 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html @@ -0,0 +1,284 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.nvdcve

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.nvdcve
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. 
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.analyzer
    DatabaseException + +
    +          An exception thrown if an operation against the database fails.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data
    DatabaseException + +
    +          An exception thrown if an operation against the database fails.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data.cpe
    CveDB + +
    +          The database holding information about the NVD CVE data.
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data.nvdcve
    CveDB + +
    +          The database holding information about the NVD CVE data.
    DatabaseException + +
    +          An exception thrown if an operation against the database fails.
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data.update
    CveDB + +
    +          The database holding information about the NVD CVE data.
    DatabaseException + +
    +          An exception thrown if an operation against the database fails.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html new file mode 100644 index 000000000..fe0c2e190 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html @@ -0,0 +1,59 @@ + + + + + + + +org.owasp.dependencycheck.data (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.data + + + + +
    +Interfaces  + +
    +CachedWebDataSource
    + + + + + + +
    +Classes  + +
    +BaseDB +
    +UpdateService
    + + + + + + +
    +Exceptions  + +
    +NoDataException +
    +UpdateException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html new file mode 100644 index 000000000..cf8bf6be6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html @@ -0,0 +1,221 @@ + + + + + + + +org.owasp.dependencycheck.data (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data +

    + + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Interface Summary
    CachedWebDataSourceDefines an Index who's data is retrieved from the Internet.
    +  + +

    + + + + + + + + + + + + + +
    +Class Summary
    BaseDB 
    UpdateService 
    +  + +

    + + + + + + + + + + + + + +
    +Exception Summary
    NoDataExceptionAn exception used when the data needed does not exist to perform analysis.
    UpdateExceptionAn exception used when an error occurs reading a setting.
    +  + +

    +

    +Package org.owasp.dependencycheck.data Description +

    + +

    + + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html new file mode 100644 index 000000000..5a555a433 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html @@ -0,0 +1,166 @@ + + + + + + + +org.owasp.dependencycheck.data Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +

    +Interface Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html new file mode 100644 index 000000000..fcd1fe31d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html @@ -0,0 +1,241 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources. 
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data used by org.owasp.dependencycheck.data
    CachedWebDataSource + +
    +          Defines an Index who's data is retrieved from the Internet.
    UpdateException + +
    +          An exception used when an error occurs reading a setting.
    UpdateService + +
    +           
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data used by org.owasp.dependencycheck.data.nvdcve
    BaseDB + +
    +           
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data used by org.owasp.dependencycheck.data.update
    CachedWebDataSource + +
    +          Defines an Index who's data is retrieved from the Internet.
    UpdateException + +
    +          An exception used when an error occurs reading a setting.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html new file mode 100644 index 000000000..b7c800bb1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html @@ -0,0 +1,625 @@ + + + + + + + +AbstractUpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class AbstractUpdateTask

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.AbstractUpdateTask
    +
    +
    +
    All Implemented Interfaces:
    UpdateTask
    +
    +
    +
    Direct Known Subclasses:
    BatchUpdateTask, StandardUpdateTask
    +
    +
    +
    +
    public abstract class AbstractUpdateTask
    extends Object
    implements UpdateTask
    + + +

    +Class responsible for updating the CPE and NVDCVE data stores. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    AbstractUpdateTask(DataStoreMetaInfo properties) + +
    +          Initializes the AbstractUpdateTask.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  voidcloseDataStores() + +
    +          Closes the CVE and CPE data stores.
    +protected  voiddeleteExistingData() + +
    +          Deletes the existing data directories.
    +protected  CveDBgetCveDB() + +
    +          Returns the CveDB.
    +protected  DataStoreMetaInfogetProperties() + +
    +          Returns the data store properties.
    +protected  UpdateablegetUpdateable() + +
    +          Gets the updateable NVD CVE Entries.
    +protected  voidimportXML(File file, + File oldVersion) + +
    +          Imports the NVD CVE XML File into the Lucene Index.
    + booleanisUpdateNeeded() + +
    +          Gets whether or not an update is needed.
    +protected  voidopenDataStores() + +
    +          Opens the CVE and CPE data stores.
    +protected  voidsetDeleteAndRecreate(boolean deleteAndRecreate) + +
    +          Set the value of deleteAndRecreate.
    + booleanshouldDeleteAndRecreate() + +
    +          Get the value of deleteAndRecreate.
    +abstract  voidupdate() + +
    +          Updates the data store to the latest version.
    +protected abstract  UpdateableupdatesNeeded() + +
    +          Determines if the index needs to be updated.
    +protected  booleanwithinRange(long date, + long compareTo, + int range) + +
    +          Determines if the epoch date is within the range specified of the + compareTo epoch time.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AbstractUpdateTask

    +
    +public AbstractUpdateTask(DataStoreMetaInfo properties)
    +                   throws MalformedURLException,
    +                          DownloadFailedException,
    +                          UpdateException
    +
    +
    Initializes the AbstractUpdateTask. +

    +

    +
    Parameters:
    properties - information about the data store +
    Throws: +
    MalformedURLException - thrown if the configuration contains a + malformed url +
    DownloadFailedException - thrown if the timestamp on a file cannot + be checked +
    UpdateException - thrown if the update fails
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getProperties

    +
    +protected DataStoreMetaInfo getProperties()
    +
    +
    Returns the data store properties. +

    +

    +
    +
    +
    + +
    Returns:
    the data store properties
    +
    +
    +
    + +

    +getCveDB

    +
    +protected CveDB getCveDB()
    +
    +
    Returns the CveDB. +

    +

    +
    +
    +
    + +
    Returns:
    the CveDB
    +
    +
    +
    + +

    +isUpdateNeeded

    +
    +public boolean isUpdateNeeded()
    +
    +
    Gets whether or not an update is needed. +

    +

    +
    Specified by:
    isUpdateNeeded in interface UpdateTask
    +
    +
    + +
    Returns:
    true or false depending on whether an update is needed
    +
    +
    +
    + +

    +getUpdateable

    +
    +protected Updateable getUpdateable()
    +
    +
    Gets the updateable NVD CVE Entries. +

    +

    +
    +
    +
    + +
    Returns:
    an Updateable object containing the NVD CVE entries
    +
    +
    +
    + +

    +updatesNeeded

    +
    +protected abstract Updateable updatesNeeded()
    +                                     throws MalformedURLException,
    +                                            DownloadFailedException,
    +                                            UpdateException
    +
    +
    Determines if the index needs to be updated. +

    +

    +
    +
    +
    + +
    Returns:
    a collection of updateable resources. +
    Throws: +
    MalformedURLException - is thrown if the URL for the NVD CVE Meta + data is incorrect. +
    DownloadFailedException - is thrown if there is an error. + downloading the NVD CVE download data file. +
    UpdateException - Is thrown if there is an issue with the last + updated properties file.
    +
    +
    +
    + +

    +update

    +
    +public abstract void update()
    +                     throws UpdateException
    +
    +

    Updates the data store to the latest version.

    +

    +

    +
    Specified by:
    update in interface UpdateTask
    +
    +
    + +
    Throws: +
    UpdateException - is thrown if there is an error updating the + database
    +
    +
    +
    + +

    +shouldDeleteAndRecreate

    +
    +public boolean shouldDeleteAndRecreate()
    +
    +
    Get the value of deleteAndRecreate. +

    +

    +
    Specified by:
    shouldDeleteAndRecreate in interface UpdateTask
    +
    +
    + +
    Returns:
    the value of deleteAndRecreate
    +
    +
    +
    + +

    +setDeleteAndRecreate

    +
    +protected void setDeleteAndRecreate(boolean deleteAndRecreate)
    +
    +
    Set the value of deleteAndRecreate. +

    +

    +
    +
    +
    +
    Parameters:
    deleteAndRecreate - new value of deleteAndRecreate
    +
    +
    +
    + +

    +deleteExistingData

    +
    +protected void deleteExistingData()
    +                           throws IOException
    +
    +
    Deletes the existing data directories. +

    +

    +
    +
    +
    + +
    Throws: +
    IOException - thrown if the directory cannot be deleted
    +
    +
    +
    + +

    +closeDataStores

    +
    +protected void closeDataStores()
    +
    +
    Closes the CVE and CPE data stores. +

    +

    +
    +
    +
    +
    +
    +
    +
    + +

    +openDataStores

    +
    +protected void openDataStores()
    +                       throws UpdateException
    +
    +
    Opens the CVE and CPE data stores. +

    +

    +
    +
    +
    + +
    Throws: +
    UpdateException - thrown if a data store cannot be opened
    +
    +
    +
    + +

    +withinRange

    +
    +protected boolean withinRange(long date,
    +                              long compareTo,
    +                              int range)
    +
    +
    Determines if the epoch date is within the range specified of the + compareTo epoch time. This takes the (compareTo-date)/1000/60/60/24 to + get the number of days. If the calculated days is less then the range the + date is considered valid. +

    +

    +
    +
    +
    +
    Parameters:
    date - the date to be checked.
    compareTo - the date to compare to.
    range - the range in days to be considered valid. +
    Returns:
    whether or not the date is within the range.
    +
    +
    +
    + +

    +importXML

    +
    +protected void importXML(File file,
    +                         File oldVersion)
    +                  throws ParserConfigurationException,
    +                         SAXException,
    +                         IOException,
    +                         SQLException,
    +                         DatabaseException,
    +                         ClassNotFoundException
    +
    +
    Imports the NVD CVE XML File into the Lucene Index. +

    +

    +
    +
    +
    +
    Parameters:
    file - the file containing the NVD CVE XML
    oldVersion - contains the file containing the NVD CVE XML 1.2 +
    Throws: +
    ParserConfigurationException - is thrown if there is a parser + configuration exception +
    SAXException - is thrown if there is a SAXException +
    IOException - is thrown if there is a IO Exception +
    SQLException - is thrown if there is a SQL exception +
    DatabaseException - is thrown if there is a database exception +
    ClassNotFoundException - thrown if the h2 database driver cannot be + loaded
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html new file mode 100644 index 000000000..7c61ea13e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html @@ -0,0 +1,382 @@ + + + + + + + +BatchUpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class BatchUpdateTask

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.AbstractUpdateTask
    +      extended by org.owasp.dependencycheck.data.update.BatchUpdateTask
    +
    +
    +
    All Implemented Interfaces:
    UpdateTask
    +
    +
    +Deprecated. batch update mode will no longer be supported. +

    +

    +
    @Deprecated
    +public class BatchUpdateTask
    extends AbstractUpdateTask
    + + +

    +Class responsible for updating the CPE and NVDCVE data stores. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    BatchUpdateTask(DataStoreMetaInfo properties) + +
    +          Deprecated. Constructs a new BatchUpdateTask.
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  booleanisDoBatchUpdate() + +
    +          Deprecated. Get the value of doBatchUpdate
    +protected  voidsetDoBatchUpdate(boolean doBatchUpdate) + +
    +          Deprecated. Set the value of doBatchUpdate
    + voidupdate() + +
    +          Deprecated. Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    + UpdateableupdatesNeeded() + +
    +          Deprecated. Determines if the index needs to be updated.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.update.AbstractUpdateTask
    closeDataStores, deleteExistingData, getCveDB, getProperties, getUpdateable, importXML, isUpdateNeeded, openDataStores, setDeleteAndRecreate, shouldDeleteAndRecreate, withinRange
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +BatchUpdateTask

    +
    +public BatchUpdateTask(DataStoreMetaInfo properties)
    +                throws MalformedURLException,
    +                       DownloadFailedException,
    +                       UpdateException
    +
    +
    Deprecated. 
    Constructs a new BatchUpdateTask. +

    +

    +
    Parameters:
    properties - information about the data store +
    Throws: +
    MalformedURLException - thrown if a configured URL is malformed +
    DownloadFailedException - thrown if a timestamp cannot be checked + on a configured URL +
    UpdateException - thrown if there is an exception generating the + update task
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isDoBatchUpdate

    +
    +protected boolean isDoBatchUpdate()
    +
    +
    Deprecated. 
    Get the value of doBatchUpdate +

    +

    + +
    Returns:
    the value of doBatchUpdate
    +
    +
    +
    + +

    +setDoBatchUpdate

    +
    +protected void setDoBatchUpdate(boolean doBatchUpdate)
    +
    +
    Deprecated. 
    Set the value of doBatchUpdate +

    +

    +
    Parameters:
    doBatchUpdate - new value of doBatchUpdate
    +
    +
    +
    + +

    +update

    +
    +public void update()
    +            throws UpdateException
    +
    +
    Deprecated. 

    Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.

    +

    +

    +
    Specified by:
    update in interface UpdateTask
    Specified by:
    update in class AbstractUpdateTask
    +
    +
    + +
    Throws: +
    UpdateException - is thrown if there is an error updating the + database
    +
    +
    +
    + +

    +updatesNeeded

    +
    +public Updateable updatesNeeded()
    +                         throws MalformedURLException,
    +                                DownloadFailedException,
    +                                UpdateException
    +
    +
    Deprecated. 
    Determines if the index needs to be updated. This is done by fetching the + NVD CVE meta data and checking the last update date. If the data needs to + be refreshed this method will return the NvdCveUrl for the files that + need to be updated. +

    +

    +
    Specified by:
    updatesNeeded in class AbstractUpdateTask
    +
    +
    + +
    Returns:
    the collection of files that need to be updated +
    Throws: +
    MalformedURLException - is thrown if the URL for the NVD CVE Meta + data is incorrect +
    DownloadFailedException - is thrown if there is an error. + downloading the NVD CVE download data file +
    UpdateException - Is thrown if there is an issue with the last + updated properties file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html new file mode 100644 index 000000000..41151352e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html @@ -0,0 +1,499 @@ + + + + + + + +CallableDownloadTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class CallableDownloadTask

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.CallableDownloadTask
    +
    +
    +
    All Implemented Interfaces:
    Callable<CallableDownloadTask>
    +
    +
    +
    +
    public class CallableDownloadTask
    extends Object
    implements Callable<CallableDownloadTask>
    + + +

    +A callable object to download two files. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    CallableDownloadTask(NvdCveInfo nvdCveInfo, + File first, + File second) + +
    +          Simple constructor for the callable download task.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + CallableDownloadTaskcall() + +
    +           
    + voidcleanup() + +
    +          Attempts to delete the files that were downloaded.
    + ExceptiongetException() + +
    +          Get the value of exception.
    + FilegetFirst() + +
    +          Get the value of first.
    + NvdCveInfogetNvdCveInfo() + +
    +          Get the value of nvdCveInfo.
    + FilegetSecond() + +
    +          Get the value of second.
    + booleanhasException() + +
    +          returns whether or not an exception occurred during download.
    + voidsetFirst(File first) + +
    +          Set the value of first.
    + voidsetNvdCveInfo(NvdCveInfo nvdCveInfo) + +
    +          Set the value of nvdCveInfo.
    + voidsetSecond(File second) + +
    +          Set the value of second.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CallableDownloadTask

    +
    +public CallableDownloadTask(NvdCveInfo nvdCveInfo,
    +                            File first,
    +                            File second)
    +
    +
    Simple constructor for the callable download task. +

    +

    +
    Parameters:
    nvdCveInfo - the nvd cve info
    first - the first file
    second - the second file
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getNvdCveInfo

    +
    +public NvdCveInfo getNvdCveInfo()
    +
    +
    Get the value of nvdCveInfo. +

    +

    +
    +
    +
    + +
    Returns:
    the value of nvdCveInfo
    +
    +
    +
    + +

    +setNvdCveInfo

    +
    +public void setNvdCveInfo(NvdCveInfo nvdCveInfo)
    +
    +
    Set the value of nvdCveInfo. +

    +

    +
    +
    +
    +
    Parameters:
    nvdCveInfo - new value of nvdCveInfo
    +
    +
    +
    + +

    +getFirst

    +
    +public File getFirst()
    +
    +
    Get the value of first. +

    +

    +
    +
    +
    + +
    Returns:
    the value of first
    +
    +
    +
    + +

    +setFirst

    +
    +public void setFirst(File first)
    +
    +
    Set the value of first. +

    +

    +
    +
    +
    +
    Parameters:
    first - new value of first
    +
    +
    +
    + +

    +getSecond

    +
    +public File getSecond()
    +
    +
    Get the value of second. +

    +

    +
    +
    +
    + +
    Returns:
    the value of second
    +
    +
    +
    + +

    +setSecond

    +
    +public void setSecond(File second)
    +
    +
    Set the value of second. +

    +

    +
    +
    +
    +
    Parameters:
    second - new value of second
    +
    +
    +
    + +

    +getException

    +
    +public Exception getException()
    +
    +
    Get the value of exception. +

    +

    +
    +
    +
    + +
    Returns:
    the value of exception
    +
    +
    +
    + +

    +hasException

    +
    +public boolean hasException()
    +
    +
    returns whether or not an exception occurred during download. +

    +

    +
    +
    +
    + +
    Returns:
    whether or not an exception occurred during download
    +
    +
    +
    + +

    +call

    +
    +public CallableDownloadTask call()
    +                          throws Exception
    +
    +
    +
    Specified by:
    call in interface Callable<CallableDownloadTask>
    +
    +
    + +
    Throws: +
    Exception
    +
    +
    +
    + +

    +cleanup

    +
    +public void cleanup()
    +
    +
    Attempts to delete the files that were downloaded. +

    +

    +
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html new file mode 100644 index 000000000..e8a2fd5ed --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html @@ -0,0 +1,505 @@ + + + + + + + +DataStoreMetaInfo (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class DataStoreMetaInfo

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.DataStoreMetaInfo
    +
    +
    +
    +
    public class DataStoreMetaInfo
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringBATCH + +
    +          Batch key word, used as key to store information about batch mode.
    +static StringLAST_UPDATED + +
    +          The properties file key for the last updated field - used to store the + last updated time of the Modified NVD CVE xml file.
    +static StringLAST_UPDATED_BASE + +
    +          Stores the last updated time for each of the NVD CVE files.
    +static StringMODIFIED + +
    +          Modified key word, used as a key to store information about the modified + file (i.e.
    +  + + + + + + + + + + +
    +Constructor Summary
    DataStoreMetaInfo() + +
    +          Constructs a new data properties object.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static FilegetPropertiesFile() + +
    +          Retrieves the properties file.
    + StringgetProperty(String key) + +
    +          Returns the property value for the given key.
    + StringgetProperty(String key, + String defaultValue) + +
    +          Returns the property value for the given key.
    +protected  booleanisBatchUpdateMode() + +
    +          Get the value of batchUpdateMode.
    + booleanisEmpty() + +
    +          Returns whether or not any properties are set.
    + voidsave(NvdCveInfo updatedValue) + +
    +          Writes a properties file containing the last updated date to the + VULNERABLE_CPE directory.
    +protected  voidsetBatchUpdateMode(boolean batchUpdateMode) + +
    +          Set the value of batchUpdateMode.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +BATCH

    +
    +public static final String BATCH
    +
    +
    Batch key word, used as key to store information about batch mode. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +MODIFIED

    +
    +public static final String MODIFIED
    +
    +
    Modified key word, used as a key to store information about the modified + file (i.e. the containing the last 8 days of updates).. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +LAST_UPDATED

    +
    +public static final String LAST_UPDATED
    +
    +
    The properties file key for the last updated field - used to store the + last updated time of the Modified NVD CVE xml file. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +LAST_UPDATED_BASE

    +
    +public static final String LAST_UPDATED_BASE
    +
    +
    Stores the last updated time for each of the NVD CVE files. These + timestamps should be updated if we process the modified file within 7 + days of the last update. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +DataStoreMetaInfo

    +
    +public DataStoreMetaInfo()
    +
    +
    Constructs a new data properties object. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +isBatchUpdateMode

    +
    +protected boolean isBatchUpdateMode()
    +
    +
    Get the value of batchUpdateMode. +

    +

    + +
    Returns:
    the value of batchUpdateMode
    +
    +
    +
    + +

    +setBatchUpdateMode

    +
    +protected void setBatchUpdateMode(boolean batchUpdateMode)
    +
    +
    Set the value of batchUpdateMode. +

    +

    +
    Parameters:
    batchUpdateMode - new value of batchUpdateMode
    +
    +
    +
    + +

    +isEmpty

    +
    +public boolean isEmpty()
    +
    +
    Returns whether or not any properties are set. +

    +

    + +
    Returns:
    whether or not any properties are set
    +
    +
    +
    + +

    +save

    +
    +public void save(NvdCveInfo updatedValue)
    +          throws UpdateException
    +
    +
    Writes a properties file containing the last updated date to the + VULNERABLE_CPE directory. +

    +

    +
    Parameters:
    updatedValue - the updated nvdcve entry +
    Throws: +
    UpdateException - is thrown if there is an update exception
    +
    +
    +
    + +

    +getProperty

    +
    +public String getProperty(String key)
    +
    +
    Returns the property value for the given key. If the key is not contained + in the underlying properties null is returned. +

    +

    +
    Parameters:
    key - the property key +
    Returns:
    the value of the property
    +
    +
    +
    + +

    +getProperty

    +
    +public String getProperty(String key,
    +                          String defaultValue)
    +
    +
    Returns the property value for the given key. If the key is not contained + in the underlying properties the default value is returned. +

    +

    +
    Parameters:
    key - the property key
    defaultValue - the default value +
    Returns:
    the value of the property
    +
    +
    +
    + +

    +getPropertiesFile

    +
    +public static File getPropertiesFile()
    +
    +
    Retrieves the properties file. +

    +

    + +
    Returns:
    the properties file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html new file mode 100644 index 000000000..e61a57b4d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html @@ -0,0 +1,302 @@ + + + + + + + +DatabaseUpdater (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class DatabaseUpdater

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.DatabaseUpdater
    +
    +
    +
    All Implemented Interfaces:
    CachedWebDataSource
    +
    +
    +
    +
    public class DatabaseUpdater
    extends Object
    implements CachedWebDataSource
    + + +

    +Class responsible for updating the CPE and NVDCVE data stores. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    DatabaseUpdater() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  voiddeleteExistingData() + +
    +          Deletes the existing data directories.
    + voidupdate() + +
    +          Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DatabaseUpdater

    +
    +public DatabaseUpdater()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +update

    +
    +public void update()
    +            throws UpdateException
    +
    +

    Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.

    +

    +

    +
    Specified by:
    update in interface CachedWebDataSource
    +
    +
    + +
    Throws: +
    UpdateException - is thrown if there is an error updating the + database
    +
    +
    +
    + +

    +deleteExistingData

    +
    +protected void deleteExistingData()
    +                           throws IOException
    +
    +
    Deletes the existing data directories. +

    +

    +
    +
    +
    + +
    Throws: +
    IOException - thrown if the directory cannot be deleted
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html new file mode 100644 index 000000000..b746b0fe3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html @@ -0,0 +1,457 @@ + + + + + + + +NvdCveInfo (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class NvdCveInfo

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.NvdCveInfo
    +
    +
    +
    +
    public class NvdCveInfo
    extends Object
    + + +

    +A pojo that contains the Url and timestamp of the current NvdCve XML files. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    NvdCveInfo() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetId() + +
    +          Get the value of id.
    + booleangetNeedsUpdate() + +
    +          Get the value of needsUpdate.
    + StringgetOldSchemaVersionUrl() + +
    +          Get the value of oldSchemaVersionUrl.
    + longgetTimestamp() + +
    +          Get the value of timestamp - epoch time.
    + StringgetUrl() + +
    +          Get the value of url.
    + voidsetId(String id) + +
    +          Set the value of id.
    + voidsetNeedsUpdate(boolean needsUpdate) + +
    +          Set the value of needsUpdate.
    + voidsetOldSchemaVersionUrl(String oldSchemaVersionUrl) + +
    +          Set the value of oldSchemaVersionUrl.
    + voidsetTimestamp(long timestamp) + +
    +          Set the value of timestamp - epoch time.
    + voidsetUrl(String url) + +
    +          Set the value of url.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NvdCveInfo

    +
    +public NvdCveInfo()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getId

    +
    +public String getId()
    +
    +
    Get the value of id. +

    +

    + +
    Returns:
    the value of id
    +
    +
    +
    + +

    +setId

    +
    +public void setId(String id)
    +
    +
    Set the value of id. +

    +

    +
    Parameters:
    id - new value of id
    +
    +
    +
    + +

    +getUrl

    +
    +public String getUrl()
    +
    +
    Get the value of url. +

    +

    + +
    Returns:
    the value of url
    +
    +
    +
    + +

    +setUrl

    +
    +public void setUrl(String url)
    +
    +
    Set the value of url. +

    +

    +
    Parameters:
    url - new value of url
    +
    +
    +
    + +

    +getOldSchemaVersionUrl

    +
    +public String getOldSchemaVersionUrl()
    +
    +
    Get the value of oldSchemaVersionUrl. +

    +

    + +
    Returns:
    the value of oldSchemaVersionUrl
    +
    +
    +
    + +

    +setOldSchemaVersionUrl

    +
    +public void setOldSchemaVersionUrl(String oldSchemaVersionUrl)
    +
    +
    Set the value of oldSchemaVersionUrl. +

    +

    +
    Parameters:
    oldSchemaVersionUrl - new value of oldSchemaVersionUrl
    +
    +
    +
    + +

    +getTimestamp

    +
    +public long getTimestamp()
    +
    +
    Get the value of timestamp - epoch time. +

    +

    + +
    Returns:
    the value of timestamp - epoch time
    +
    +
    +
    + +

    +setTimestamp

    +
    +public void setTimestamp(long timestamp)
    +
    +
    Set the value of timestamp - epoch time. +

    +

    +
    Parameters:
    timestamp - new value of timestamp - epoch time
    +
    +
    +
    + +

    +getNeedsUpdate

    +
    +public boolean getNeedsUpdate()
    +
    +
    Get the value of needsUpdate. +

    +

    + +
    Returns:
    the value of needsUpdate
    +
    +
    +
    + +

    +setNeedsUpdate

    +
    +public void setNeedsUpdate(boolean needsUpdate)
    +
    +
    Set the value of needsUpdate. +

    +

    +
    Parameters:
    needsUpdate - new value of needsUpdate
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html new file mode 100644 index 000000000..87e8c553f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html @@ -0,0 +1,374 @@ + + + + + + + +StandardUpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class StandardUpdateTask

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.AbstractUpdateTask
    +      extended by org.owasp.dependencycheck.data.update.StandardUpdateTask
    +
    +
    +
    All Implemented Interfaces:
    UpdateTask
    +
    +
    +
    +
    public class StandardUpdateTask
    extends AbstractUpdateTask
    + + +

    +Class responsible for updating the CPE and NVDCVE data stores. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Field Summary
    +static intMAX_THREAD_POOL_SIZE + +
    +          The max thread pool size to use when downloading files.
    +  + + + + + + + + + + +
    +Constructor Summary
    StandardUpdateTask(DataStoreMetaInfo properties) + +
    +          Constructs a new Standard Update Task.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + voidupdate() + +
    +          Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    +protected  UpdateableupdatesNeeded() + +
    +          Determines if the index needs to be updated.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.update.AbstractUpdateTask
    closeDataStores, deleteExistingData, getCveDB, getProperties, getUpdateable, importXML, isUpdateNeeded, openDataStores, setDeleteAndRecreate, shouldDeleteAndRecreate, withinRange
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +MAX_THREAD_POOL_SIZE

    +
    +public static final int MAX_THREAD_POOL_SIZE
    +
    +
    The max thread pool size to use when downloading files. +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +StandardUpdateTask

    +
    +public StandardUpdateTask(DataStoreMetaInfo properties)
    +                   throws MalformedURLException,
    +                          DownloadFailedException,
    +                          UpdateException
    +
    +
    Constructs a new Standard Update Task. +

    +

    +
    Parameters:
    properties - information about the data store +
    Throws: +
    MalformedURLException - thrown if a configured URL is malformed +
    DownloadFailedException - thrown if a timestamp cannot be checked + on a configured URL +
    UpdateException - thrown if there is an exception generating the + update task
    +
    + + + + + + + + +
    +Method Detail
    + +

    +update

    +
    +public void update()
    +            throws UpdateException
    +
    +

    Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.

    +

    +

    +
    Specified by:
    update in interface UpdateTask
    Specified by:
    update in class AbstractUpdateTask
    +
    +
    + +
    Throws: +
    UpdateException - is thrown if there is an error updating the + database
    +
    +
    +
    + +

    +updatesNeeded

    +
    +protected Updateable updatesNeeded()
    +                            throws MalformedURLException,
    +                                   DownloadFailedException,
    +                                   UpdateException
    +
    +
    Determines if the index needs to be updated. This is done by fetching the + NVD CVE meta data and checking the last update date. If the data needs to + be refreshed this method will return the NvdCveUrl for the files that + need to be updated. +

    +

    +
    Specified by:
    updatesNeeded in class AbstractUpdateTask
    +
    +
    + +
    Returns:
    the collection of files that need to be updated +
    Throws: +
    MalformedURLException - is thrown if the URL for the NVD CVE Meta + data is incorrect +
    DownloadFailedException - is thrown if there is an error. + downloading the NVD CVE download data file +
    UpdateException - Is thrown if there is an issue with the last + updated properties file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html new file mode 100644 index 000000000..80434a78f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html @@ -0,0 +1,268 @@ + + + + + + + +UpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Interface UpdateTask

    +
    +
    All Known Implementing Classes:
    AbstractUpdateTask, BatchUpdateTask, StandardUpdateTask
    +
    +
    +
    +
    public interface UpdateTask
    + + +

    +An interface defining an update task. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + booleanisUpdateNeeded() + +
    +          Gets whether or not an update is needed.
    + booleanshouldDeleteAndRecreate() + +
    +          Get the value of deleteAndRecreate.
    + voidupdate() + +
    +          Updates the data store to the latest version.
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +update

    +
    +void update()
    +            throws UpdateException
    +
    +

    Updates the data store to the latest version.

    +

    +

    + +
    Throws: +
    UpdateException - is thrown if there is an error updating the + database
    +
    +
    +
    + +

    +shouldDeleteAndRecreate

    +
    +boolean shouldDeleteAndRecreate()
    +
    +
    Get the value of deleteAndRecreate. +

    +

    + +
    Returns:
    the value of deleteAndRecreate
    +
    +
    +
    + +

    +isUpdateNeeded

    +
    +boolean isUpdateNeeded()
    +
    +
    Gets whether or not an update is needed. +

    +

    + +
    Returns:
    true or false depending on whether an update is needed
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html new file mode 100644 index 000000000..c657a4130 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html @@ -0,0 +1,241 @@ + + + + + + + +UpdateTaskFactory (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class UpdateTaskFactory

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.UpdateTaskFactory
    +
    +
    +
    +
    public final class UpdateTaskFactory
    extends Object
    + + +

    +An UpdateTask Factory that instantiates the correct UpdateTask based on the + given configuration. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + +
    +Method Summary
    +static UpdateTaskgetUpdateTask() + +
    +          Constructs the appropriate update task based on configuration.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getUpdateTask

    +
    +public static UpdateTask getUpdateTask()
    +                                throws MalformedURLException,
    +                                       DownloadFailedException,
    +                                       UpdateException
    +
    +
    Constructs the appropriate update task based on configuration. +

    +

    + +
    Returns:
    an UpdateTask +
    Throws: +
    MalformedURLException - thrown if a configured URL is malformed +
    DownloadFailedException - thrown if a timestamp cannot be checked + on a configured URL +
    UpdateException - thrown if there is an exception generating the + update task
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html new file mode 100644 index 000000000..be4b9f4f5 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html @@ -0,0 +1,542 @@ + + + + + + + +Updateable (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class Updateable

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.Updateable
    +
    +
    +
    All Implemented Interfaces:
    Iterable<NvdCveInfo>, Iterator<NvdCveInfo>
    +
    +
    +
    +
    public class Updateable
    extends Object
    implements Iterable<NvdCveInfo>, Iterator<NvdCveInfo>
    + + +

    +Contains a collection of updateable NvdCveInfo objects. This is used to + determine which files need to be downloaded and processed. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Updateable() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidadd(String id, + String url, + String oldUrl) + +
    +          Adds a new entry of updateable information to the contained collection.
    + voidadd(String id, + String url, + String oldUrl, + boolean needsUpdate) + +
    +          Adds a new entry of updateable information to the contained collection.
    + voidclear() + +
    +          Clears the contained collection of NvdCveInfo entries.
    +protected  Map<String,NvdCveInfo>getCollection() + +
    +          Returns the collection of NvdCveInfo objects.
    + longgetTimeStamp(String key) + +
    +          Returns the timestamp for the given entry.
    + booleanhasNext() + +
    +          Returns whether or not there is another item in the collection.
    + booleanisUpdateNeeded() + +
    +          Gets whether or not an update is needed.
    + Iterator<NvdCveInfo>iterator() + +
    +          Returns an iterator for the NvdCveInfo contained.
    + NvdCveInfonext() + +
    +          Returns the next item in the collection.
    + voidremove() + +
    +          Removes the current NvdCveInfo object from the collection.
    + StringtoString() + +
    +           
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Updateable

    +
    +public Updateable()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getCollection

    +
    +protected Map<String,NvdCveInfo> getCollection()
    +
    +
    Returns the collection of NvdCveInfo objects. This method is mainly used + for testing. +

    +

    +
    +
    +
    + +
    Returns:
    the collection of NvdCveInfo objects
    +
    +
    +
    + +

    +isUpdateNeeded

    +
    +public boolean isUpdateNeeded()
    +
    +
    Gets whether or not an update is needed. +

    +

    +
    +
    +
    + +
    Returns:
    true or false depending on whether an update is needed
    +
    +
    +
    + +

    +add

    +
    +public void add(String id,
    +                String url,
    +                String oldUrl)
    +         throws MalformedURLException,
    +                DownloadFailedException
    +
    +
    Adds a new entry of updateable information to the contained collection. +

    +

    +
    +
    +
    +
    Parameters:
    id - the key for the item to be added
    url - the URL to download the item
    oldUrl - the URL for the old version of the item (the NVD CVE old + schema still contains useful data we need). +
    Throws: +
    MalformedURLException - thrown if the URL provided is invalid +
    DownloadFailedException - thrown if the download fails.
    +
    +
    +
    + +

    +add

    +
    +public void add(String id,
    +                String url,
    +                String oldUrl,
    +                boolean needsUpdate)
    +         throws MalformedURLException,
    +                DownloadFailedException
    +
    +
    Adds a new entry of updateable information to the contained collection. +

    +

    +
    +
    +
    +
    Parameters:
    id - the key for the item to be added
    url - the URL to download the item
    oldUrl - the URL for the old version of the item (the NVD CVE old + schema still contains useful data we need).
    needsUpdate - whether or not the data needs to be updated +
    Throws: +
    MalformedURLException - thrown if the URL provided is invalid +
    DownloadFailedException - thrown if the download fails.
    +
    +
    +
    + +

    +clear

    +
    +public void clear()
    +
    +
    Clears the contained collection of NvdCveInfo entries. +

    +

    +
    +
    +
    +
    +
    +
    +
    + +

    +getTimeStamp

    +
    +public long getTimeStamp(String key)
    +
    +
    Returns the timestamp for the given entry. +

    +

    +
    +
    +
    +
    Parameters:
    key - the key to lookup in the collection of NvdCveInfo items +
    Returns:
    the timestamp for the given entry
    +
    +
    +
    + +

    +iterator

    +
    +public Iterator<NvdCveInfo> iterator()
    +
    +

    Returns an iterator for the NvdCveInfo contained.

    +

    This method is not thread safe.

    +

    +

    +
    Specified by:
    iterator in interface Iterable<NvdCveInfo>
    +
    +
    + +
    Returns:
    an NvdCveInfo Iterator
    +
    +
    +
    + +

    +hasNext

    +
    +public boolean hasNext()
    +
    +

    Returns whether or not there is another item in the collection.

    +

    This method is not thread safe.

    +

    +

    +
    Specified by:
    hasNext in interface Iterator<NvdCveInfo>
    +
    +
    + +
    Returns:
    true or false depending on whether or not another item exists in + the collection
    +
    +
    +
    + +

    +next

    +
    +public NvdCveInfo next()
    +
    +

    Returns the next item in the collection.

    +

    This method is not thread safe.

    +

    +

    +
    Specified by:
    next in interface Iterator<NvdCveInfo>
    +
    +
    + +
    Returns:
    the next NvdCveInfo item in the collection
    +
    +
    +
    + +

    +remove

    +
    +public void remove()
    +
    +

    Removes the current NvdCveInfo object from the collection.

    +

    This method is not thread safe.

    +

    +

    +
    Specified by:
    remove in interface Iterator<NvdCveInfo>
    +
    +
    +
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    +
    Overrides:
    toString in class Object
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html new file mode 100644 index 000000000..b8285bf42 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html @@ -0,0 +1,193 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.AbstractUpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.AbstractUpdateTask

    +
    + + + + + + + + + +
    +Packages that use AbstractUpdateTask
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of AbstractUpdateTask in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + + + + + +
    Subclasses of AbstractUpdateTask in org.owasp.dependencycheck.data.update
    + classBatchUpdateTask + +
    +          Deprecated. batch update mode will no longer be supported.
    + classStandardUpdateTask + +
    +          Class responsible for updating the CPE and NVDCVE data stores.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html new file mode 100644 index 000000000..1dddf010b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.BatchUpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.BatchUpdateTask

    +
    +No usage of org.owasp.dependencycheck.data.update.BatchUpdateTask +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html new file mode 100644 index 000000000..da4da048e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html @@ -0,0 +1,185 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.CallableDownloadTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.CallableDownloadTask

    +
    + + + + + + + + + +
    +Packages that use CallableDownloadTask
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of CallableDownloadTask in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return CallableDownloadTask
    + CallableDownloadTaskCallableDownloadTask.call() + +
    +           
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html new file mode 100644 index 000000000..e8b4df443 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html @@ -0,0 +1,211 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.DataStoreMetaInfo (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.DataStoreMetaInfo

    +
    + + + + + + + + + +
    +Packages that use DataStoreMetaInfo
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of DataStoreMetaInfo in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return DataStoreMetaInfo
    +protected  DataStoreMetaInfoAbstractUpdateTask.getProperties() + +
    +          Returns the data store properties.
    +  +

    + + + + + + + + + + + + + + +
    Constructors in org.owasp.dependencycheck.data.update with parameters of type DataStoreMetaInfo
    AbstractUpdateTask(DataStoreMetaInfo properties) + +
    +          Initializes the AbstractUpdateTask.
    BatchUpdateTask(DataStoreMetaInfo properties) + +
    +          Deprecated. Constructs a new BatchUpdateTask.
    StandardUpdateTask(DataStoreMetaInfo properties) + +
    +          Constructs a new Standard Update Task.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html new file mode 100644 index 000000000..8ae9b7088 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.DatabaseUpdater (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.DatabaseUpdater

    +
    +No usage of org.owasp.dependencycheck.data.update.DatabaseUpdater +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html new file mode 100644 index 000000000..daa46ba94 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html @@ -0,0 +1,258 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.NvdCveInfo (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.NvdCveInfo

    +
    + + + + + + + + + +
    +Packages that use NvdCveInfo
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of NvdCveInfo in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return NvdCveInfo
    + NvdCveInfoCallableDownloadTask.getNvdCveInfo() + +
    +          Get the value of nvdCveInfo.
    + NvdCveInfoUpdateable.next() + +
    +          Returns the next item in the collection.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return types with arguments of type NvdCveInfo
    +protected  Map<String,NvdCveInfo>Updateable.getCollection() + +
    +          Returns the collection of NvdCveInfo objects.
    + Iterator<NvdCveInfo>Updateable.iterator() + +
    +          Returns an iterator for the NvdCveInfo contained.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update with parameters of type NvdCveInfo
    + voidDataStoreMetaInfo.save(NvdCveInfo updatedValue) + +
    +          Writes a properties file containing the last updated date to the + VULNERABLE_CPE directory.
    + voidCallableDownloadTask.setNvdCveInfo(NvdCveInfo nvdCveInfo) + +
    +          Set the value of nvdCveInfo.
    +  +

    + + + + + + + + +
    Constructors in org.owasp.dependencycheck.data.update with parameters of type NvdCveInfo
    CallableDownloadTask(NvdCveInfo nvdCveInfo, + File first, + File second) + +
    +          Simple constructor for the callable download task.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html new file mode 100644 index 000000000..7a758bf9b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.StandardUpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.StandardUpdateTask

    +
    +No usage of org.owasp.dependencycheck.data.update.StandardUpdateTask +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html new file mode 100644 index 000000000..b07ad5f4f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html @@ -0,0 +1,217 @@ + + + + + + + +Uses of Interface org.owasp.dependencycheck.data.update.UpdateTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Interface
    org.owasp.dependencycheck.data.update.UpdateTask

    +
    + + + + + + + + + +
    +Packages that use UpdateTask
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of UpdateTask in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + + + + + + + + + +
    Classes in org.owasp.dependencycheck.data.update that implement UpdateTask
    + classAbstractUpdateTask + +
    +          Class responsible for updating the CPE and NVDCVE data stores.
    + classBatchUpdateTask + +
    +          Deprecated. batch update mode will no longer be supported.
    + classStandardUpdateTask + +
    +          Class responsible for updating the CPE and NVDCVE data stores.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return UpdateTask
    +static UpdateTaskUpdateTaskFactory.getUpdateTask() + +
    +          Constructs the appropriate update task based on configuration.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html new file mode 100644 index 000000000..69cdf7dbc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.UpdateTaskFactory (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.UpdateTaskFactory

    +
    +No usage of org.owasp.dependencycheck.data.update.UpdateTaskFactory +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html new file mode 100644 index 000000000..863ee1703 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html @@ -0,0 +1,209 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.Updateable (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.Updateable

    +
    + + + + + + + + + +
    +Packages that use Updateable
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of Updateable in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return Updateable
    +protected  UpdateableAbstractUpdateTask.getUpdateable() + +
    +          Gets the updateable NVD CVE Entries.
    +protected  UpdateableStandardUpdateTask.updatesNeeded() + +
    +          Determines if the index needs to be updated.
    + UpdateableBatchUpdateTask.updatesNeeded() + +
    +          Deprecated. Determines if the index needs to be updated.
    +protected abstract  UpdateableAbstractUpdateTask.updatesNeeded() + +
    +          Determines if the index needs to be updated.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html new file mode 100644 index 000000000..60d15331b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html @@ -0,0 +1,60 @@ + + + + + + + +org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.update + + + + +
    +Interfaces  + +
    +UpdateTask
    + + + + + + +
    +Classes  + +
    +AbstractUpdateTask +
    +BatchUpdateTask +
    +CallableDownloadTask +
    +DatabaseUpdater +
    +DataStoreMetaInfo +
    +NvdCveInfo +
    +StandardUpdateTask +
    +Updateable +
    +UpdateTaskFactory
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html new file mode 100644 index 000000000..e7297fa68 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html @@ -0,0 +1,237 @@ + + + + + + + +org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data.update +

    + + + org.owasp.dependencycheck.data.nvdcve.xml + + +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Interface Summary
    UpdateTaskAn interface defining an update task.
    +  + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    AbstractUpdateTaskClass responsible for updating the CPE and NVDCVE data stores.
    BatchUpdateTaskDeprecated. batch update mode will no longer be supported.
    CallableDownloadTaskA callable object to download two files.
    DatabaseUpdaterClass responsible for updating the CPE and NVDCVE data stores.
    DataStoreMetaInfo 
    NvdCveInfoA pojo that contains the Url and timestamp of the current NvdCve XML files.
    StandardUpdateTaskClass responsible for updating the CPE and NVDCVE data stores.
    UpdateableContains a collection of updateable NvdCveInfo objects.
    UpdateTaskFactoryAn UpdateTask Factory that instantiates the correct UpdateTask based on the + given configuration.
    +  + +

    +

    +Package org.owasp.dependencycheck.data.update Description +

    + +

    + + + org.owasp.dependencycheck.data.nvdcve.xml + + +

    Contains classes used to parse the NVD CVE XML file.

    +

    The basic use is that the Importer is called to import + an NVD CVE file. The Importer instantiates an Indexer object + (which extends Index). The Indexer creates a partial-unmarshalling + SAX parser (implemented in the NvdCveXmlFilter) that extracts + VulnerabilityTypes (aka Entry) from the NVD CVE data file and + stores these into a Lucene Index.

    + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html new file mode 100644 index 000000000..301d8bd70 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html @@ -0,0 +1,165 @@ + + + + + + + +org.owasp.dependencycheck.data.update Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data.update +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +

    +Interface Hierarchy +

    +
      +
    • org.owasp.dependencycheck.data.update.UpdateTask
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html new file mode 100644 index 000000000..5006dd81d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html @@ -0,0 +1,205 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.update

    +
    + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.update
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.update used by org.owasp.dependencycheck.data.update
    AbstractUpdateTask + +
    +          Class responsible for updating the CPE and NVDCVE data stores.
    CallableDownloadTask + +
    +          A callable object to download two files.
    DataStoreMetaInfo + +
    +           
    NvdCveInfo + +
    +          A pojo that contains the Url and timestamp of the current NvdCve XML files.
    Updateable + +
    +          Contains a collection of updateable NvdCveInfo objects.
    UpdateTask + +
    +          An interface defining an update task.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html new file mode 100644 index 000000000..62ad5c74d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html @@ -0,0 +1,1214 @@ + + + + + + + +Dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class Dependency

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.Dependency
    +
    +
    +
    All Implemented Interfaces:
    Comparable<Dependency>
    +
    +
    +
    +
    public class Dependency
    extends Object
    implements Comparable<Dependency>
    + + +

    +A program dependency. This object is one of the core components within + DependencyCheck. It is used to collect information about the dependency in + the form of evidence. The Evidence is then used to determine if there are any + known, published, vulnerabilities associated with the program dependency. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + +
    +Constructor Summary
    Dependency() + +
    +          Constructs a new Dependency object.
    Dependency(File file) + +
    +          Constructs a new Dependency object.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidaddAnalysisException(Exception ex) + +
    +          Adds an exception to the analysis exceptions collection.
    + voidaddIdentifier(Identifier identifier) + +
    +          Adds an entry to the list of detected Identifiers for the dependency + file.
    + voidaddIdentifier(String type, + String value, + String url) + +
    +          Adds an entry to the list of detected Identifiers for the dependency + file.
    + voidaddRelatedDependency(Dependency dependency) + +
    +          Adds a related dependency.
    + voidaddVulnerability(Vulnerability vulnerability) + +
    +          Adds a vulnerability to the dependency.
    + intcompareTo(Dependency o) + +
    +          Implementation of the Comparable interface.
    + booleanequals(Object obj) + +
    +          Implementation of the equals method.
    + StringgetActualFilePath() + +
    +          Gets the file path of the dependency.
    + List<Exception>getAnalysisExceptions() + +
    +          Get the value of analysisExceptions.
    + StringgetDescription() + +
    +          Get the value of description.
    + EvidenceCollectiongetEvidence() + +
    +          Returns the evidence used to identify this dependency.
    + EvidenceCollectiongetEvidenceUsed() + +
    +          Returns the evidence used to identify this dependency.
    + StringgetFileExtension() + +
    +          Gets the file extension of the dependency.
    + StringgetFileName() + +
    +          Returns the file name of the dependency.
    + StringgetFilePath() + +
    +          Gets the file path of the dependency.
    + Set<Identifier>getIdentifiers() + +
    +          Returns a List of Identifiers.
    + StringgetLicense() + +
    +          Get the value of license.
    + StringgetMd5sum() + +
    +          Returns the MD5 Checksum of the dependency file.
    + EvidenceCollectiongetProductEvidence() + +
    +          Gets the Product Evidence.
    + Set<Dependency>getRelatedDependencies() + +
    +          Get the value of relatedDependencies.
    + StringgetSha1sum() + +
    +          Returns the SHA1 Checksum of the dependency.
    + EvidenceCollectiongetVendorEvidence() + +
    +          Gets the Vendor Evidence.
    + EvidenceCollectiongetVersionEvidence() + +
    +          Gets the Version Evidence.
    + SortedSet<Vulnerability>getVulnerabilities() + +
    +          Get the list of vulnerabilities.
    + inthashCode() + +
    +          Generates the HashCode.
    + voidsetActualFilePath(String actualFilePath) + +
    +          Sets the actual file path of the dependency on disk.
    + voidsetAnalysisExceptions(List<Exception> analysisExceptions) + +
    +          Set the value of analysisExceptions.
    + voidsetDescription(String description) + +
    +          Set the value of description.
    + voidsetFileExtension(String fileExtension) + +
    +          Sets the file name of the dependency.
    + voidsetFileName(String fileName) + +
    +          Sets the file name of the dependency.
    + voidsetFilePath(String filePath) + +
    +          Sets the file path of the dependency.
    + voidsetIdentifiers(Set<Identifier> identifiers) + +
    +          Sets a List of Identifiers.
    + voidsetLicense(String license) + +
    +          Set the value of license.
    + voidsetMd5sum(String md5sum) + +
    +          Sets the MD5 Checksum of the dependency.
    + voidsetRelatedDependencies(Set<Dependency> relatedDependencies) + +
    +          Set the value of relatedDependencies.
    + voidsetSha1sum(String sha1sum) + +
    +          Sets the SHA1 Checksum of the dependency.
    + voidsetVulnerabilities(SortedSet<Vulnerability> vulnerabilities) + +
    +          Set the value of vulnerabilities.
    + StringtoString() + +
    +          Standard toString() implementation showing the filename, actualFilePath, + and filePath.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Dependency

    +
    +public Dependency()
    +
    +
    Constructs a new Dependency object. +

    +

    +
    + +

    +Dependency

    +
    +public Dependency(File file)
    +
    +
    Constructs a new Dependency object. +

    +

    +
    Parameters:
    file - the File to create the dependency object from.
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getFileName

    +
    +public String getFileName()
    +
    +
    Returns the file name of the dependency. +

    +

    +
    +
    +
    + +
    Returns:
    the file name of the dependency.
    +
    +
    +
    + +

    +setFileName

    +
    +public void setFileName(String fileName)
    +
    +
    Sets the file name of the dependency. +

    +

    +
    +
    +
    +
    Parameters:
    fileName - the file name of the dependency.
    +
    +
    +
    + +

    +setActualFilePath

    +
    +public void setActualFilePath(String actualFilePath)
    +
    +
    Sets the actual file path of the dependency on disk. +

    +

    +
    +
    +
    +
    Parameters:
    actualFilePath - the file path of the dependency.
    +
    +
    +
    + +

    +getActualFilePath

    +
    +public String getActualFilePath()
    +
    +
    Gets the file path of the dependency. +

    +

    +
    +
    +
    + +
    Returns:
    the file path of the dependency.
    +
    +
    +
    + +

    +setFilePath

    +
    +public void setFilePath(String filePath)
    +
    +
    Sets the file path of the dependency. +

    +

    +
    +
    +
    +
    Parameters:
    filePath - the file path of the dependency.
    +
    +
    +
    + +

    +getFilePath

    +
    +public String getFilePath()
    +
    +

    Gets the file path of the dependency.

    NOTE: This may not + be the actual path of the file on disk. The actual path of the file on + disk can be obtained via the getActualFilePath().

    +

    +

    +
    +
    +
    + +
    Returns:
    the file path of the dependency.
    +
    +
    +
    + +

    +setFileExtension

    +
    +public void setFileExtension(String fileExtension)
    +
    +
    Sets the file name of the dependency. +

    +

    +
    +
    +
    +
    Parameters:
    fileExtension - the file name of the dependency.
    +
    +
    +
    + +

    +getFileExtension

    +
    +public String getFileExtension()
    +
    +
    Gets the file extension of the dependency. +

    +

    +
    +
    +
    + +
    Returns:
    the file extension of the dependency.
    +
    +
    +
    + +

    +getMd5sum

    +
    +public String getMd5sum()
    +
    +
    Returns the MD5 Checksum of the dependency file. +

    +

    +
    +
    +
    + +
    Returns:
    the MD5 Checksum
    +
    +
    +
    + +

    +setMd5sum

    +
    +public void setMd5sum(String md5sum)
    +
    +
    Sets the MD5 Checksum of the dependency. +

    +

    +
    +
    +
    +
    Parameters:
    md5sum - the MD5 Checksum
    +
    +
    +
    + +

    +getSha1sum

    +
    +public String getSha1sum()
    +
    +
    Returns the SHA1 Checksum of the dependency. +

    +

    +
    +
    +
    + +
    Returns:
    the SHA1 Checksum
    +
    +
    +
    + +

    +setSha1sum

    +
    +public void setSha1sum(String sha1sum)
    +
    +
    Sets the SHA1 Checksum of the dependency. +

    +

    +
    +
    +
    +
    Parameters:
    sha1sum - the SHA1 Checksum
    +
    +
    +
    + +

    +getIdentifiers

    +
    +public Set<Identifier> getIdentifiers()
    +
    +
    Returns a List of Identifiers. +

    +

    +
    +
    +
    + +
    Returns:
    an ArrayList of Identifiers.
    +
    +
    +
    + +

    +setIdentifiers

    +
    +public void setIdentifiers(Set<Identifier> identifiers)
    +
    +
    Sets a List of Identifiers. +

    +

    +
    +
    +
    +
    Parameters:
    identifiers - A list of Identifiers.
    +
    +
    +
    + +

    +addIdentifier

    +
    +public void addIdentifier(String type,
    +                          String value,
    +                          String url)
    +
    +
    Adds an entry to the list of detected Identifiers for the dependency + file. +

    +

    +
    +
    +
    +
    Parameters:
    type - the type of identifier (such as CPE)
    value - the value of the identifier
    url - the URL of the identifier
    +
    +
    +
    + +

    +addIdentifier

    +
    +public void addIdentifier(Identifier identifier)
    +
    +
    Adds an entry to the list of detected Identifiers for the dependency + file. +

    +

    +
    +
    +
    +
    Parameters:
    identifier - the identifier to add
    +
    +
    +
    + +

    +getEvidence

    +
    +public EvidenceCollection getEvidence()
    +
    +
    Returns the evidence used to identify this dependency. +

    +

    +
    +
    +
    + +
    Returns:
    an EvidenceCollection.
    +
    +
    +
    + +

    +getEvidenceUsed

    +
    +public EvidenceCollection getEvidenceUsed()
    +
    +
    Returns the evidence used to identify this dependency. +

    +

    +
    +
    +
    + +
    Returns:
    an EvidenceCollection.
    +
    +
    +
    + +

    +getVendorEvidence

    +
    +public EvidenceCollection getVendorEvidence()
    +
    +
    Gets the Vendor Evidence. +

    +

    +
    +
    +
    + +
    Returns:
    an EvidenceCollection.
    +
    +
    +
    + +

    +getProductEvidence

    +
    +public EvidenceCollection getProductEvidence()
    +
    +
    Gets the Product Evidence. +

    +

    +
    +
    +
    + +
    Returns:
    an EvidenceCollection.
    +
    +
    +
    + +

    +getVersionEvidence

    +
    +public EvidenceCollection getVersionEvidence()
    +
    +
    Gets the Version Evidence. +

    +

    +
    +
    +
    + +
    Returns:
    an EvidenceCollection.
    +
    +
    +
    + +

    +getAnalysisExceptions

    +
    +public List<Exception> getAnalysisExceptions()
    +
    +
    Get the value of analysisExceptions. +

    +

    +
    +
    +
    + +
    Returns:
    the value of analysisExceptions
    +
    +
    +
    + +

    +setAnalysisExceptions

    +
    +public void setAnalysisExceptions(List<Exception> analysisExceptions)
    +
    +
    Set the value of analysisExceptions. +

    +

    +
    +
    +
    +
    Parameters:
    analysisExceptions - new value of analysisExceptions
    +
    +
    +
    + +

    +addAnalysisException

    +
    +public void addAnalysisException(Exception ex)
    +
    +
    Adds an exception to the analysis exceptions collection. +

    +

    +
    +
    +
    +
    Parameters:
    ex - an exception.
    +
    +
    +
    + +

    +getDescription

    +
    +public String getDescription()
    +
    +
    Get the value of description. +

    +

    +
    +
    +
    + +
    Returns:
    the value of description
    +
    +
    +
    + +

    +setDescription

    +
    +public void setDescription(String description)
    +
    +
    Set the value of description. +

    +

    +
    +
    +
    +
    Parameters:
    description - new value of description
    +
    +
    +
    + +

    +getLicense

    +
    +public String getLicense()
    +
    +
    Get the value of license. +

    +

    +
    +
    +
    + +
    Returns:
    the value of license
    +
    +
    +
    + +

    +setLicense

    +
    +public void setLicense(String license)
    +
    +
    Set the value of license. +

    +

    +
    +
    +
    +
    Parameters:
    license - new value of license
    +
    +
    +
    + +

    +getVulnerabilities

    +
    +public SortedSet<Vulnerability> getVulnerabilities()
    +
    +
    Get the list of vulnerabilities. +

    +

    +
    +
    +
    + +
    Returns:
    the list of vulnerabilities
    +
    +
    +
    + +

    +setVulnerabilities

    +
    +public void setVulnerabilities(SortedSet<Vulnerability> vulnerabilities)
    +
    +
    Set the value of vulnerabilities. +

    +

    +
    +
    +
    +
    Parameters:
    vulnerabilities - new value of vulnerabilities
    +
    +
    +
    + +

    +addVulnerability

    +
    +public void addVulnerability(Vulnerability vulnerability)
    +
    +
    Adds a vulnerability to the dependency. +

    +

    +
    +
    +
    +
    Parameters:
    vulnerability - a vulnerability outlining a vulnerability.
    +
    +
    +
    + +

    +getRelatedDependencies

    +
    +public Set<Dependency> getRelatedDependencies()
    +
    +
    Get the value of relatedDependencies. +

    +

    +
    +
    +
    + +
    Returns:
    the value of relatedDependencies
    +
    +
    +
    + +

    +setRelatedDependencies

    +
    +public void setRelatedDependencies(Set<Dependency> relatedDependencies)
    +
    +
    Set the value of relatedDependencies. +

    +

    +
    +
    +
    +
    Parameters:
    relatedDependencies - new value of relatedDependencies
    +
    +
    +
    + +

    +addRelatedDependency

    +
    +public void addRelatedDependency(Dependency dependency)
    +
    +
    Adds a related dependency. +

    +

    +
    +
    +
    +
    Parameters:
    dependency - a reference to the related dependency
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(Dependency o)
    +
    +
    Implementation of the Comparable interface. The comparison is + solely based on the file name. +

    +

    +
    Specified by:
    compareTo in interface Comparable<Dependency>
    +
    +
    +
    Parameters:
    o - a dependency to compare +
    Returns:
    an integer representing the natural ordering
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    Implementation of the equals method. +

    +

    +
    Overrides:
    equals in class Object
    +
    +
    +
    Parameters:
    obj - the object to compare +
    Returns:
    true if the objects are equal, otherwise false
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Generates the HashCode. +

    +

    +
    Overrides:
    hashCode in class Object
    +
    +
    + +
    Returns:
    the HashCode
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Standard toString() implementation showing the filename, actualFilePath, + and filePath. +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    the string representation of the file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html new file mode 100644 index 000000000..e4cea42cc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html @@ -0,0 +1,370 @@ + + + + + + + +Evidence.Confidence (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Enum Evidence.Confidence

    +
    +java.lang.Object
    +  extended by java.lang.Enum<Evidence.Confidence>
    +      extended by org.owasp.dependencycheck.dependency.Evidence.Confidence
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparable<Evidence.Confidence>
    +
    +
    +
    Enclosing class:
    Evidence
    +
    +
    +
    +
    public static enum Evidence.Confidence
    extends Enum<Evidence.Confidence>
    + + +

    +The confidence that the evidence is "high" quality. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + +
    +Enum Constant Summary
    HIGH + +
    +          High confidence evidence.
    HIGHEST + +
    +          High confidence evidence.
    LOW + +
    +          Low confidence evidence.
    MEDIUM + +
    +          Medium confidence evidence.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +static Evidence.ConfidencevalueOf(String name) + +
    +          Returns the enum constant of this type with the specified name.
    +static Evidence.Confidence[]values() + +
    +          Returns an array containing the constants of this enum type, in +the order they are declared.
    + + + + + + + +
    Methods inherited from class java.lang.Enum
    clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
    + + + + + + + +
    Methods inherited from class java.lang.Object
    getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Enum Constant Detail
    + +

    +HIGHEST

    +
    +public static final Evidence.Confidence HIGHEST
    +
    +
    High confidence evidence. +

    +

    +
    +
    +
    + +

    +HIGH

    +
    +public static final Evidence.Confidence HIGH
    +
    +
    High confidence evidence. +

    +

    +
    +
    +
    + +

    +MEDIUM

    +
    +public static final Evidence.Confidence MEDIUM
    +
    +
    Medium confidence evidence. +

    +

    +
    +
    +
    + +

    +LOW

    +
    +public static final Evidence.Confidence LOW
    +
    +
    Low confidence evidence. +

    +

    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +values

    +
    +public static Evidence.Confidence[] values()
    +
    +
    Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
    +for (Evidence.Confidence c : Evidence.Confidence.values())
    +    System.out.println(c);
    +
    +

    +

    + +
    Returns:
    an array containing the constants of this enum type, in +the order they are declared
    +
    +
    +
    + +

    +valueOf

    +
    +public static Evidence.Confidence valueOf(String name)
    +
    +
    Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.) +

    +

    +
    Parameters:
    name - the name of the enum constant to be returned. +
    Returns:
    the enum constant with the specified name +
    Throws: +
    IllegalArgumentException - if this enum type has no constant +with the specified name +
    NullPointerException - if the argument is null
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html new file mode 100644 index 000000000..1bd932965 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html @@ -0,0 +1,635 @@ + + + + + + + +Evidence (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class Evidence

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.Evidence
    +
    +
    +
    All Implemented Interfaces:
    Comparable<Evidence>
    +
    +
    +
    +
    public class Evidence
    extends Object
    implements Comparable<Evidence>
    + + +

    +Evidence is a piece of information about a Dependency. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classEvidence.Confidence + +
    +          The confidence that the evidence is "high" quality.
    +  + + + + + + + + + + + + + +
    +Constructor Summary
    Evidence() + +
    +          Creates a new Evidence object.
    Evidence(String source, + String name, + String value, + Evidence.Confidence confidence) + +
    +          Creates a new Evidence objects.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + intcompareTo(Evidence o) + +
    +          Implementation of the comparable interface.
    + booleanequals(Object that) + +
    +          Implements equals for Evidence.
    + Evidence.ConfidencegetConfidence() + +
    +          Get the value of confidence.
    + StringgetName() + +
    +          Get the value of name.
    + StringgetSource() + +
    +          Get the value of source.
    + StringgetValue() + +
    +          Get the value of value.
    + StringgetValue(Boolean setUsed) + +
    +          Get the value of value.
    + inthashCode() + +
    +          Implements the hashCode for Evidence.
    + booleanisUsed() + +
    +          Get the value of used.
    + voidsetConfidence(Evidence.Confidence confidence) + +
    +          Set the value of confidence.
    + voidsetName(String name) + +
    +          Set the value of name.
    + voidsetSource(String source) + +
    +          Set the value of source.
    + voidsetUsed(boolean used) + +
    +          Set the value of used.
    + voidsetValue(String value) + +
    +          Set the value of value.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Evidence

    +
    +public Evidence()
    +
    +
    Creates a new Evidence object. +

    +

    +
    + +

    +Evidence

    +
    +public Evidence(String source,
    +                String name,
    +                String value,
    +                Evidence.Confidence confidence)
    +
    +
    Creates a new Evidence objects. +

    +

    +
    Parameters:
    source - the source of the evidence.
    name - the name of the evidence.
    value - the value of the evidence.
    confidence - the confidence of the evidence.
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Get the value of name. +

    +

    +
    +
    +
    + +
    Returns:
    the value of name
    +
    +
    +
    + +

    +setName

    +
    +public void setName(String name)
    +
    +
    Set the value of name. +

    +

    +
    +
    +
    +
    Parameters:
    name - new value of name
    +
    +
    +
    + +

    +getSource

    +
    +public String getSource()
    +
    +
    Get the value of source. +

    +

    +
    +
    +
    + +
    Returns:
    the value of source
    +
    +
    +
    + +

    +setSource

    +
    +public void setSource(String source)
    +
    +
    Set the value of source. +

    +

    +
    +
    +
    +
    Parameters:
    source - new value of source
    +
    +
    +
    + +

    +getValue

    +
    +public String getValue()
    +
    +
    Get the value of value. +

    +

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

    +getValue

    +
    +public String getValue(Boolean setUsed)
    +
    +
    Get the value of value. If setUsed is set to false this call to get will + not mark the evidence as used. +

    +

    +
    +
    +
    +
    Parameters:
    setUsed - whether or not this call to getValue should cause the used + flag to be updated +
    Returns:
    the value of value
    +
    +
    +
    + +

    +setValue

    +
    +public void setValue(String value)
    +
    +
    Set the value of value. +

    +

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

    +isUsed

    +
    +public boolean isUsed()
    +
    +
    Get the value of used. +

    +

    +
    +
    +
    + +
    Returns:
    the value of used
    +
    +
    +
    + +

    +setUsed

    +
    +public void setUsed(boolean used)
    +
    +
    Set the value of used. +

    +

    +
    +
    +
    +
    Parameters:
    used - new value of used
    +
    +
    +
    + +

    +getConfidence

    +
    +public Evidence.Confidence getConfidence()
    +
    +
    Get the value of confidence. +

    +

    +
    +
    +
    + +
    Returns:
    the value of confidence
    +
    +
    +
    + +

    +setConfidence

    +
    +public void setConfidence(Evidence.Confidence confidence)
    +
    +
    Set the value of confidence. +

    +

    +
    +
    +
    +
    Parameters:
    confidence - new value of confidence
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Implements the hashCode for Evidence. +

    +

    +
    Overrides:
    hashCode in class Object
    +
    +
    + +
    Returns:
    hash code.
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object that)
    +
    +
    Implements equals for Evidence. +

    +

    +
    Overrides:
    equals in class Object
    +
    +
    +
    Parameters:
    that - an object to check the equality of. +
    Returns:
    whether the two objects are equal.
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(Evidence o)
    +
    +
    Implementation of the comparable interface. +

    +

    +
    Specified by:
    compareTo in interface Comparable<Evidence>
    +
    +
    +
    Parameters:
    o - the evidence being compared +
    Returns:
    an integer indicating the ordering of the two objects
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html new file mode 100644 index 000000000..c74098dbc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html @@ -0,0 +1,673 @@ + + + + + + + +EvidenceCollection (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class EvidenceCollection

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.EvidenceCollection
    +
    +
    +
    All Implemented Interfaces:
    Iterable<Evidence>
    +
    +
    +
    +
    public class EvidenceCollection
    extends Object
    implements Iterable<Evidence>
    + + +

    +Used to maintain a collection of Evidence. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    EvidenceCollection() + +
    +          Creates a new EvidenceCollection.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidaddEvidence(Evidence e) + +
    +          Adds evidence to the collection.
    + voidaddEvidence(String source, + String name, + String value, + Evidence.Confidence confidence) + +
    +          Creates an Evidence object from the parameters and adds the resulting + object to the collection.
    + voidaddWeighting(String str) + +
    +          Adds term to the weighting collection.
    + booleancontains(Evidence.Confidence confidence) + +
    +          Returns whether or not the collection contains evidence of a specified + Confidence.
    + booleancontainsUsedString(String text) + +
    +          Used to determine if a given string was used (aka read).
    + booleancontainsUsedVersion(DependencyVersion version) + +
    +          Used to determine if a given version was used (aka read) from the + EvidenceCollection.
    + Set<Evidence>getEvidence() + +
    +          Returns the set of evidence.
    + Set<Evidence>getEvidence(String source) + +
    +          Returns the set of evidence from a given source.
    + Set<Evidence>getEvidence(String source, + String name) + +
    +          Returns the set of evidence from a given source and name.
    + Set<String>getWeighting() + +
    +          Returns a set of Weightings - a list of terms that are believed to be of + higher confidence when also found in another location.
    + Iterator<Evidence>iterator() + +
    +          Implements the iterator interface for the Evidence Collection.
    + Iterable<Evidence>iterator(Evidence.Confidence confidence) + +
    +          Used to iterate over evidence of the specified confidence.
    +static EvidenceCollectionmerge(EvidenceCollection... ec) + +
    +          Merges multiple EvidenceCollections together.
    +static EvidenceCollectionmergeUsed(EvidenceCollection... ec) + +
    +          Merges multiple EvidenceCollections together, only merging evidence that + was used, into a new EvidenceCollection.
    + intsize() + +
    +          Returns the number of elements in the EvidenceCollection.
    + StringtoString() + +
    +          Returns a string of evidence 'values'.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +EvidenceCollection

    +
    +public EvidenceCollection()
    +
    +
    Creates a new EvidenceCollection. +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +iterator

    +
    +public final Iterable<Evidence> iterator(Evidence.Confidence confidence)
    +
    +
    Used to iterate over evidence of the specified confidence. +

    +

    +
    +
    +
    +
    Parameters:
    confidence - the confidence level for the evidence to be iterated + over. +
    Returns:
    Iterable an iterable collectoin of evidence
    +
    +
    +
    + +

    +addEvidence

    +
    +public void addEvidence(Evidence e)
    +
    +
    Adds evidence to the collection. +

    +

    +
    +
    +
    +
    Parameters:
    e - Evidence.
    +
    +
    +
    + +

    +addEvidence

    +
    +public void addEvidence(String source,
    +                        String name,
    +                        String value,
    +                        Evidence.Confidence confidence)
    +
    +
    Creates an Evidence object from the parameters and adds the resulting + object to the collection. +

    +

    +
    +
    +
    +
    Parameters:
    source - the source of the Evidence.
    name - the name of the Evidence.
    value - the value of the Evidence.
    confidence - the confidence of the Evidence.
    +
    +
    +
    + +

    +addWeighting

    +
    +public void addWeighting(String str)
    +
    +
    Adds term to the weighting collection. The terms added here are used + later to boost the score of other terms. This is a way of combining + evidence from multiple sources to boost the confidence of the given + evidence. + + Example: The term 'Apache' is found in the manifest of a JAR and is added + to the Collection. When we parse the package names within the JAR file we + may add these package names to the "weighted" strings collection to boost + the score in the Lucene query. That way when we construct the Lucene + query we find the term Apache in the collection AND in the weighted + strings; as such, we will boost the confidence of the term Apache. +

    +

    +
    +
    +
    +
    Parameters:
    str - to add to the weighting collection.
    +
    +
    +
    + +

    +getWeighting

    +
    +public Set<String> getWeighting()
    +
    +
    Returns a set of Weightings - a list of terms that are believed to be of + higher confidence when also found in another location. +

    +

    +
    +
    +
    + +
    Returns:
    Set
    +
    +
    +
    + +

    +getEvidence

    +
    +public Set<Evidence> getEvidence()
    +
    +
    Returns the set of evidence. +

    +

    +
    +
    +
    + +
    Returns:
    the set of evidence.
    +
    +
    +
    + +

    +getEvidence

    +
    +public Set<Evidence> getEvidence(String source)
    +
    +
    Returns the set of evidence from a given source. +

    +

    +
    +
    +
    +
    Parameters:
    source - the source of the evidence +
    Returns:
    the set of evidence.
    +
    +
    +
    + +

    +getEvidence

    +
    +public Set<Evidence> getEvidence(String source,
    +                                 String name)
    +
    +
    Returns the set of evidence from a given source and name. +

    +

    +
    +
    +
    +
    Parameters:
    source - the source of the evidence
    name - the name of the evidence to return +
    Returns:
    the set of evidence.
    +
    +
    +
    + +

    +iterator

    +
    +public Iterator<Evidence> iterator()
    +
    +
    Implements the iterator interface for the Evidence Collection. +

    +

    +
    Specified by:
    iterator in interface Iterable<Evidence>
    +
    +
    + +
    Returns:
    an Iterator.
    +
    +
    +
    + +

    +containsUsedString

    +
    +public boolean containsUsedString(String text)
    +
    +
    Used to determine if a given string was used (aka read). +

    +

    +
    +
    +
    +
    Parameters:
    text - the string to search for. +
    Returns:
    whether or not the string was used.
    +
    +
    +
    + +

    +containsUsedVersion

    +
    +public boolean containsUsedVersion(DependencyVersion version)
    +
    +
    Used to determine if a given version was used (aka read) from the + EvidenceCollection. +

    +

    +
    +
    +
    +
    Parameters:
    version - the version to search for within the collected evidence. +
    Returns:
    whether or not the string was used.
    +
    +
    +
    + +

    +contains

    +
    +public boolean contains(Evidence.Confidence confidence)
    +
    +
    Returns whether or not the collection contains evidence of a specified + Confidence. +

    +

    +
    +
    +
    +
    Parameters:
    confidence - A Confidence value. +
    Returns:
    boolean.
    +
    +
    +
    + +

    +mergeUsed

    +
    +public static EvidenceCollection mergeUsed(EvidenceCollection... ec)
    +
    +
    Merges multiple EvidenceCollections together, only merging evidence that + was used, into a new EvidenceCollection. +

    +

    +
    +
    +
    +
    Parameters:
    ec - One or more EvidenceCollections. +
    Returns:
    a new EvidenceCollection containing the used evidence.
    +
    +
    +
    + +

    +merge

    +
    +public static EvidenceCollection merge(EvidenceCollection... ec)
    +
    +
    Merges multiple EvidenceCollections together. +

    +

    +
    +
    +
    +
    Parameters:
    ec - One or more EvidenceCollections. +
    Returns:
    a new EvidenceCollection.
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Returns a string of evidence 'values'. +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    a string containing the evidence.
    +
    +
    +
    + +

    +size

    +
    +public int size()
    +
    +
    Returns the number of elements in the EvidenceCollection. +

    +

    +
    +
    +
    + +
    Returns:
    the number of elements in the collection.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html new file mode 100644 index 000000000..50ce50596 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html @@ -0,0 +1,564 @@ + + + + + + + +Identifier (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class Identifier

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.Identifier
    +
    +
    +
    All Implemented Interfaces:
    Comparable<Identifier>
    +
    +
    +
    +
    public class Identifier
    extends Object
    implements Comparable<Identifier>
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + +
    +Constructor Summary
    Identifier(String type, + String value, + String url) + +
    +          Constructs a new Identifier with the specified data.
    Identifier(String type, + String value, + String url, + String description) + +
    +          Constructs a new Identifier with the specified data.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + intcompareTo(Identifier o) + +
    +          Implementation of the comparator interface.
    + booleanequals(Object obj) + +
    +           
    + StringgetDescription() + +
    +          Get the value of description.
    + StringgetType() + +
    +          Get the value of type.
    + StringgetUrl() + +
    +          Get the value of url.
    + StringgetValue() + +
    +          Get the value of value.
    + inthashCode() + +
    +           
    + voidsetDescription(String description) + +
    +          Set the value of description.
    + voidsetType(String type) + +
    +          Set the value of type.
    + voidsetUrl(String url) + +
    +          Set the value of url.
    + voidsetValue(String value) + +
    +          Set the value of value.
    + StringtoString() + +
    +          Standard implementation of toString; displays identifier value and type.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Identifier

    +
    +public Identifier(String type,
    +                  String value,
    +                  String url)
    +
    +
    Constructs a new Identifier with the specified data. +

    +

    +
    Parameters:
    type - the identifier type.
    value - the identifier value.
    url - the identifier url.
    +
    +
    + +

    +Identifier

    +
    +public Identifier(String type,
    +                  String value,
    +                  String url,
    +                  String description)
    +
    +
    Constructs a new Identifier with the specified data. +

    +

    +
    Parameters:
    type - the identifier type.
    value - the identifier value.
    url - the identifier url.
    description - the description of the identifier.
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getValue

    +
    +public String getValue()
    +
    +
    Get the value of value. +

    +

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

    +setValue

    +
    +public void setValue(String value)
    +
    +
    Set the value of value. +

    +

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

    +getUrl

    +
    +public String getUrl()
    +
    +
    Get the value of url. +

    +

    +
    +
    +
    + +
    Returns:
    the value of url
    +
    +
    +
    + +

    +setUrl

    +
    +public void setUrl(String url)
    +
    +
    Set the value of url. +

    +

    +
    +
    +
    +
    Parameters:
    url - new value of url
    +
    +
    +
    + +

    +getType

    +
    +public String getType()
    +
    +
    Get the value of type. +

    +

    +
    +
    +
    + +
    Returns:
    the value of type
    +
    +
    +
    + +

    +setType

    +
    +public void setType(String type)
    +
    +

    Set the value of type.

    Example would be "CPE".

    +

    +

    +
    +
    +
    +
    Parameters:
    type - new value of type
    +
    +
    +
    + +

    +getDescription

    +
    +public String getDescription()
    +
    +
    Get the value of description. +

    +

    +
    +
    +
    + +
    Returns:
    the value of description
    +
    +
    +
    + +

    +setDescription

    +
    +public void setDescription(String description)
    +
    +
    Set the value of description. +

    +

    +
    +
    +
    +
    Parameters:
    description - new value of description
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    +
    Overrides:
    equals in class Object
    +
    +
    +
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    +
    Overrides:
    hashCode in class Object
    +
    +
    +
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Standard implementation of toString; displays identifier value and type. +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    a String representation of the object
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(Identifier o)
    +
    +
    Implementation of the comparator interface. This compares the value of + the identifier only. +

    +

    +
    Specified by:
    compareTo in interface Comparable<Identifier>
    +
    +
    +
    Parameters:
    o - the object being compared +
    Returns:
    an integer indicating the ordering
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html new file mode 100644 index 000000000..18dee4173 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html @@ -0,0 +1,462 @@ + + + + + + + +Reference (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class Reference

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.Reference
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparable<Reference>
    +
    +
    +
    +
    public class Reference
    extends Object
    implements Serializable, Comparable<Reference>
    + + +

    +An external reference for a vulnerability. This contains a name, URL, and a + source. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Reference() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + intcompareTo(Reference o) + +
    +          Implementation of the comparable interface.
    + booleanequals(Object obj) + +
    +           
    + StringgetName() + +
    +          Get the value of name.
    + StringgetSource() + +
    +          Get the value of source.
    + StringgetUrl() + +
    +          Get the value of url.
    + inthashCode() + +
    +           
    + voidsetName(String name) + +
    +          Set the value of name.
    + voidsetSource(String source) + +
    +          Set the value of source.
    + voidsetUrl(String url) + +
    +          Set the value of url.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Reference

    +
    +public Reference()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Get the value of name. +

    +

    +
    +
    +
    + +
    Returns:
    the value of name
    +
    +
    +
    + +

    +setName

    +
    +public void setName(String name)
    +
    +
    Set the value of name. +

    +

    +
    +
    +
    +
    Parameters:
    name - new value of name
    +
    +
    +
    + +

    +getUrl

    +
    +public String getUrl()
    +
    +
    Get the value of url. +

    +

    +
    +
    +
    + +
    Returns:
    the value of url
    +
    +
    +
    + +

    +setUrl

    +
    +public void setUrl(String url)
    +
    +
    Set the value of url. +

    +

    +
    +
    +
    +
    Parameters:
    url - new value of url
    +
    +
    +
    + +

    +getSource

    +
    +public String getSource()
    +
    +
    Get the value of source. +

    +

    +
    +
    +
    + +
    Returns:
    the value of source
    +
    +
    +
    + +

    +setSource

    +
    +public void setSource(String source)
    +
    +
    Set the value of source. +

    +

    +
    +
    +
    +
    Parameters:
    source - new value of source
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    +
    Overrides:
    equals in class Object
    +
    +
    +
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    +
    Overrides:
    hashCode in class Object
    +
    +
    +
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(Reference o)
    +
    +
    Implementation of the comparable interface. +

    +

    +
    Specified by:
    compareTo in interface Comparable<Reference>
    +
    +
    +
    Parameters:
    o - the Reference being compared +
    Returns:
    an integer indicating the ordering of the two objects
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html new file mode 100644 index 000000000..45e37a710 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html @@ -0,0 +1,1033 @@ + + + + + + + +Vulnerability (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class Vulnerability

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.Vulnerability
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparable<Vulnerability>
    +
    +
    +
    +
    public class Vulnerability
    extends Object
    implements Serializable, Comparable<Vulnerability>
    + + +

    +Contains the information about a vulnerability. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Vulnerability() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidaddReference(Reference ref) + +
    +          Adds a reference to the references collection.
    + voidaddReference(String referenceSource, + String referenceName, + String referenceUrl) + +
    +          Adds a reference.
    + booleanaddVulnerableSoftware(String cpe) + +
    +          Adds an entry for vulnerable software.
    + booleanaddVulnerableSoftware(String cpe, + String previousVersion) + +
    +          Adds an entry for vulnerable software.
    + intcompareTo(Vulnerability v) + +
    +          Compares two vulnerabilities.
    + booleanequals(Object obj) + +
    +           
    + StringgetCvssAccessComplexity() + +
    +          Get the value of cvssAccessComplexity.
    + StringgetCvssAccessVector() + +
    +          Get the value of cvssAccessVector.
    + StringgetCvssAuthentication() + +
    +          Get the value of cvssAuthentication.
    + StringgetCvssAvailabilityImpact() + +
    +          Get the value of cvssAvailabilityImpact.
    + StringgetCvssConfidentialityImpact() + +
    +          Get the value of cvssConfidentialityImpact.
    + StringgetCvssIntegrityImpact() + +
    +          Get the value of cvssIntegrityImpact.
    + floatgetCvssScore() + +
    +          Get the value of cvssScore.
    + StringgetCwe() + +
    +          Get the value of cwe.
    + StringgetDescription() + +
    +          Get the value of description.
    + StringgetName() + +
    +          Get the value of name.
    + Set<Reference>getReferences() + +
    +          Get the value of references.
    + Set<VulnerableSoftware>getVulnerableSoftware() + +
    +          Get the value of vulnerableSoftware.
    + inthashCode() + +
    +           
    + voidsetCvssAccessComplexity(String cvssAccessComplexity) + +
    +          Set the value of cvssAccessComplexity.
    + voidsetCvssAccessVector(String cvssAccessVector) + +
    +          Set the value of cvssAccessVector.
    + voidsetCvssAuthentication(String cvssAuthentication) + +
    +          Set the value of cvssAuthentication.
    + voidsetCvssAvailabilityImpact(String cvssAvailabilityImpact) + +
    +          Set the value of cvssAvailabilityImpact.
    + voidsetCvssConfidentialityImpact(String cvssConfidentialityImpact) + +
    +          Set the value of cvssConfidentialityImpact.
    + voidsetCvssIntegrityImpact(String cvssIntegrityImpact) + +
    +          Set the value of cvssIntegrityImpact.
    + voidsetCvssScore(float cvssScore) + +
    +          Set the value of cvssScore.
    + voidsetCwe(String cwe) + +
    +          Set the value of cwe.
    + voidsetDescription(String description) + +
    +          Set the value of description.
    + voidsetName(String name) + +
    +          Set the value of name.
    + voidsetReferences(SortedSet<Reference> references) + +
    +          Set the value of references.
    + voidsetVulnerableSoftware(SortedSet<VulnerableSoftware> vulnerableSoftware) + +
    +          Set the value of vulnerableSoftware.
    + booleanupdateVulnerableSoftware(VulnerableSoftware vulnSoftware) + +
    +          Adds or updates a vulnerable software entry.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Vulnerability

    +
    +public Vulnerability()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Get the value of name. +

    +

    +
    +
    +
    + +
    Returns:
    the value of name
    +
    +
    +
    + +

    +setName

    +
    +public void setName(String name)
    +
    +
    Set the value of name. +

    +

    +
    +
    +
    +
    Parameters:
    name - new value of name
    +
    +
    +
    + +

    +getDescription

    +
    +public String getDescription()
    +
    +
    Get the value of description. +

    +

    +
    +
    +
    + +
    Returns:
    the value of description
    +
    +
    +
    + +

    +setDescription

    +
    +public void setDescription(String description)
    +
    +
    Set the value of description. +

    +

    +
    +
    +
    +
    Parameters:
    description - new value of description
    +
    +
    +
    + +

    +getReferences

    +
    +public Set<Reference> getReferences()
    +
    +
    Get the value of references. +

    +

    +
    +
    +
    + +
    Returns:
    the value of references
    +
    +
    +
    + +

    +setReferences

    +
    +public void setReferences(SortedSet<Reference> references)
    +
    +
    Set the value of references. +

    +

    +
    +
    +
    +
    Parameters:
    references - new value of references
    +
    +
    +
    + +

    +addReference

    +
    +public void addReference(Reference ref)
    +
    +
    Adds a reference to the references collection. +

    +

    +
    +
    +
    +
    Parameters:
    ref - a reference for the vulnerability
    +
    +
    +
    + +

    +addReference

    +
    +public void addReference(String referenceSource,
    +                         String referenceName,
    +                         String referenceUrl)
    +
    +
    Adds a reference. +

    +

    +
    +
    +
    +
    Parameters:
    referenceSource - the source of the reference
    referenceName - the referenceName of the reference
    referenceUrl - the url of the reference
    +
    +
    +
    + +

    +getVulnerableSoftware

    +
    +public Set<VulnerableSoftware> getVulnerableSoftware()
    +
    +
    Get the value of vulnerableSoftware. +

    +

    +
    +
    +
    + +
    Returns:
    the value of vulnerableSoftware
    +
    +
    +
    + +

    +setVulnerableSoftware

    +
    +public void setVulnerableSoftware(SortedSet<VulnerableSoftware> vulnerableSoftware)
    +
    +
    Set the value of vulnerableSoftware. +

    +

    +
    +
    +
    +
    Parameters:
    vulnerableSoftware - new value of vulnerableSoftware
    +
    +
    +
    + +

    +addVulnerableSoftware

    +
    +public boolean addVulnerableSoftware(String cpe)
    +
    +
    Adds an entry for vulnerable software. +

    +

    +
    +
    +
    +
    Parameters:
    cpe - string representation of a CPE entry +
    Returns:
    if the add succeeded
    +
    +
    +
    + +

    +addVulnerableSoftware

    +
    +public boolean addVulnerableSoftware(String cpe,
    +                                     String previousVersion)
    +
    +
    Adds an entry for vulnerable software. +

    +

    +
    +
    +
    +
    Parameters:
    cpe - string representation of a cpe
    previousVersion - the previous version (previousVersion - cpe would + be considered vulnerable) +
    Returns:
    if the add succeeded
    +
    +
    +
    + +

    +updateVulnerableSoftware

    +
    +public boolean updateVulnerableSoftware(VulnerableSoftware vulnSoftware)
    +
    +
    Adds or updates a vulnerable software entry. +

    +

    +
    +
    +
    +
    Parameters:
    vulnSoftware - the vulnerable software +
    Returns:
    if the update succeeded
    +
    +
    +
    + +

    +getCwe

    +
    +public String getCwe()
    +
    +
    Get the value of cwe. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cwe
    +
    +
    +
    + +

    +setCwe

    +
    +public void setCwe(String cwe)
    +
    +
    Set the value of cwe. +

    +

    +
    +
    +
    +
    Parameters:
    cwe - new value of cwe
    +
    +
    +
    + +

    +getCvssScore

    +
    +public float getCvssScore()
    +
    +
    Get the value of cvssScore. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssScore
    +
    +
    +
    + +

    +setCvssScore

    +
    +public void setCvssScore(float cvssScore)
    +
    +
    Set the value of cvssScore. +

    +

    +
    +
    +
    +
    Parameters:
    cvssScore - new value of cvssScore
    +
    +
    +
    + +

    +getCvssAccessVector

    +
    +public String getCvssAccessVector()
    +
    +
    Get the value of cvssAccessVector. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssAccessVector
    +
    +
    +
    + +

    +setCvssAccessVector

    +
    +public void setCvssAccessVector(String cvssAccessVector)
    +
    +
    Set the value of cvssAccessVector. +

    +

    +
    +
    +
    +
    Parameters:
    cvssAccessVector - new value of cvssAccessVector
    +
    +
    +
    + +

    +getCvssAccessComplexity

    +
    +public String getCvssAccessComplexity()
    +
    +
    Get the value of cvssAccessComplexity. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssAccessComplexity
    +
    +
    +
    + +

    +setCvssAccessComplexity

    +
    +public void setCvssAccessComplexity(String cvssAccessComplexity)
    +
    +
    Set the value of cvssAccessComplexity. +

    +

    +
    +
    +
    +
    Parameters:
    cvssAccessComplexity - new value of cvssAccessComplexity
    +
    +
    +
    + +

    +getCvssAuthentication

    +
    +public String getCvssAuthentication()
    +
    +
    Get the value of cvssAuthentication. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssAuthentication
    +
    +
    +
    + +

    +setCvssAuthentication

    +
    +public void setCvssAuthentication(String cvssAuthentication)
    +
    +
    Set the value of cvssAuthentication. +

    +

    +
    +
    +
    +
    Parameters:
    cvssAuthentication - new value of cvssAuthentication
    +
    +
    +
    + +

    +getCvssConfidentialityImpact

    +
    +public String getCvssConfidentialityImpact()
    +
    +
    Get the value of cvssConfidentialityImpact. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssConfidentialityImpact
    +
    +
    +
    + +

    +setCvssConfidentialityImpact

    +
    +public void setCvssConfidentialityImpact(String cvssConfidentialityImpact)
    +
    +
    Set the value of cvssConfidentialityImpact. +

    +

    +
    +
    +
    +
    Parameters:
    cvssConfidentialityImpact - new value of cvssConfidentialityImpact
    +
    +
    +
    + +

    +getCvssIntegrityImpact

    +
    +public String getCvssIntegrityImpact()
    +
    +
    Get the value of cvssIntegrityImpact. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssIntegrityImpact
    +
    +
    +
    + +

    +setCvssIntegrityImpact

    +
    +public void setCvssIntegrityImpact(String cvssIntegrityImpact)
    +
    +
    Set the value of cvssIntegrityImpact. +

    +

    +
    +
    +
    +
    Parameters:
    cvssIntegrityImpact - new value of cvssIntegrityImpact
    +
    +
    +
    + +

    +getCvssAvailabilityImpact

    +
    +public String getCvssAvailabilityImpact()
    +
    +
    Get the value of cvssAvailabilityImpact. +

    +

    +
    +
    +
    + +
    Returns:
    the value of cvssAvailabilityImpact
    +
    +
    +
    + +

    +setCvssAvailabilityImpact

    +
    +public void setCvssAvailabilityImpact(String cvssAvailabilityImpact)
    +
    +
    Set the value of cvssAvailabilityImpact. +

    +

    +
    +
    +
    +
    Parameters:
    cvssAvailabilityImpact - new value of cvssAvailabilityImpact
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    +
    Overrides:
    equals in class Object
    +
    +
    +
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    +
    Overrides:
    hashCode in class Object
    +
    +
    +
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(Vulnerability v)
    +
    +
    Compares two vulnerabilities. +

    +

    +
    Specified by:
    compareTo in interface Comparable<Vulnerability>
    +
    +
    +
    Parameters:
    v - a vulnerability to be compared +
    Returns:
    a negative integer, zero, or a positive integer as this object is + less than, equal to, or greater than the specified vulnerability
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html new file mode 100644 index 000000000..acd0bae7a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html @@ -0,0 +1,281 @@ + + + + + + + +VulnerabilityComparator (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class VulnerabilityComparator

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.dependency.VulnerabilityComparator
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparator<Vulnerability>
    +
    +
    +
    +
    public class VulnerabilityComparator
    extends Object
    implements Comparator<Vulnerability>, Serializable
    + + +

    +Comparator for Vulnerability objects. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    VulnerabilityComparator() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + intcompare(Vulnerability o1, + Vulnerability o2) + +
    +          Implements the comparison of vulnerabilities.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface java.util.Comparator
    equals
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VulnerabilityComparator

    +
    +public VulnerabilityComparator()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +compare

    +
    +public int compare(Vulnerability o1,
    +                   Vulnerability o2)
    +
    +
    Implements the comparison of vulnerabilities. +

    +

    +
    Specified by:
    compare in interface Comparator<Vulnerability>
    +
    +
    +
    Parameters:
    o1 - a vulnerability
    o2 - a second vulnerability +
    Returns:
    the comparison
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html new file mode 100644 index 000000000..a38033d12 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html @@ -0,0 +1,688 @@ + + + + + + + +VulnerableSoftware (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.dependency +
    +Class VulnerableSoftware

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cpe.IndexEntry
    +      extended by org.owasp.dependencycheck.dependency.VulnerableSoftware
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparable<VulnerableSoftware>
    +
    +
    +
    +
    public class VulnerableSoftware
    extends IndexEntry
    implements Serializable, Comparable<VulnerableSoftware>
    + + +

    +A record containing information about vulnerable software. This is referenced + from a vulnerability. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    VulnerableSoftware() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + intcompareTo(VulnerableSoftware vs) + +
    +          Implementation of the comparable interface.
    + booleanequals(Object obj) + +
    +          Standard equals implementation to compare this VulnerableSoftware to + another object.
    + StringgetEdition() + +
    +          Get the value of edition.
    + StringgetName() + +
    +          Get the value of name.
    + StringgetPreviousVersion() + +
    +          Get the value of previousVersion.
    + StringgetRevision() + +
    +          Get the value of revision.
    + StringgetVersion() + +
    +          Get the value of version.
    + inthashCode() + +
    +          Standard implementation of hashCode.
    + booleanhasPreviousVersion() + +
    +          Indicates if previous versions of this software are vulnerable.
    + voidparseName(String cpeName) + +
    +          Parses a name attribute value, from the cpe.xml, into its + corresponding parts: vendor, product, version, revision.
    + voidsetCpe(String cpe) + +
    +          Parse a CPE entry from the cpe string representation.
    + voidsetEdition(String edition) + +
    +          Set the value of edition.
    + voidsetName(String name) + +
    +          Set the value of name.
    + voidsetPreviousVersion(String previousVersion) + +
    +          Set the value of previousVersion.
    + voidsetRevision(String revision) + +
    +          Set the value of revision.
    + voidsetVersion(String version) + +
    +          Set the value of version.
    + StringtoString() + +
    +          Standard toString() implementation display the name and whether or not + previous versions are also affected.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.cpe.IndexEntry
    getDocumentId, getProduct, getSearchScore, getVendor, setDocumentId, setProduct, setSearchScore, setVendor
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VulnerableSoftware

    +
    +public VulnerableSoftware()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +setCpe

    +
    +public void setCpe(String cpe)
    +
    +
    Parse a CPE entry from the cpe string representation. +

    +

    +
    +
    +
    +
    Parameters:
    cpe - a cpe entry (e.g. cpe:/a:vendor:software:version)
    +
    +
    +
    + +

    +parseName

    +
    +public void parseName(String cpeName)
    +               throws UnsupportedEncodingException
    +
    +

    Parses a name attribute value, from the cpe.xml, into its + corresponding parts: vendor, product, version, revision.

    +

    Example:

    +    cpe:/a:apache:struts:1.1:rc2 + +

    Results in:

    • Vendor: apache
    • Product: struts
    • +
    • Version: 1.1
    • Revision: rc2
    +

    +

    +
    Overrides:
    parseName in class IndexEntry
    +
    +
    +
    Parameters:
    cpeName - the cpe name +
    Throws: +
    UnsupportedEncodingException - should never be thrown...
    +
    +
    +
    + +

    +hasPreviousVersion

    +
    +public boolean hasPreviousVersion()
    +
    +
    Indicates if previous versions of this software are vulnerable. +

    +

    +
    +
    +
    + +
    Returns:
    if previous versions of this software are vulnerable
    +
    +
    +
    + +

    +getPreviousVersion

    +
    +public String getPreviousVersion()
    +
    +
    Get the value of previousVersion. +

    +

    +
    +
    +
    + +
    Returns:
    the value of previousVersion
    +
    +
    +
    + +

    +setPreviousVersion

    +
    +public void setPreviousVersion(String previousVersion)
    +
    +
    Set the value of previousVersion. +

    +

    +
    +
    +
    +
    Parameters:
    previousVersion - new value of previousVersion
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    Standard equals implementation to compare this VulnerableSoftware to + another object. +

    +

    +
    Overrides:
    equals in class IndexEntry
    +
    +
    +
    Parameters:
    obj - the object to compare +
    Returns:
    whether or not the objects are equal
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Standard implementation of hashCode. +

    +

    +
    Overrides:
    hashCode in class IndexEntry
    +
    +
    + +
    Returns:
    the hashCode for the object
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Standard toString() implementation display the name and whether or not + previous versions are also affected. +

    +

    +
    Overrides:
    toString in class IndexEntry
    +
    +
    + +
    Returns:
    a string representation of the object
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(VulnerableSoftware vs)
    +
    +
    Implementation of the comparable interface. +

    +

    +
    Specified by:
    compareTo in interface Comparable<VulnerableSoftware>
    +
    +
    +
    Parameters:
    vs - the VulnerableSoftware to compare +
    Returns:
    an integer indicating the ordering of the two objects
    +
    +
    +
    + +

    +getName

    +
    +public String getName()
    +
    +
    Get the value of name. +

    +

    +
    +
    +
    + +
    Returns:
    the value of name
    +
    +
    +
    + +

    +setName

    +
    +public void setName(String name)
    +
    +
    Set the value of name. +

    +

    +
    +
    +
    +
    Parameters:
    name - new value of name
    +
    +
    +
    + +

    +getVersion

    +
    +public String getVersion()
    +
    +
    Get the value of version. +

    +

    +
    +
    +
    + +
    Returns:
    the value of version
    +
    +
    +
    + +

    +setVersion

    +
    +public void setVersion(String version)
    +
    +
    Set the value of version. +

    +

    +
    +
    +
    +
    Parameters:
    version - new value of version
    +
    +
    +
    + +

    +getRevision

    +
    +public String getRevision()
    +
    +
    Get the value of revision. +

    +

    +
    +
    +
    + +
    Returns:
    the value of revision
    +
    +
    +
    + +

    +setRevision

    +
    +public void setRevision(String revision)
    +
    +
    Set the value of revision. +

    +

    +
    +
    +
    +
    Parameters:
    revision - new value of revision
    +
    +
    +
    + +

    +getEdition

    +
    +public String getEdition()
    +
    +
    Get the value of edition. +

    +

    +
    +
    +
    + +
    Returns:
    the value of edition
    +
    +
    +
    + +

    +setEdition

    +
    +public void setEdition(String edition)
    +
    +
    Set the value of edition. +

    +

    +
    +
    +
    +
    Parameters:
    edition - new value of edition
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html new file mode 100644 index 000000000..b4f497d6b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html @@ -0,0 +1,508 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.Dependency

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use Dependency
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. 
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck that return types with arguments of type Dependency
    + List<Dependency>Engine.getDependencies() + +
    +          Get the dependencies identified.
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer with parameters of type Dependency
    + voidVulnerabilitySuppressionAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +           
    + voidNvdCveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidJavaScriptAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidJarAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Loads a specified JAR file and collects information from the manifest and + checksums to identify the correct CPE information.
    + voidHintAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          The HintAnalyzer uses knowledge about a dependency to add additional + information to help in identification of identifiers or vulnerabilities.
    + voidFileNameAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Collects information about the file name.
    + voidFalsePositiveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the dependencies and removes bad/incorrect CPE associations + based on various heuristics.
    + voidDependencyBundlingAnalyzer.analyze(Dependency ignore, + Engine engine) + +
    +          Analyzes a set of dependencies.
    + voidCpeSuppressionAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +           
    + voidCPEAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    + voidArchiveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a given dependency.
    + voidAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    +protected  voidJarAnalyzer.analyzePackageNames(ArrayList<JarAnalyzer.ClassNameInformation> classNames, + Dependency dependency, + boolean addPackagesAsEvidence) + +
    +          Analyzes the path information of the classes contained within the + JarAnalyzer to try and determine possible vendor or product names.
    +protected  booleanJarAnalyzer.analyzePOM(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classes) + +
    +          Attempts to find a pom.xml within the JAR file.
    +protected  voidCPEAnalyzer.determineCPE(Dependency dependency) + +
    +          Searches the data store of CPE entries, trying to identify the CPE for + the given dependency based on the evidence contained within.
    +protected  booleanJarAnalyzer.parseManifest(Dependency dependency, + ArrayList<JarAnalyzer.ClassNameInformation> classInformation) + +
    +          Reads the manifest from the JAR file and collects the entries.
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return types with arguments of type Dependency
    + Set<Dependency>Dependency.getRelatedDependencies() + +
    +          Get the value of relatedDependencies.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type Dependency
    + voidDependency.addRelatedDependency(Dependency dependency) + +
    +          Adds a related dependency.
    + intDependency.compareTo(Dependency o) + +
    +          Implementation of the Comparable interface.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.dependency with type arguments of type Dependency
    + voidDependency.setRelatedDependencies(Set<Dependency> relatedDependencies) + +
    +          Set the value of relatedDependencies.
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck.reporting
    +  +

    + + + + + + + + +
    Constructor parameters in org.owasp.dependencycheck.reporting with type arguments of type Dependency
    ReportGenerator(String applicationName, + List<Dependency> dependencies, + List<Analyzer> analyzers) + +
    +          Constructs a new ReportGenerator.
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression with parameters of type Dependency
    + voidSuppressionRule.process(Dependency dependency) + +
    +          Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS + scores should be suppressed.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html new file mode 100644 index 000000000..774c0d7ac --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html @@ -0,0 +1,265 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Evidence.Confidence (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.Evidence.Confidence

    +
    + + + + + + + + + +
    +Packages that use Evidence.Confidence
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of Evidence.Confidence in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return Evidence.Confidence
    + Evidence.ConfidenceEvidence.getConfidence() + +
    +          Get the value of confidence.
    +static Evidence.ConfidenceEvidence.Confidence.valueOf(String name) + +
    +          Returns the enum constant of this type with the specified name.
    +static Evidence.Confidence[]Evidence.Confidence.values() + +
    +          Returns an array containing the constants of this enum type, in +the order they are declared.
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type Evidence.Confidence
    + voidEvidenceCollection.addEvidence(String source, + String name, + String value, + Evidence.Confidence confidence) + +
    +          Creates an Evidence object from the parameters and adds the resulting + object to the collection.
    + booleanEvidenceCollection.contains(Evidence.Confidence confidence) + +
    +          Returns whether or not the collection contains evidence of a specified + Confidence.
    + Iterable<Evidence>EvidenceCollection.iterator(Evidence.Confidence confidence) + +
    +          Used to iterate over evidence of the specified confidence.
    + voidEvidence.setConfidence(Evidence.Confidence confidence) + +
    +          Set the value of confidence.
    +  +

    + + + + + + + + +
    Constructors in org.owasp.dependencycheck.dependency with parameters of type Evidence.Confidence
    Evidence(String source, + String name, + String value, + Evidence.Confidence confidence) + +
    +          Creates a new Evidence objects.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html new file mode 100644 index 000000000..1fb8701bd --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html @@ -0,0 +1,243 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Evidence (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.Evidence

    +
    + + + + + + + + + +
    +Packages that use Evidence
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of Evidence in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return types with arguments of type Evidence
    + Set<Evidence>EvidenceCollection.getEvidence() + +
    +          Returns the set of evidence.
    + Set<Evidence>EvidenceCollection.getEvidence(String source) + +
    +          Returns the set of evidence from a given source.
    + Set<Evidence>EvidenceCollection.getEvidence(String source, + String name) + +
    +          Returns the set of evidence from a given source and name.
    + Iterator<Evidence>EvidenceCollection.iterator() + +
    +          Implements the iterator interface for the Evidence Collection.
    + Iterable<Evidence>EvidenceCollection.iterator(Evidence.Confidence confidence) + +
    +          Used to iterate over evidence of the specified confidence.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type Evidence
    + voidEvidenceCollection.addEvidence(Evidence e) + +
    +          Adds evidence to the collection.
    + intEvidence.compareTo(Evidence o) + +
    +          Implementation of the comparable interface.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html new file mode 100644 index 000000000..bef655694 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html @@ -0,0 +1,260 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.EvidenceCollection (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.EvidenceCollection

    +
    + + + + + + + + + +
    +Packages that use EvidenceCollection
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of EvidenceCollection in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return EvidenceCollection
    + EvidenceCollectionDependency.getEvidence() + +
    +          Returns the evidence used to identify this dependency.
    + EvidenceCollectionDependency.getEvidenceUsed() + +
    +          Returns the evidence used to identify this dependency.
    + EvidenceCollectionDependency.getProductEvidence() + +
    +          Gets the Product Evidence.
    + EvidenceCollectionDependency.getVendorEvidence() + +
    +          Gets the Vendor Evidence.
    + EvidenceCollectionDependency.getVersionEvidence() + +
    +          Gets the Version Evidence.
    +static EvidenceCollectionEvidenceCollection.merge(EvidenceCollection... ec) + +
    +          Merges multiple EvidenceCollections together.
    +static EvidenceCollectionEvidenceCollection.mergeUsed(EvidenceCollection... ec) + +
    +          Merges multiple EvidenceCollections together, only merging evidence that + was used, into a new EvidenceCollection.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type EvidenceCollection
    +static EvidenceCollectionEvidenceCollection.merge(EvidenceCollection... ec) + +
    +          Merges multiple EvidenceCollections together.
    +static EvidenceCollectionEvidenceCollection.mergeUsed(EvidenceCollection... ec) + +
    +          Merges multiple EvidenceCollections together, only merging evidence that + was used, into a new EvidenceCollection.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html new file mode 100644 index 000000000..cad7591b7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html @@ -0,0 +1,227 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Identifier (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.Identifier

    +
    + + + + + + + + + +
    +Packages that use Identifier
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of Identifier in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return types with arguments of type Identifier
    + Set<Identifier>Dependency.getIdentifiers() + +
    +          Returns a List of Identifiers.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type Identifier
    + voidDependency.addIdentifier(Identifier identifier) + +
    +          Adds an entry to the list of detected Identifiers for the dependency + file.
    + intIdentifier.compareTo(Identifier o) + +
    +          Implementation of the comparator interface.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.dependency with type arguments of type Identifier
    + voidDependency.setIdentifiers(Set<Identifier> identifiers) + +
    +          Sets a List of Identifiers.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html new file mode 100644 index 000000000..bcbe31e5c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html @@ -0,0 +1,226 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Reference (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.Reference

    +
    + + + + + + + + + +
    +Packages that use Reference
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of Reference in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return types with arguments of type Reference
    + Set<Reference>Vulnerability.getReferences() + +
    +          Get the value of references.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type Reference
    + voidVulnerability.addReference(Reference ref) + +
    +          Adds a reference to the references collection.
    + intReference.compareTo(Reference o) + +
    +          Implementation of the comparable interface.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.dependency with type arguments of type Reference
    + voidVulnerability.setReferences(SortedSet<Reference> references) + +
    +          Set the value of references.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html new file mode 100644 index 000000000..6f8127a56 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html @@ -0,0 +1,285 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.Vulnerability

    +
    + + + + + + + + + + + + + +
    +Packages that use Vulnerability
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of Vulnerability in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve that return types with arguments of type Vulnerability
    + List<Vulnerability>CveDB.getVulnerabilities(String cpeStr) + +
    +          Retrieves the vulnerabilities associated with the specified CPE.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve with parameters of type Vulnerability
    + voidCveDB.updateVulnerability(Vulnerability vuln) + +
    +          Updates the vulnerability within the database.
    +  +

    + + + + + +
    +Uses of Vulnerability in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return types with arguments of type Vulnerability
    + SortedSet<Vulnerability>Dependency.getVulnerabilities() + +
    +          Get the list of vulnerabilities.
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type Vulnerability
    + voidDependency.addVulnerability(Vulnerability vulnerability) + +
    +          Adds a vulnerability to the dependency.
    + intVulnerabilityComparator.compare(Vulnerability o1, + Vulnerability o2) + +
    +          Implements the comparison of vulnerabilities.
    + intVulnerability.compareTo(Vulnerability v) + +
    +          Compares two vulnerabilities.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.dependency with type arguments of type Vulnerability
    + voidDependency.setVulnerabilities(SortedSet<Vulnerability> vulnerabilities) + +
    +          Set the value of vulnerabilities.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html new file mode 100644 index 000000000..d2124a9fc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.VulnerabilityComparator (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.VulnerabilityComparator

    +
    +No usage of org.owasp.dependencycheck.dependency.VulnerabilityComparator +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html new file mode 100644 index 000000000..b49fdea30 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html @@ -0,0 +1,286 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.dependency.VulnerableSoftware

    +
    + + + + + + + + + + + + + +
    +Packages that use VulnerableSoftware
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    +  +

    + + + + + +
    +Uses of VulnerableSoftware in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve that return types with arguments of type VulnerableSoftware
    + Set<VulnerableSoftware>CveDB.getCPEs(String vendor, + String product) + +
    +          Searches the CPE entries in the database and retrieves all entries for a + given vendor and product combination.
    + Map<String,List<VulnerableSoftware>>NvdCve12Handler.getVulnerabilities() + +
    +          Get the value of vulnerabilities.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.data.nvdcve with type arguments of type VulnerableSoftware
    + voidNvdCve20Handler.setPrevVersionVulnMap(Map<String,List<VulnerableSoftware>> map) + +
    +          Sets the prevVersionVulnMap.
    +  +

    + + + + + +
    +Uses of VulnerableSoftware in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency that return types with arguments of type VulnerableSoftware
    + Set<VulnerableSoftware>Vulnerability.getVulnerableSoftware() + +
    +          Get the value of vulnerableSoftware.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type VulnerableSoftware
    + intVulnerableSoftware.compareTo(VulnerableSoftware vs) + +
    +          Implementation of the comparable interface.
    + booleanVulnerability.updateVulnerableSoftware(VulnerableSoftware vulnSoftware) + +
    +          Adds or updates a vulnerable software entry.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.dependency with type arguments of type VulnerableSoftware
    + voidVulnerability.setVulnerableSoftware(SortedSet<VulnerableSoftware> vulnerableSoftware) + +
    +          Set the value of vulnerableSoftware.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html new file mode 100644 index 000000000..a1b815baa --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html @@ -0,0 +1,58 @@ + + + + + + + +org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.dependency + + + + +
    +Classes  + +
    +Dependency +
    +Evidence +
    +EvidenceCollection +
    +Identifier +
    +Reference +
    +Vulnerability +
    +VulnerabilityComparator +
    +VulnerableSoftware
    + + + + + + +
    +Enums  + +
    +Evidence.Confidence
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html new file mode 100644 index 000000000..80eeb5491 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html @@ -0,0 +1,227 @@ + + + + + + + +org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.dependency +

    + + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    DependencyA program dependency.
    EvidenceEvidence is a piece of information about a Dependency.
    EvidenceCollectionUsed to maintain a collection of Evidence.
    Identifier 
    ReferenceAn external reference for a vulnerability.
    VulnerabilityContains the information about a vulnerability.
    VulnerabilityComparatorComparator for Vulnerability objects.
    VulnerableSoftwareA record containing information about vulnerable software.
    +  + +

    + + + + + + + + + +
    +Enum Summary
    Evidence.ConfidenceThe confidence that the evidence is "high" quality.
    +  + +

    +

    +Package org.owasp.dependencycheck.dependency Description +

    + +

    + + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html new file mode 100644 index 000000000..4ab0d3cf8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html @@ -0,0 +1,175 @@ + + + + + + + +org.owasp.dependencycheck.dependency Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.dependency +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +

    +Enum Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html new file mode 100644 index 000000000..90c9742c7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html @@ -0,0 +1,345 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.dependency

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.dependency
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. 
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck
    Dependency + +
    +          A program dependency.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck.analyzer
    Dependency + +
    +          A program dependency.
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck.data.nvdcve
    Vulnerability + +
    +          Contains the information about a vulnerability.
    VulnerableSoftware + +
    +          A record containing information about vulnerable software.
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck.dependency
    Dependency + +
    +          A program dependency.
    Evidence + +
    +          Evidence is a piece of information about a Dependency.
    Evidence.Confidence + +
    +          The confidence that the evidence is "high" quality.
    EvidenceCollection + +
    +          Used to maintain a collection of Evidence.
    Identifier + +
    +           
    Reference + +
    +          An external reference for a vulnerability.
    Vulnerability + +
    +          Contains the information about a vulnerability.
    VulnerableSoftware + +
    +          A record containing information about vulnerable software.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck.reporting
    Dependency + +
    +          A program dependency.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck.suppression
    Dependency + +
    +          A program dependency.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html new file mode 100644 index 000000000..e45cafe71 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html @@ -0,0 +1,377 @@ + + + + + + + +MavenNamespaceFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom +
    +Class MavenNamespaceFilter

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.XMLFilterImpl
    +      extended by org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter
    +
    +
    +
    All Implemented Interfaces:
    ContentHandler, DTDHandler, EntityResolver, ErrorHandler, XMLFilter, XMLReader
    +
    +
    +
    +
    public class MavenNamespaceFilter
    extends org.xml.sax.helpers.XMLFilterImpl
    + + +

    +This filter is used when parsing POM documents. Some POM documents do not + specify the xmlns="http://maven.apache.org/POM/4.0.0". This filter ensures + that the correct namespace is added so that both types of POMs can be read. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    MavenNamespaceFilter() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidendElement(String uri, + String localName, + String qName) + +
    +          Indicatees the start of the document.
    + voidstartDocument() + +
    +          Called at the start of the document parsing.
    + voidstartElement(String uri, + String localName, + String qName, + Attributes atts) + +
    +          Called when an element is started.
    + voidstartPrefixMapping(String prefix, + String url) + +
    +          Called when prefix mapping is started.
    + + + + + + + +
    Methods inherited from class org.xml.sax.helpers.XMLFilterImpl
    characters, endDocument, endPrefixMapping, error, fatalError, getContentHandler, getDTDHandler, getEntityResolver, getErrorHandler, getFeature, getParent, getProperty, ignorableWhitespace, notationDecl, parse, parse, processingInstruction, resolveEntity, setContentHandler, setDocumentLocator, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setParent, setProperty, skippedEntity, unparsedEntityDecl, warning
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +MavenNamespaceFilter

    +
    +public MavenNamespaceFilter()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +startDocument

    +
    +public void startDocument()
    +                   throws SAXException
    +
    +
    Called at the start of the document parsing. +

    +

    +
    Specified by:
    startDocument in interface ContentHandler
    Overrides:
    startDocument in class org.xml.sax.helpers.XMLFilterImpl
    +
    +
    + +
    Throws: +
    SAXException - thrown if there is a SAXException
    +
    +
    +
    + +

    +startElement

    +
    +public void startElement(String uri,
    +                         String localName,
    +                         String qName,
    +                         Attributes atts)
    +                  throws SAXException
    +
    +
    Called when an element is started. +

    +

    +
    Specified by:
    startElement in interface ContentHandler
    Overrides:
    startElement in class org.xml.sax.helpers.XMLFilterImpl
    +
    +
    +
    Parameters:
    uri - the uri
    localName - the localName
    qName - the qualified name
    atts - the attributes +
    Throws: +
    SAXException - thrown if there is a SAXException
    +
    +
    +
    + +

    +endElement

    +
    +public void endElement(String uri,
    +                       String localName,
    +                       String qName)
    +                throws SAXException
    +
    +
    Indicatees the start of the document. +

    +

    +
    Specified by:
    endElement in interface ContentHandler
    Overrides:
    endElement in class org.xml.sax.helpers.XMLFilterImpl
    +
    +
    +
    Parameters:
    uri - the uri
    localName - the localName
    qName - the qualified name +
    Throws: +
    SAXException - thrown if there is a SAXException
    +
    +
    +
    + +

    +startPrefixMapping

    +
    +public void startPrefixMapping(String prefix,
    +                               String url)
    +                        throws SAXException
    +
    +
    Called when prefix mapping is started. +

    +

    +
    Specified by:
    startPrefixMapping in interface ContentHandler
    Overrides:
    startPrefixMapping in class org.xml.sax.helpers.XMLFilterImpl
    +
    +
    +
    Parameters:
    prefix - the prefix
    url - the url +
    Throws: +
    SAXException - thrown if there is a SAXException
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html new file mode 100644 index 000000000..42d2a6824 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter

    +
    +No usage of org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html new file mode 100644 index 000000000..adbd0f1fe --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html @@ -0,0 +1,641 @@ + + + + + + + +Activation (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Activation

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Activation
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Activation
    extends Object
    + + +

    +The conditions within the build runtime environment which will trigger + the automatic inclusion of the build profile. + + +

    Java class for Activation complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Activation">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="activeByDefault" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="jdk" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="os" type="{http://maven.apache.org/POM/4.0.0}ActivationOS" minOccurs="0"/>
    +         <element name="property" type="{http://maven.apache.org/POM/4.0.0}ActivationProperty" minOccurs="0"/>
    +         <element name="file" type="{http://maven.apache.org/POM/4.0.0}ActivationFile" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  BooleanactiveByDefault + +
    +           
    +protected  ActivationFilefile + +
    +           
    +protected  Stringjdk + +
    +           
    +protected  ActivationOSos + +
    +           
    +protected  ActivationPropertyproperty + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Activation() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + ActivationFilegetFile() + +
    +          Gets the value of the file property.
    + StringgetJdk() + +
    +          Gets the value of the jdk property.
    + ActivationOSgetOs() + +
    +          Gets the value of the os property.
    + ActivationPropertygetProperty() + +
    +          Gets the value of the property property.
    + BooleanisActiveByDefault() + +
    +          Gets the value of the activeByDefault property.
    + voidsetActiveByDefault(Boolean value) + +
    +          Sets the value of the activeByDefault property.
    + voidsetFile(ActivationFile value) + +
    +          Sets the value of the file property.
    + voidsetJdk(String value) + +
    +          Sets the value of the jdk property.
    + voidsetOs(ActivationOS value) + +
    +          Sets the value of the os property.
    + voidsetProperty(ActivationProperty value) + +
    +          Sets the value of the property property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +activeByDefault

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean activeByDefault
    +
    +
    +
    +
    +
    + +

    +jdk

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String jdk
    +
    +
    +
    +
    +
    + +

    +os

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ActivationOS os
    +
    +
    +
    +
    +
    + +

    +property

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ActivationProperty property
    +
    +
    +
    +
    +
    + +

    +file

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ActivationFile file
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Activation

    +
    +public Activation()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isActiveByDefault

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isActiveByDefault()
    +
    +
    Gets the value of the activeByDefault property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setActiveByDefault

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setActiveByDefault(Boolean value)
    +
    +
    Sets the value of the activeByDefault property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getJdk

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getJdk()
    +
    +
    Gets the value of the jdk property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setJdk

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setJdk(String value)
    +
    +
    Sets the value of the jdk property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOs

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ActivationOS getOs()
    +
    +
    Gets the value of the os property. +

    +

    + +
    Returns:
    possible object is + ActivationOS
    +
    +
    +
    + +

    +setOs

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOs(ActivationOS value)
    +
    +
    Sets the value of the os property. +

    +

    +
    Parameters:
    value - allowed object is + ActivationOS
    +
    +
    +
    + +

    +getProperty

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ActivationProperty getProperty()
    +
    +
    Gets the value of the property property. +

    +

    + +
    Returns:
    possible object is + ActivationProperty
    +
    +
    +
    + +

    +setProperty

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setProperty(ActivationProperty value)
    +
    +
    Sets the value of the property property. +

    +

    +
    Parameters:
    value - allowed object is + ActivationProperty
    +
    +
    +
    + +

    +getFile

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ActivationFile getFile()
    +
    +
    Gets the value of the file property. +

    +

    + +
    Returns:
    possible object is + ActivationFile
    +
    +
    +
    + +

    +setFile

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFile(ActivationFile value)
    +
    +
    Sets the value of the file property. +

    +

    +
    Parameters:
    value - allowed object is + ActivationFile
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html new file mode 100644 index 000000000..761eccf27 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html @@ -0,0 +1,423 @@ + + + + + + + +ActivationFile (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ActivationFile

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class ActivationFile
    extends Object
    + + +

    +This is the file specification used to activate the profile. The missing value will be the location + of a file that needs to exist, and if it doesn't the profile will be activated. On the other hand exists will test + for the existence of the file and if it is there the profile will be activated. + + +

    Java class for ActivationFile complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="ActivationFile">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="missing" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="exists" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringexists + +
    +           
    +protected  Stringmissing + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ActivationFile() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetExists() + +
    +          Gets the value of the exists property.
    + StringgetMissing() + +
    +          Gets the value of the missing property.
    + voidsetExists(String value) + +
    +          Sets the value of the exists property.
    + voidsetMissing(String value) + +
    +          Sets the value of the missing property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +missing

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String missing
    +
    +
    +
    +
    +
    + +

    +exists

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String exists
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ActivationFile

    +
    +public ActivationFile()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getMissing

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getMissing()
    +
    +
    Gets the value of the missing property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setMissing

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setMissing(String value)
    +
    +
    Sets the value of the missing property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getExists

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getExists()
    +
    +
    Gets the value of the exists property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setExists

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExists(String value)
    +
    +
    Sets the value of the exists property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html new file mode 100644 index 000000000..86407ae5b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html @@ -0,0 +1,568 @@ + + + + + + + +ActivationOS (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ActivationOS

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class ActivationOS
    extends Object
    + + +

    +This is an activator which will detect an operating system's attributes in order to activate + its profile. + + +

    Java class for ActivationOS complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="ActivationOS">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="family" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="arch" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringarch + +
    +           
    +protected  Stringfamily + +
    +           
    +protected  Stringname + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ActivationOS() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArch() + +
    +          Gets the value of the arch property.
    + StringgetFamily() + +
    +          Gets the value of the family property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + voidsetArch(String value) + +
    +          Sets the value of the arch property.
    + voidsetFamily(String value) + +
    +          Sets the value of the family property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +family

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String family
    +
    +
    +
    +
    +
    + +

    +arch

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String arch
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ActivationOS

    +
    +public ActivationOS()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getFamily

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getFamily()
    +
    +
    Gets the value of the family property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setFamily

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFamily(String value)
    +
    +
    Sets the value of the family property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArch

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArch()
    +
    +
    Gets the value of the arch property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArch

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArch(String value)
    +
    +
    Sets the value of the arch property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html new file mode 100644 index 000000000..1d123db31 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html @@ -0,0 +1,423 @@ + + + + + + + +ActivationProperty (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ActivationProperty

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class ActivationProperty
    extends Object
    + + +

    +This is the property specification used to activate a profile. If the value field is empty, + then the existence of the named property will activate the profile, otherwise it does a case-sensitive + match against the property value as well. + + +

    Java class for ActivationProperty complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="ActivationProperty">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringname + +
    +           
    +protected  Stringvalue + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ActivationProperty() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetValue() + +
    +          Gets the value of the value property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetValue(String value) + +
    +          Sets the value of the value property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +value

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String value
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ActivationProperty

    +
    +public ActivationProperty()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getValue

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getValue()
    +
    +
    Gets the value of the value property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setValue

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setValue(String value)
    +
    +
    Sets the value of the value property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html new file mode 100644 index 000000000..c37e183d4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Extensions (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Build.Extensions

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions
    +
    +
    +
    Enclosing class:
    Build
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Build.Extensions
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="extension" type="{http://maven.apache.org/POM/4.0.0}Extension" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Extension>extension + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Build.Extensions() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Extension>getExtension() + +
    +          Gets the value of the extension property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +extension

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Extension> extension
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Build.Extensions

    +
    +public Build.Extensions()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getExtension

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Extension> getExtension()
    +
    +
    Gets the value of the extension property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the extension property. + +

    + For example, to add a new item, do as follows: +

    +    getExtension().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Extension +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html new file mode 100644 index 000000000..eead2250b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Filters (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Build.Filters

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters
    +
    +
    +
    Enclosing class:
    Build
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Build.Filters
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>filter + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Build.Filters() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getFilter() + +
    +          Gets the value of the filter property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +filter

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> filter
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Build.Filters

    +
    +public Build.Filters()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getFilter

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getFilter()
    +
    +
    Gets the value of the filter property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the filter property. + +

    + For example, to add a new item, do as follows: +

    +    getFilter().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html new file mode 100644 index 000000000..7140736b7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Build.Plugins

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins
    +
    +
    +
    Enclosing class:
    Build
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Build.Plugins
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Plugin>plugin + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Build.Plugins() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Plugin>getPlugin() + +
    +          Gets the value of the plugin property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +plugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Plugin> plugin
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Build.Plugins

    +
    +public Build.Plugins()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPlugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Plugin> getPlugin()
    +
    +
    Gets the value of the plugin property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the plugin property. + +

    + For example, to add a new item, do as follows: +

    +    getPlugin().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Plugin +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html new file mode 100644 index 000000000..15ff27d9b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Resources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Build.Resources

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources
    +
    +
    +
    Enclosing class:
    Build
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Build.Resources
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Resource>resource + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Build.Resources() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Resource>getResource() + +
    +          Gets the value of the resource property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +resource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Resource> resource
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Build.Resources

    +
    +public Build.Resources()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getResource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Resource> getResource()
    +
    +
    Gets the value of the resource property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the resource property. + +

    + For example, to add a new item, do as follows: +

    +    getResource().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Resource +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html new file mode 100644 index 000000000..26b07fc66 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html @@ -0,0 +1,338 @@ + + + + + + + +Build.TestResources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Build.TestResources

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources
    +
    +
    +
    Enclosing class:
    Build
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Build.TestResources
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Resource>testResource + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Build.TestResources() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Resource>getTestResource() + +
    +          Gets the value of the testResource property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +testResource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Resource> testResource
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Build.TestResources

    +
    +public Build.TestResources()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getTestResource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Resource> getTestResource()
    +
    +
    Gets the value of the testResource property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the testResource property. + +

    + For example, to add a new item, do as follows: +

    +    getTestResource().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Resource +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html new file mode 100644 index 000000000..a6c6499ac --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html @@ -0,0 +1,1395 @@ + + + + + + + +Build (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Build

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Build
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Build
    extends Object
    + + +

    +3.0.0+ + +

    Java class for Build complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Build">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="sourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="scriptSourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="testSourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="outputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="testOutputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="extensions" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="extension" type="{http://maven.apache.org/POM/4.0.0}Extension" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="defaultGoal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="resources" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="testResources" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="finalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="filters" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="pluginManagement" type="{http://maven.apache.org/POM/4.0.0}PluginManagement" minOccurs="0"/>
    +         <element name="plugins" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classBuild.Extensions + +
    +          Java class for anonymous complex type.
    +static classBuild.Filters + +
    +          Java class for anonymous complex type.
    +static classBuild.Plugins + +
    +          Java class for anonymous complex type.
    +static classBuild.Resources + +
    +          Java class for anonymous complex type.
    +static classBuild.TestResources + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringdefaultGoal + +
    +           
    +protected  Stringdirectory + +
    +           
    +protected  Build.Extensionsextensions + +
    +           
    +protected  Build.Filtersfilters + +
    +           
    +protected  StringfinalName + +
    +           
    +protected  StringoutputDirectory + +
    +           
    +protected  PluginManagementpluginManagement + +
    +           
    +protected  Build.Pluginsplugins + +
    +           
    +protected  Build.Resourcesresources + +
    +           
    +protected  StringscriptSourceDirectory + +
    +           
    +protected  StringsourceDirectory + +
    +           
    +protected  StringtestOutputDirectory + +
    +           
    +protected  Build.TestResourcestestResources + +
    +           
    +protected  StringtestSourceDirectory + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Build() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetDefaultGoal() + +
    +          Gets the value of the defaultGoal property.
    + StringgetDirectory() + +
    +          Gets the value of the directory property.
    + Build.ExtensionsgetExtensions() + +
    +          Gets the value of the extensions property.
    + Build.FiltersgetFilters() + +
    +          Gets the value of the filters property.
    + StringgetFinalName() + +
    +          Gets the value of the finalName property.
    + StringgetOutputDirectory() + +
    +          Gets the value of the outputDirectory property.
    + PluginManagementgetPluginManagement() + +
    +          Gets the value of the pluginManagement property.
    + Build.PluginsgetPlugins() + +
    +          Gets the value of the plugins property.
    + Build.ResourcesgetResources() + +
    +          Gets the value of the resources property.
    + StringgetScriptSourceDirectory() + +
    +          Gets the value of the scriptSourceDirectory property.
    + StringgetSourceDirectory() + +
    +          Gets the value of the sourceDirectory property.
    + StringgetTestOutputDirectory() + +
    +          Gets the value of the testOutputDirectory property.
    + Build.TestResourcesgetTestResources() + +
    +          Gets the value of the testResources property.
    + StringgetTestSourceDirectory() + +
    +          Gets the value of the testSourceDirectory property.
    + voidsetDefaultGoal(String value) + +
    +          Sets the value of the defaultGoal property.
    + voidsetDirectory(String value) + +
    +          Sets the value of the directory property.
    + voidsetExtensions(Build.Extensions value) + +
    +          Sets the value of the extensions property.
    + voidsetFilters(Build.Filters value) + +
    +          Sets the value of the filters property.
    + voidsetFinalName(String value) + +
    +          Sets the value of the finalName property.
    + voidsetOutputDirectory(String value) + +
    +          Sets the value of the outputDirectory property.
    + voidsetPluginManagement(PluginManagement value) + +
    +          Sets the value of the pluginManagement property.
    + voidsetPlugins(Build.Plugins value) + +
    +          Sets the value of the plugins property.
    + voidsetResources(Build.Resources value) + +
    +          Sets the value of the resources property.
    + voidsetScriptSourceDirectory(String value) + +
    +          Sets the value of the scriptSourceDirectory property.
    + voidsetSourceDirectory(String value) + +
    +          Sets the value of the sourceDirectory property.
    + voidsetTestOutputDirectory(String value) + +
    +          Sets the value of the testOutputDirectory property.
    + voidsetTestResources(Build.TestResources value) + +
    +          Sets the value of the testResources property.
    + voidsetTestSourceDirectory(String value) + +
    +          Sets the value of the testSourceDirectory property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +sourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String sourceDirectory
    +
    +
    +
    +
    +
    + +

    +scriptSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String scriptSourceDirectory
    +
    +
    +
    +
    +
    + +

    +testSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String testSourceDirectory
    +
    +
    +
    +
    +
    + +

    +outputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String outputDirectory
    +
    +
    +
    +
    +
    + +

    +testOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String testOutputDirectory
    +
    +
    +
    +
    +
    + +

    +extensions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Build.Extensions extensions
    +
    +
    +
    +
    +
    + +

    +defaultGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String defaultGoal
    +
    +
    +
    +
    +
    + +

    +resources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Build.Resources resources
    +
    +
    +
    +
    +
    + +

    +testResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Build.TestResources testResources
    +
    +
    +
    +
    +
    + +

    +directory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String directory
    +
    +
    +
    +
    +
    + +

    +finalName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String finalName
    +
    +
    +
    +
    +
    + +

    +filters

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Build.Filters filters
    +
    +
    +
    +
    +
    + +

    +pluginManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected PluginManagement pluginManagement
    +
    +
    +
    +
    +
    + +

    +plugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Build.Plugins plugins
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Build

    +
    +public Build()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getSourceDirectory()
    +
    +
    Gets the value of the sourceDirectory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSourceDirectory(String value)
    +
    +
    Sets the value of the sourceDirectory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getScriptSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getScriptSourceDirectory()
    +
    +
    Gets the value of the scriptSourceDirectory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setScriptSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setScriptSourceDirectory(String value)
    +
    +
    Sets the value of the scriptSourceDirectory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getTestSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getTestSourceDirectory()
    +
    +
    Gets the value of the testSourceDirectory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setTestSourceDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTestSourceDirectory(String value)
    +
    +
    Sets the value of the testSourceDirectory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getOutputDirectory()
    +
    +
    Gets the value of the outputDirectory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOutputDirectory(String value)
    +
    +
    Sets the value of the outputDirectory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getTestOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getTestOutputDirectory()
    +
    +
    Gets the value of the testOutputDirectory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setTestOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTestOutputDirectory(String value)
    +
    +
    Sets the value of the testOutputDirectory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getExtensions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Build.Extensions getExtensions()
    +
    +
    Gets the value of the extensions property. +

    +

    + +
    Returns:
    possible object is + Build.Extensions
    +
    +
    +
    + +

    +setExtensions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExtensions(Build.Extensions value)
    +
    +
    Sets the value of the extensions property. +

    +

    +
    Parameters:
    value - allowed object is + Build.Extensions
    +
    +
    +
    + +

    +getDefaultGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDefaultGoal()
    +
    +
    Gets the value of the defaultGoal property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDefaultGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDefaultGoal(String value)
    +
    +
    Sets the value of the defaultGoal property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Build.Resources getResources()
    +
    +
    Gets the value of the resources property. +

    +

    + +
    Returns:
    possible object is + Build.Resources
    +
    +
    +
    + +

    +setResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setResources(Build.Resources value)
    +
    +
    Sets the value of the resources property. +

    +

    +
    Parameters:
    value - allowed object is + Build.Resources
    +
    +
    +
    + +

    +getTestResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Build.TestResources getTestResources()
    +
    +
    Gets the value of the testResources property. +

    +

    + +
    Returns:
    possible object is + Build.TestResources
    +
    +
    +
    + +

    +setTestResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTestResources(Build.TestResources value)
    +
    +
    Sets the value of the testResources property. +

    +

    +
    Parameters:
    value - allowed object is + Build.TestResources
    +
    +
    +
    + +

    +getDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDirectory()
    +
    +
    Gets the value of the directory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDirectory(String value)
    +
    +
    Sets the value of the directory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getFinalName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getFinalName()
    +
    +
    Gets the value of the finalName property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setFinalName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFinalName(String value)
    +
    +
    Sets the value of the finalName property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getFilters

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Build.Filters getFilters()
    +
    +
    Gets the value of the filters property. +

    +

    + +
    Returns:
    possible object is + Build.Filters
    +
    +
    +
    + +

    +setFilters

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFilters(Build.Filters value)
    +
    +
    Sets the value of the filters property. +

    +

    +
    Parameters:
    value - allowed object is + Build.Filters
    +
    +
    +
    + +

    +getPluginManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public PluginManagement getPluginManagement()
    +
    +
    Gets the value of the pluginManagement property. +

    +

    + +
    Returns:
    possible object is + PluginManagement
    +
    +
    +
    + +

    +setPluginManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPluginManagement(PluginManagement value)
    +
    +
    Sets the value of the pluginManagement property. +

    +

    +
    Parameters:
    value - allowed object is + PluginManagement
    +
    +
    +
    + +

    +getPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Build.Plugins getPlugins()
    +
    +
    Gets the value of the plugins property. +

    +

    + +
    Returns:
    possible object is + Build.Plugins
    +
    +
    +
    + +

    +setPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPlugins(Build.Plugins value)
    +
    +
    Sets the value of the plugins property. +

    +

    +
    Parameters:
    value - allowed object is + Build.Plugins
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html new file mode 100644 index 000000000..f28f092b8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.Filters (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class BuildBase.Filters

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters
    +
    +
    +
    Enclosing class:
    BuildBase
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class BuildBase.Filters
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>filter + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    BuildBase.Filters() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getFilter() + +
    +          Gets the value of the filter property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +filter

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> filter
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BuildBase.Filters

    +
    +public BuildBase.Filters()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getFilter

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getFilter()
    +
    +
    Gets the value of the filter property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the filter property. + +

    + For example, to add a new item, do as follows: +

    +    getFilter().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html new file mode 100644 index 000000000..698d33ce0 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class BuildBase.Plugins

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins
    +
    +
    +
    Enclosing class:
    BuildBase
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class BuildBase.Plugins
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Plugin>plugin + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    BuildBase.Plugins() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Plugin>getPlugin() + +
    +          Gets the value of the plugin property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +plugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Plugin> plugin
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BuildBase.Plugins

    +
    +public BuildBase.Plugins()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPlugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Plugin> getPlugin()
    +
    +
    Gets the value of the plugin property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the plugin property. + +

    + For example, to add a new item, do as follows: +

    +    getPlugin().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Plugin +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html new file mode 100644 index 000000000..0754c0e63 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.Resources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class BuildBase.Resources

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources
    +
    +
    +
    Enclosing class:
    BuildBase
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class BuildBase.Resources
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Resource>resource + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    BuildBase.Resources() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Resource>getResource() + +
    +          Gets the value of the resource property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +resource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Resource> resource
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BuildBase.Resources

    +
    +public BuildBase.Resources()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getResource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Resource> getResource()
    +
    +
    Gets the value of the resource property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the resource property. + +

    + For example, to add a new item, do as follows: +

    +    getResource().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Resource +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html new file mode 100644 index 000000000..239a42ba6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.TestResources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class BuildBase.TestResources

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources
    +
    +
    +
    Enclosing class:
    BuildBase
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class BuildBase.TestResources
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Resource>testResource + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    BuildBase.TestResources() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Resource>getTestResource() + +
    +          Gets the value of the testResource property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +testResource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Resource> testResource
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BuildBase.TestResources

    +
    +public BuildBase.TestResources()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getTestResource

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Resource> getTestResource()
    +
    +
    Gets the value of the testResource property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the testResource property. + +

    + For example, to add a new item, do as follows: +

    +    getTestResource().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Resource +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html new file mode 100644 index 000000000..83762fa9e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html @@ -0,0 +1,939 @@ + + + + + + + +BuildBase (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class BuildBase

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.BuildBase
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class BuildBase
    extends Object
    + + +

    +3.0.0+ + +

    Java class for BuildBase complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="BuildBase">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="defaultGoal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="resources" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="testResources" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="finalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="filters" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="pluginManagement" type="{http://maven.apache.org/POM/4.0.0}PluginManagement" minOccurs="0"/>
    +         <element name="plugins" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classBuildBase.Filters + +
    +          Java class for anonymous complex type.
    +static classBuildBase.Plugins + +
    +          Java class for anonymous complex type.
    +static classBuildBase.Resources + +
    +          Java class for anonymous complex type.
    +static classBuildBase.TestResources + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringdefaultGoal + +
    +           
    +protected  Stringdirectory + +
    +           
    +protected  BuildBase.Filtersfilters + +
    +           
    +protected  StringfinalName + +
    +           
    +protected  PluginManagementpluginManagement + +
    +           
    +protected  BuildBase.Pluginsplugins + +
    +           
    +protected  BuildBase.Resourcesresources + +
    +           
    +protected  BuildBase.TestResourcestestResources + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    BuildBase() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetDefaultGoal() + +
    +          Gets the value of the defaultGoal property.
    + StringgetDirectory() + +
    +          Gets the value of the directory property.
    + BuildBase.FiltersgetFilters() + +
    +          Gets the value of the filters property.
    + StringgetFinalName() + +
    +          Gets the value of the finalName property.
    + PluginManagementgetPluginManagement() + +
    +          Gets the value of the pluginManagement property.
    + BuildBase.PluginsgetPlugins() + +
    +          Gets the value of the plugins property.
    + BuildBase.ResourcesgetResources() + +
    +          Gets the value of the resources property.
    + BuildBase.TestResourcesgetTestResources() + +
    +          Gets the value of the testResources property.
    + voidsetDefaultGoal(String value) + +
    +          Sets the value of the defaultGoal property.
    + voidsetDirectory(String value) + +
    +          Sets the value of the directory property.
    + voidsetFilters(BuildBase.Filters value) + +
    +          Sets the value of the filters property.
    + voidsetFinalName(String value) + +
    +          Sets the value of the finalName property.
    + voidsetPluginManagement(PluginManagement value) + +
    +          Sets the value of the pluginManagement property.
    + voidsetPlugins(BuildBase.Plugins value) + +
    +          Sets the value of the plugins property.
    + voidsetResources(BuildBase.Resources value) + +
    +          Sets the value of the resources property.
    + voidsetTestResources(BuildBase.TestResources value) + +
    +          Sets the value of the testResources property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +defaultGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String defaultGoal
    +
    +
    +
    +
    +
    + +

    +resources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected BuildBase.Resources resources
    +
    +
    +
    +
    +
    + +

    +testResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected BuildBase.TestResources testResources
    +
    +
    +
    +
    +
    + +

    +directory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String directory
    +
    +
    +
    +
    +
    + +

    +finalName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String finalName
    +
    +
    +
    +
    +
    + +

    +filters

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected BuildBase.Filters filters
    +
    +
    +
    +
    +
    + +

    +pluginManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected PluginManagement pluginManagement
    +
    +
    +
    +
    +
    + +

    +plugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected BuildBase.Plugins plugins
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BuildBase

    +
    +public BuildBase()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDefaultGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDefaultGoal()
    +
    +
    Gets the value of the defaultGoal property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDefaultGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDefaultGoal(String value)
    +
    +
    Sets the value of the defaultGoal property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public BuildBase.Resources getResources()
    +
    +
    Gets the value of the resources property. +

    +

    + +
    Returns:
    possible object is + BuildBase.Resources
    +
    +
    +
    + +

    +setResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setResources(BuildBase.Resources value)
    +
    +
    Sets the value of the resources property. +

    +

    +
    Parameters:
    value - allowed object is + BuildBase.Resources
    +
    +
    +
    + +

    +getTestResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public BuildBase.TestResources getTestResources()
    +
    +
    Gets the value of the testResources property. +

    +

    + +
    Returns:
    possible object is + BuildBase.TestResources
    +
    +
    +
    + +

    +setTestResources

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTestResources(BuildBase.TestResources value)
    +
    +
    Sets the value of the testResources property. +

    +

    +
    Parameters:
    value - allowed object is + BuildBase.TestResources
    +
    +
    +
    + +

    +getDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDirectory()
    +
    +
    Gets the value of the directory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDirectory(String value)
    +
    +
    Sets the value of the directory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getFinalName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getFinalName()
    +
    +
    Gets the value of the finalName property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setFinalName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFinalName(String value)
    +
    +
    Sets the value of the finalName property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getFilters

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public BuildBase.Filters getFilters()
    +
    +
    Gets the value of the filters property. +

    +

    + +
    Returns:
    possible object is + BuildBase.Filters
    +
    +
    +
    + +

    +setFilters

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFilters(BuildBase.Filters value)
    +
    +
    Sets the value of the filters property. +

    +

    +
    Parameters:
    value - allowed object is + BuildBase.Filters
    +
    +
    +
    + +

    +getPluginManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public PluginManagement getPluginManagement()
    +
    +
    Gets the value of the pluginManagement property. +

    +

    + +
    Returns:
    possible object is + PluginManagement
    +
    +
    +
    + +

    +setPluginManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPluginManagement(PluginManagement value)
    +
    +
    Sets the value of the pluginManagement property. +

    +

    +
    Parameters:
    value - allowed object is + PluginManagement
    +
    +
    +
    + +

    +getPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public BuildBase.Plugins getPlugins()
    +
    +
    Gets the value of the plugins property. +

    +

    + +
    Returns:
    possible object is + BuildBase.Plugins
    +
    +
    +
    + +

    +setPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPlugins(BuildBase.Plugins value)
    +
    +
    Sets the value of the plugins property. +

    +

    +
    Parameters:
    value - allowed object is + BuildBase.Plugins
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html new file mode 100644 index 000000000..ce52dba0c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html @@ -0,0 +1,338 @@ + + + + + + + +CiManagement.Notifiers (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class CiManagement.Notifiers

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers
    +
    +
    +
    Enclosing class:
    CiManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class CiManagement.Notifiers
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="notifier" type="{http://maven.apache.org/POM/4.0.0}Notifier" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Notifier>notifier + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    CiManagement.Notifiers() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Notifier>getNotifier() + +
    +          Gets the value of the notifier property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +notifier

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Notifier> notifier
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +CiManagement.Notifiers

    +
    +public CiManagement.Notifiers()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getNotifier

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Notifier> getNotifier()
    +
    +
    Gets the value of the notifier property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the notifier property. + +

    + For example, to add a new item, do as follows: +

    +    getNotifier().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Notifier +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html new file mode 100644 index 000000000..3c051777d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html @@ -0,0 +1,520 @@ + + + + + + + +CiManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class CiManagement

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.CiManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class CiManagement
    extends Object
    + + +

    +4.0.0 + +

    Java class for CiManagement complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="CiManagement">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="system" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="notifiers" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="notifier" type="{http://maven.apache.org/POM/4.0.0}Notifier" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classCiManagement.Notifiers + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  CiManagement.Notifiersnotifiers + +
    +           
    +protected  Stringsystem + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    CiManagement() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + CiManagement.NotifiersgetNotifiers() + +
    +          Gets the value of the notifiers property.
    + StringgetSystem() + +
    +          Gets the value of the system property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetNotifiers(CiManagement.Notifiers value) + +
    +          Sets the value of the notifiers property.
    + voidsetSystem(String value) + +
    +          Sets the value of the system property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +system

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String system
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +notifiers

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected CiManagement.Notifiers notifiers
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +CiManagement

    +
    +public CiManagement()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSystem

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getSystem()
    +
    +
    Gets the value of the system property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setSystem

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSystem(String value)
    +
    +
    Sets the value of the system property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getNotifiers

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public CiManagement.Notifiers getNotifiers()
    +
    +
    Gets the value of the notifiers property. +

    +

    + +
    Returns:
    possible object is + CiManagement.Notifiers
    +
    +
    +
    + +

    +setNotifiers

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setNotifiers(CiManagement.Notifiers value)
    +
    +
    Sets the value of the notifiers property. +

    +

    +
    Parameters:
    value - allowed object is + CiManagement.Notifiers
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html new file mode 100644 index 000000000..649072e43 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Contributor.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Contributor.Properties

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties
    +
    +
    +
    Enclosing class:
    Contributor
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Contributor.Properties
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Contributor.Properties() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Contributor.Properties

    +
    +public Contributor.Properties()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html new file mode 100644 index 000000000..33371b7a8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html @@ -0,0 +1,338 @@ + + + + + + + +Contributor.Roles (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Contributor.Roles

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles
    +
    +
    +
    Enclosing class:
    Contributor
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Contributor.Roles
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>role + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Contributor.Roles() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getRole() + +
    +          Gets the value of the role property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +role

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> role
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Contributor.Roles

    +
    +public Contributor.Roles()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getRole

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getRole()
    +
    +
    Gets the value of the role property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the role property. + +

    + For example, to add a new item, do as follows: +

    +    getRole().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html new file mode 100644 index 000000000..d88ce51e4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html @@ -0,0 +1,906 @@ + + + + + + + +Contributor (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Contributor

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Contributor
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Contributor
    extends Object
    + + +

    +Description of a person who has contributed to the project, but who does + not have commit privileges. Usually, these contributions come in the + form of patches submitted. + + +

    Java class for Contributor complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Contributor">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="email" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="organizationUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="roles" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="timezone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="properties" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classContributor.Properties + +
    +          Java class for anonymous complex type.
    +static classContributor.Roles + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringemail + +
    +           
    +protected  Stringname + +
    +           
    +protected  Stringorganization + +
    +           
    +protected  StringorganizationUrl + +
    +           
    +protected  Contributor.Propertiesproperties + +
    +           
    +protected  Contributor.Rolesroles + +
    +           
    +protected  Stringtimezone + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Contributor() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetEmail() + +
    +          Gets the value of the email property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetOrganization() + +
    +          Gets the value of the organization property.
    + StringgetOrganizationUrl() + +
    +          Gets the value of the organizationUrl property.
    + Contributor.PropertiesgetProperties() + +
    +          Gets the value of the properties property.
    + Contributor.RolesgetRoles() + +
    +          Gets the value of the roles property.
    + StringgetTimezone() + +
    +          Gets the value of the timezone property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetEmail(String value) + +
    +          Sets the value of the email property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetOrganization(String value) + +
    +          Sets the value of the organization property.
    + voidsetOrganizationUrl(String value) + +
    +          Sets the value of the organizationUrl property.
    + voidsetProperties(Contributor.Properties value) + +
    +          Sets the value of the properties property.
    + voidsetRoles(Contributor.Roles value) + +
    +          Sets the value of the roles property.
    + voidsetTimezone(String value) + +
    +          Sets the value of the timezone property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +email

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String email
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +organization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String organization
    +
    +
    +
    +
    +
    + +

    +organizationUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String organizationUrl
    +
    +
    +
    +
    +
    + +

    +roles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Contributor.Roles roles
    +
    +
    +
    +
    +
    + +

    +timezone

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String timezone
    +
    +
    +
    +
    +
    + +

    +properties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Contributor.Properties properties
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Contributor

    +
    +public Contributor()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getEmail

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getEmail()
    +
    +
    Gets the value of the email property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setEmail

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setEmail(String value)
    +
    +
    Sets the value of the email property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOrganization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getOrganization()
    +
    +
    Gets the value of the organization property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setOrganization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOrganization(String value)
    +
    +
    Sets the value of the organization property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOrganizationUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getOrganizationUrl()
    +
    +
    Gets the value of the organizationUrl property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setOrganizationUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOrganizationUrl(String value)
    +
    +
    Sets the value of the organizationUrl property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getRoles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Contributor.Roles getRoles()
    +
    +
    Gets the value of the roles property. +

    +

    + +
    Returns:
    possible object is + Contributor.Roles
    +
    +
    +
    + +

    +setRoles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRoles(Contributor.Roles value)
    +
    +
    Sets the value of the roles property. +

    +

    +
    Parameters:
    value - allowed object is + Contributor.Roles
    +
    +
    +
    + +

    +getTimezone

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getTimezone()
    +
    +
    Gets the value of the timezone property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setTimezone

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTimezone(String value)
    +
    +
    Sets the value of the timezone property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Contributor.Properties getProperties()
    +
    +
    Gets the value of the properties property. +

    +

    + +
    Returns:
    possible object is + Contributor.Properties
    +
    +
    +
    + +

    +setProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setProperties(Contributor.Properties value)
    +
    +
    Sets the value of the properties property. +

    +

    +
    Parameters:
    value - allowed object is + Contributor.Properties
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html new file mode 100644 index 000000000..336db1536 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html @@ -0,0 +1,338 @@ + + + + + + + +Dependency.Exclusions (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Dependency.Exclusions

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions
    +
    +
    +
    Enclosing class:
    Dependency
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Dependency.Exclusions
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="exclusion" type="{http://maven.apache.org/POM/4.0.0}Exclusion" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Exclusion>exclusion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Dependency.Exclusions() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Exclusion>getExclusion() + +
    +          Gets the value of the exclusion property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +exclusion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Exclusion> exclusion
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Dependency.Exclusions

    +
    +public Dependency.Exclusions()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getExclusion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Exclusion> getExclusion()
    +
    +
    Gets the value of the exclusion property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the exclusion property. + +

    + For example, to add a new item, do as follows: +

    +    getExclusion().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Exclusion +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html new file mode 100644 index 000000000..1639693b0 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html @@ -0,0 +1,958 @@ + + + + + + + +Dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Dependency

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Dependency
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Dependency
    extends Object
    + + +

    +3.0.0+ + +

    Java class for Dependency complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Dependency">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="type" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="classifier" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="scope" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="systemPath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="exclusions" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="exclusion" type="{http://maven.apache.org/POM/4.0.0}Exclusion" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="optional" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classDependency.Exclusions + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  Stringclassifier + +
    +           
    +protected  Dependency.Exclusionsexclusions + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  Booleanoptional + +
    +           
    +protected  Stringscope + +
    +           
    +protected  StringsystemPath + +
    +           
    +protected  Stringtype + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Dependency() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + StringgetClassifier() + +
    +          Gets the value of the classifier property.
    + Dependency.ExclusionsgetExclusions() + +
    +          Gets the value of the exclusions property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetScope() + +
    +          Gets the value of the scope property.
    + StringgetSystemPath() + +
    +          Gets the value of the systemPath property.
    + StringgetType() + +
    +          Gets the value of the type property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + BooleanisOptional() + +
    +          Gets the value of the optional property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetClassifier(String value) + +
    +          Sets the value of the classifier property.
    + voidsetExclusions(Dependency.Exclusions value) + +
    +          Sets the value of the exclusions property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetOptional(Boolean value) + +
    +          Sets the value of the optional property.
    + voidsetScope(String value) + +
    +          Sets the value of the scope property.
    + voidsetSystemPath(String value) + +
    +          Sets the value of the systemPath property.
    + voidsetType(String value) + +
    +          Sets the value of the type property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    +
    + +

    +type

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String type
    +
    +
    +
    +
    +
    + +

    +classifier

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String classifier
    +
    +
    +
    +
    +
    + +

    +scope

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String scope
    +
    +
    +
    +
    +
    + +

    +systemPath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String systemPath
    +
    +
    +
    +
    +
    + +

    +exclusions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Dependency.Exclusions exclusions
    +
    +
    +
    +
    +
    + +

    +optional

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean optional
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Dependency

    +
    +public Dependency()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getType

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getType()
    +
    +
    Gets the value of the type property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setType

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setType(String value)
    +
    +
    Sets the value of the type property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getClassifier

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getClassifier()
    +
    +
    Gets the value of the classifier property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setClassifier

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setClassifier(String value)
    +
    +
    Sets the value of the classifier property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getScope

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getScope()
    +
    +
    Gets the value of the scope property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setScope

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setScope(String value)
    +
    +
    Sets the value of the scope property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getSystemPath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getSystemPath()
    +
    +
    Gets the value of the systemPath property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setSystemPath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSystemPath(String value)
    +
    +
    Sets the value of the systemPath property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getExclusions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Dependency.Exclusions getExclusions()
    +
    +
    Gets the value of the exclusions property. +

    +

    + +
    Returns:
    possible object is + Dependency.Exclusions
    +
    +
    +
    + +

    +setExclusions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExclusions(Dependency.Exclusions value)
    +
    +
    Sets the value of the exclusions property. +

    +

    +
    Parameters:
    value - allowed object is + Dependency.Exclusions
    +
    +
    +
    + +

    +isOptional

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isOptional()
    +
    +
    Gets the value of the optional property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setOptional

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOptional(Boolean value)
    +
    +
    Sets the value of the optional property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html new file mode 100644 index 000000000..06a65fe01 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +DependencyManagement.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class DependencyManagement.Dependencies

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies
    +
    +
    +
    Enclosing class:
    DependencyManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class DependencyManagement.Dependencies
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Dependency>dependency + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    DependencyManagement.Dependencies() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Dependency>getDependency() + +
    +          Gets the value of the dependency property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +dependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Dependency> dependency
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +DependencyManagement.Dependencies

    +
    +public DependencyManagement.Dependencies()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Dependency> getDependency()
    +
    +
    Gets the value of the dependency property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the dependency property. + +

    + For example, to add a new item, do as follows: +

    +    getDependency().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Dependency +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html new file mode 100644 index 000000000..4dfb656bd --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html @@ -0,0 +1,375 @@ + + + + + + + +DependencyManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class DependencyManagement

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class DependencyManagement
    extends Object
    + + +

    +Section for management of default dependency information for use in a group of POMs. + + +

    Java class for DependencyManagement complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="DependencyManagement">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="dependencies" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classDependencyManagement.Dependencies + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + +
    +Field Summary
    +protected  DependencyManagement.Dependenciesdependencies + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    DependencyManagement() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + DependencyManagement.DependenciesgetDependencies() + +
    +          Gets the value of the dependencies property.
    + voidsetDependencies(DependencyManagement.Dependencies value) + +
    +          Sets the value of the dependencies property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +dependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DependencyManagement.Dependencies dependencies
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +DependencyManagement

    +
    +public DependencyManagement()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DependencyManagement.Dependencies getDependencies()
    +
    +
    Gets the value of the dependencies property. +

    +

    + +
    Returns:
    possible object is + DependencyManagement.Dependencies
    +
    +
    +
    + +

    +setDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDependencies(DependencyManagement.Dependencies value)
    +
    +
    Sets the value of the dependencies property. +

    +

    +
    Parameters:
    value - allowed object is + DependencyManagement.Dependencies
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html new file mode 100644 index 000000000..ec25cf896 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html @@ -0,0 +1,640 @@ + + + + + + + +DeploymentRepository (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class DeploymentRepository

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class DeploymentRepository
    extends Object
    + + +

    +Repository contains the information needed for deploying to the remote repository. + + +

    Java class for DeploymentRepository complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="DeploymentRepository">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="uniqueVersion" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="layout" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringid + +
    +           
    +protected  Stringlayout + +
    +           
    +protected  Stringname + +
    +           
    +protected  BooleanuniqueVersion + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    DeploymentRepository() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetId() + +
    +          Gets the value of the id property.
    + StringgetLayout() + +
    +          Gets the value of the layout property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + BooleanisUniqueVersion() + +
    +          Gets the value of the uniqueVersion property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetLayout(String value) + +
    +          Sets the value of the layout property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetUniqueVersion(Boolean value) + +
    +          Sets the value of the uniqueVersion property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +uniqueVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean uniqueVersion
    +
    +
    +
    +
    +
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +layout

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String layout
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +DeploymentRepository

    +
    +public DeploymentRepository()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isUniqueVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isUniqueVersion()
    +
    +
    Gets the value of the uniqueVersion property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setUniqueVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUniqueVersion(Boolean value)
    +
    +
    Sets the value of the uniqueVersion property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getLayout

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getLayout()
    +
    +
    Gets the value of the layout property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setLayout

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setLayout(String value)
    +
    +
    Sets the value of the layout property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html new file mode 100644 index 000000000..54f62c592 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Developer.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Developer.Properties

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties
    +
    +
    +
    Enclosing class:
    Developer
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Developer.Properties
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Developer.Properties() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Developer.Properties

    +
    +public Developer.Properties()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html new file mode 100644 index 000000000..d17d9ead4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html @@ -0,0 +1,338 @@ + + + + + + + +Developer.Roles (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Developer.Roles

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles
    +
    +
    +
    Enclosing class:
    Developer
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Developer.Roles
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>role + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Developer.Roles() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getRole() + +
    +          Gets the value of the role property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +role

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> role
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Developer.Roles

    +
    +public Developer.Roles()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getRole

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getRole()
    +
    +
    Gets the value of the role property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the role property. + +

    + For example, to add a new item, do as follows: +

    +    getRole().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html new file mode 100644 index 000000000..51fd8603d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html @@ -0,0 +1,977 @@ + + + + + + + +Developer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Developer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Developer
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Developer
    extends Object
    + + +

    +Information about one of the committers on this project. + + +

    Java class for Developer complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Developer">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="email" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="organizationUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="roles" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="timezone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="properties" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classDeveloper.Properties + +
    +          Java class for anonymous complex type.
    +static classDeveloper.Roles + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringemail + +
    +           
    +protected  Stringid + +
    +           
    +protected  Stringname + +
    +           
    +protected  Stringorganization + +
    +           
    +protected  StringorganizationUrl + +
    +           
    +protected  Developer.Propertiesproperties + +
    +           
    +protected  Developer.Rolesroles + +
    +           
    +protected  Stringtimezone + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Developer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetEmail() + +
    +          Gets the value of the email property.
    + StringgetId() + +
    +          Gets the value of the id property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetOrganization() + +
    +          Gets the value of the organization property.
    + StringgetOrganizationUrl() + +
    +          Gets the value of the organizationUrl property.
    + Developer.PropertiesgetProperties() + +
    +          Gets the value of the properties property.
    + Developer.RolesgetRoles() + +
    +          Gets the value of the roles property.
    + StringgetTimezone() + +
    +          Gets the value of the timezone property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetEmail(String value) + +
    +          Sets the value of the email property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetOrganization(String value) + +
    +          Sets the value of the organization property.
    + voidsetOrganizationUrl(String value) + +
    +          Sets the value of the organizationUrl property.
    + voidsetProperties(Developer.Properties value) + +
    +          Sets the value of the properties property.
    + voidsetRoles(Developer.Roles value) + +
    +          Sets the value of the roles property.
    + voidsetTimezone(String value) + +
    +          Sets the value of the timezone property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +email

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String email
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +organization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String organization
    +
    +
    +
    +
    +
    + +

    +organizationUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String organizationUrl
    +
    +
    +
    +
    +
    + +

    +roles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Developer.Roles roles
    +
    +
    +
    +
    +
    + +

    +timezone

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String timezone
    +
    +
    +
    +
    +
    + +

    +properties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Developer.Properties properties
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Developer

    +
    +public Developer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getEmail

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getEmail()
    +
    +
    Gets the value of the email property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setEmail

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setEmail(String value)
    +
    +
    Sets the value of the email property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOrganization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getOrganization()
    +
    +
    Gets the value of the organization property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setOrganization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOrganization(String value)
    +
    +
    Sets the value of the organization property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOrganizationUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getOrganizationUrl()
    +
    +
    Gets the value of the organizationUrl property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setOrganizationUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOrganizationUrl(String value)
    +
    +
    Sets the value of the organizationUrl property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getRoles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Developer.Roles getRoles()
    +
    +
    Gets the value of the roles property. +

    +

    + +
    Returns:
    possible object is + Developer.Roles
    +
    +
    +
    + +

    +setRoles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRoles(Developer.Roles value)
    +
    +
    Sets the value of the roles property. +

    +

    +
    Parameters:
    value - allowed object is + Developer.Roles
    +
    +
    +
    + +

    +getTimezone

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getTimezone()
    +
    +
    Gets the value of the timezone property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setTimezone

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTimezone(String value)
    +
    +
    Sets the value of the timezone property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Developer.Properties getProperties()
    +
    +
    Gets the value of the properties property. +

    +

    + +
    Returns:
    possible object is + Developer.Properties
    +
    +
    +
    + +

    +setProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setProperties(Developer.Properties value)
    +
    +
    Sets the value of the properties property. +

    +

    +
    Parameters:
    value - allowed object is + Developer.Properties
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html new file mode 100644 index 000000000..460df26ef --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html @@ -0,0 +1,715 @@ + + + + + + + +DistributionManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class DistributionManagement

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class DistributionManagement
    extends Object
    + + +

    +This elements describes all that pertains to distribution for a project. + It is primarily used for deployment of artifacts and the site + produced by the build. + + +

    Java class for DistributionManagement complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="DistributionManagement">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="repository" type="{http://maven.apache.org/POM/4.0.0}DeploymentRepository" minOccurs="0"/>
    +         <element name="snapshotRepository" type="{http://maven.apache.org/POM/4.0.0}DeploymentRepository" minOccurs="0"/>
    +         <element name="site" type="{http://maven.apache.org/POM/4.0.0}Site" minOccurs="0"/>
    +         <element name="downloadUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="relocation" type="{http://maven.apache.org/POM/4.0.0}Relocation" minOccurs="0"/>
    +         <element name="status" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringdownloadUrl + +
    +           
    +protected  Relocationrelocation + +
    +           
    +protected  DeploymentRepositoryrepository + +
    +           
    +protected  Sitesite + +
    +           
    +protected  DeploymentRepositorysnapshotRepository + +
    +           
    +protected  Stringstatus + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    DistributionManagement() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetDownloadUrl() + +
    +          Gets the value of the downloadUrl property.
    + RelocationgetRelocation() + +
    +          Gets the value of the relocation property.
    + DeploymentRepositorygetRepository() + +
    +          Gets the value of the repository property.
    + SitegetSite() + +
    +          Gets the value of the site property.
    + DeploymentRepositorygetSnapshotRepository() + +
    +          Gets the value of the snapshotRepository property.
    + StringgetStatus() + +
    +          Gets the value of the status property.
    + voidsetDownloadUrl(String value) + +
    +          Sets the value of the downloadUrl property.
    + voidsetRelocation(Relocation value) + +
    +          Sets the value of the relocation property.
    + voidsetRepository(DeploymentRepository value) + +
    +          Sets the value of the repository property.
    + voidsetSite(Site value) + +
    +          Sets the value of the site property.
    + voidsetSnapshotRepository(DeploymentRepository value) + +
    +          Sets the value of the snapshotRepository property.
    + voidsetStatus(String value) + +
    +          Sets the value of the status property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +repository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DeploymentRepository repository
    +
    +
    +
    +
    +
    + +

    +snapshotRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DeploymentRepository snapshotRepository
    +
    +
    +
    +
    +
    + +

    +site

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Site site
    +
    +
    +
    +
    +
    + +

    +downloadUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String downloadUrl
    +
    +
    +
    +
    +
    + +

    +relocation

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Relocation relocation
    +
    +
    +
    +
    +
    + +

    +status

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String status
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +DistributionManagement

    +
    +public DistributionManagement()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DeploymentRepository getRepository()
    +
    +
    Gets the value of the repository property. +

    +

    + +
    Returns:
    possible object is + DeploymentRepository
    +
    +
    +
    + +

    +setRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRepository(DeploymentRepository value)
    +
    +
    Sets the value of the repository property. +

    +

    +
    Parameters:
    value - allowed object is + DeploymentRepository
    +
    +
    +
    + +

    +getSnapshotRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DeploymentRepository getSnapshotRepository()
    +
    +
    Gets the value of the snapshotRepository property. +

    +

    + +
    Returns:
    possible object is + DeploymentRepository
    +
    +
    +
    + +

    +setSnapshotRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSnapshotRepository(DeploymentRepository value)
    +
    +
    Sets the value of the snapshotRepository property. +

    +

    +
    Parameters:
    value - allowed object is + DeploymentRepository
    +
    +
    +
    + +

    +getSite

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Site getSite()
    +
    +
    Gets the value of the site property. +

    +

    + +
    Returns:
    possible object is + Site
    +
    +
    +
    + +

    +setSite

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSite(Site value)
    +
    +
    Sets the value of the site property. +

    +

    +
    Parameters:
    value - allowed object is + Site
    +
    +
    +
    + +

    +getDownloadUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDownloadUrl()
    +
    +
    Gets the value of the downloadUrl property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDownloadUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDownloadUrl(String value)
    +
    +
    Sets the value of the downloadUrl property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getRelocation

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Relocation getRelocation()
    +
    +
    Gets the value of the relocation property. +

    +

    + +
    Returns:
    possible object is + Relocation
    +
    +
    +
    + +

    +setRelocation

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRelocation(Relocation value)
    +
    +
    Sets the value of the relocation property. +

    +

    +
    Parameters:
    value - allowed object is + Relocation
    +
    +
    +
    + +

    +getStatus

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getStatus()
    +
    +
    Gets the value of the status property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setStatus

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setStatus(String value)
    +
    +
    Sets the value of the status property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html new file mode 100644 index 000000000..aafa95de2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html @@ -0,0 +1,420 @@ + + + + + + + +Exclusion (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Exclusion

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Exclusion
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Exclusion
    extends Object
    + + +

    +4.0.0 + +

    Java class for Exclusion complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Exclusion">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  StringgroupId + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Exclusion() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Exclusion

    +
    +public Exclusion()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html new file mode 100644 index 000000000..bf2c4f48b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html @@ -0,0 +1,493 @@ + + + + + + + +Extension (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Extension

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Extension
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Extension
    extends Object
    + + +

    +Describes a build extension to utilise. + +

    Java class for Extension complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Extension">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Extension() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Extension

    +
    +public Extension()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html new file mode 100644 index 000000000..e35877a9b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html @@ -0,0 +1,421 @@ + + + + + + + +IssueManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class IssueManagement

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class IssueManagement
    extends Object
    + + +

    +Information about the issue tracking (or bug tracking) system used to manage this project. + + +

    Java class for IssueManagement complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="IssueManagement">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="system" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringsystem + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    IssueManagement() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetSystem() + +
    +          Gets the value of the system property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetSystem(String value) + +
    +          Sets the value of the system property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +system

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String system
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +IssueManagement

    +
    +public IssueManagement()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSystem

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getSystem()
    +
    +
    Gets the value of the system property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setSystem

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSystem(String value)
    +
    +
    Sets the value of the system property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html new file mode 100644 index 000000000..a6da2a1ca --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html @@ -0,0 +1,569 @@ + + + + + + + +License (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class License

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.License
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class License
    extends Object
    + + +

    +Describes the licenses for this project. This is used to generate + the license page of the project's web site, as well as being taken into consideration in other reporting and + validation. The licenses listed for the project are that of the project itself, and not of dependencies. + + +

    Java class for License complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="License">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="distribution" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="comments" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringcomments + +
    +           
    +protected  Stringdistribution + +
    +           
    +protected  Stringname + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    License() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetComments() + +
    +          Gets the value of the comments property.
    + StringgetDistribution() + +
    +          Gets the value of the distribution property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetComments(String value) + +
    +          Sets the value of the comments property.
    + voidsetDistribution(String value) + +
    +          Sets the value of the distribution property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +distribution

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String distribution
    +
    +
    +
    +
    +
    + +

    +comments

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String comments
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +License

    +
    +public License()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getDistribution

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDistribution()
    +
    +
    Gets the value of the distribution property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDistribution

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDistribution(String value)
    +
    +
    Sets the value of the distribution property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getComments

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getComments()
    +
    +
    Gets the value of the comments property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setComments

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setComments(String value)
    +
    +
    Sets the value of the comments property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html new file mode 100644 index 000000000..183b54113 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html @@ -0,0 +1,338 @@ + + + + + + + +MailingList.OtherArchives (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class MailingList.OtherArchives

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives
    +
    +
    +
    Enclosing class:
    MailingList
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class MailingList.OtherArchives
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="otherArchive" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>otherArchive + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    MailingList.OtherArchives() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getOtherArchive() + +
    +          Gets the value of the otherArchive property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +otherArchive

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> otherArchive
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +MailingList.OtherArchives

    +
    +public MailingList.OtherArchives()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getOtherArchive

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getOtherArchive()
    +
    +
    Gets the value of the otherArchive property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the otherArchive property. + +

    + For example, to add a new item, do as follows: +

    +    getOtherArchive().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html new file mode 100644 index 000000000..a0f9a33ea --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html @@ -0,0 +1,741 @@ + + + + + + + +MailingList (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class MailingList

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.MailingList
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class MailingList
    extends Object
    + + +

    +This element describes all of the mailing lists associated with + a project. The auto-generated site references this information. + + +

    Java class for MailingList complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="MailingList">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="subscribe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="unsubscribe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="post" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="archive" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="otherArchives" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="otherArchive" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classMailingList.OtherArchives + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringarchive + +
    +           
    +protected  Stringname + +
    +           
    +protected  MailingList.OtherArchivesotherArchives + +
    +           
    +protected  Stringpost + +
    +           
    +protected  Stringsubscribe + +
    +           
    +protected  Stringunsubscribe + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    MailingList() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArchive() + +
    +          Gets the value of the archive property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + MailingList.OtherArchivesgetOtherArchives() + +
    +          Gets the value of the otherArchives property.
    + StringgetPost() + +
    +          Gets the value of the post property.
    + StringgetSubscribe() + +
    +          Gets the value of the subscribe property.
    + StringgetUnsubscribe() + +
    +          Gets the value of the unsubscribe property.
    + voidsetArchive(String value) + +
    +          Sets the value of the archive property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetOtherArchives(MailingList.OtherArchives value) + +
    +          Sets the value of the otherArchives property.
    + voidsetPost(String value) + +
    +          Sets the value of the post property.
    + voidsetSubscribe(String value) + +
    +          Sets the value of the subscribe property.
    + voidsetUnsubscribe(String value) + +
    +          Sets the value of the unsubscribe property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +subscribe

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String subscribe
    +
    +
    +
    +
    +
    + +

    +unsubscribe

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String unsubscribe
    +
    +
    +
    +
    +
    + +

    +post

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String post
    +
    +
    +
    +
    +
    + +

    +archive

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String archive
    +
    +
    +
    +
    +
    + +

    +otherArchives

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected MailingList.OtherArchives otherArchives
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +MailingList

    +
    +public MailingList()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getSubscribe

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getSubscribe()
    +
    +
    Gets the value of the subscribe property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setSubscribe

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSubscribe(String value)
    +
    +
    Sets the value of the subscribe property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUnsubscribe

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUnsubscribe()
    +
    +
    Gets the value of the unsubscribe property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUnsubscribe

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUnsubscribe(String value)
    +
    +
    Sets the value of the unsubscribe property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getPost

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getPost()
    +
    +
    Gets the value of the post property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setPost

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPost(String value)
    +
    +
    Sets the value of the post property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArchive

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArchive()
    +
    +
    Gets the value of the archive property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArchive

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArchive(String value)
    +
    +
    Sets the value of the archive property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getOtherArchives

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public MailingList.OtherArchives getOtherArchives()
    +
    +
    Gets the value of the otherArchives property. +

    +

    + +
    Returns:
    possible object is + MailingList.OtherArchives
    +
    +
    +
    + +

    +setOtherArchives

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOtherArchives(MailingList.OtherArchives value)
    +
    +
    Sets the value of the otherArchives property. +

    +

    +
    Parameters:
    value - allowed object is + MailingList.OtherArchives
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html new file mode 100644 index 000000000..5cd2f6a00 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Contributors (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Contributors

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Contributors
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="contributor" type="{http://maven.apache.org/POM/4.0.0}Contributor" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Contributor>contributor + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Contributors() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Contributor>getContributor() + +
    +          Gets the value of the contributor property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +contributor

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Contributor> contributor
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Contributors

    +
    +public Model.Contributors()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getContributor

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Contributor> getContributor()
    +
    +
    Gets the value of the contributor property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the contributor property. + +

    + For example, to add a new item, do as follows: +

    +    getContributor().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Contributor +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html new file mode 100644 index 000000000..a85f3f513 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Dependencies

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Dependencies
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Dependency>dependency + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Dependencies() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Dependency>getDependency() + +
    +          Gets the value of the dependency property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +dependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Dependency> dependency
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Dependencies

    +
    +public Model.Dependencies()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Dependency> getDependency()
    +
    +
    Gets the value of the dependency property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the dependency property. + +

    + For example, to add a new item, do as follows: +

    +    getDependency().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Dependency +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html new file mode 100644 index 000000000..cd93cdf23 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Developers (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Developers

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Developers
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="developer" type="{http://maven.apache.org/POM/4.0.0}Developer" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Developer>developer + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Developers() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Developer>getDeveloper() + +
    +          Gets the value of the developer property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +developer

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Developer> developer
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Developers

    +
    +public Model.Developers()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDeveloper

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Developer> getDeveloper()
    +
    +
    Gets the value of the developer property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the developer property. + +

    + For example, to add a new item, do as follows: +

    +    getDeveloper().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Developer +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html new file mode 100644 index 000000000..e8e3dc6ca --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Licenses (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Licenses

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Licenses
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="license" type="{http://maven.apache.org/POM/4.0.0}License" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<License>license + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Licenses() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<License>getLicense() + +
    +          Gets the value of the license property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +license

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<License> license
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Licenses

    +
    +public Model.Licenses()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getLicense

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<License> getLicense()
    +
    +
    Gets the value of the license property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the license property. + +

    + For example, to add a new item, do as follows: +

    +    getLicense().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + License +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html new file mode 100644 index 000000000..b26f20494 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html @@ -0,0 +1,338 @@ + + + + + + + +Model.MailingLists (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.MailingLists

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.MailingLists
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="mailingList" type="{http://maven.apache.org/POM/4.0.0}MailingList" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<MailingList>mailingList + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.MailingLists() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<MailingList>getMailingList() + +
    +          Gets the value of the mailingList property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +mailingList

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<MailingList> mailingList
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.MailingLists

    +
    +public Model.MailingLists()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getMailingList

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<MailingList> getMailingList()
    +
    +
    Gets the value of the mailingList property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the mailingList property. + +

    + For example, to add a new item, do as follows: +

    +    getMailingList().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + MailingList +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html new file mode 100644 index 000000000..fd798f1bc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Modules (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Modules

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Modules
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>module + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Modules() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getModule() + +
    +          Gets the value of the module property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +module

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> module
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Modules

    +
    +public Model.Modules()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getModule

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getModule()
    +
    +
    Gets the value of the module property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the module property. + +

    + For example, to add a new item, do as follows: +

    +    getModule().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html new file mode 100644 index 000000000..8bd937870 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html @@ -0,0 +1,338 @@ + + + + + + + +Model.PluginRepositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.PluginRepositories

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.PluginRepositories
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Repository>pluginRepository + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.PluginRepositories() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Repository>getPluginRepository() + +
    +          Gets the value of the pluginRepository property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +pluginRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Repository> pluginRepository
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.PluginRepositories

    +
    +public Model.PluginRepositories()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPluginRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Repository> getPluginRepository()
    +
    +
    Gets the value of the pluginRepository property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the pluginRepository property. + +

    + For example, to add a new item, do as follows: +

    +    getPluginRepository().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Repository +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html new file mode 100644 index 000000000..9b659fd03 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Profiles (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Profiles

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Profiles
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="profile" type="{http://maven.apache.org/POM/4.0.0}Profile" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Profile>profile + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Profiles() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Profile>getProfile() + +
    +          Gets the value of the profile property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +profile

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Profile> profile
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Profiles

    +
    +public Model.Profiles()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getProfile

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Profile> getProfile()
    +
    +
    Gets the value of the profile property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the profile property. + +

    + For example, to add a new item, do as follows: +

    +    getProfile().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Profile +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html new file mode 100644 index 000000000..6b43c44b2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Properties

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Properties
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Properties() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Properties

    +
    +public Model.Properties()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html new file mode 100644 index 000000000..9d9823260 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Reports (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Reports

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Reports
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Reports() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Reports

    +
    +public Model.Reports()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html new file mode 100644 index 000000000..fa06aeef2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Repositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model.Repositories

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories
    +
    +
    +
    Enclosing class:
    Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Model.Repositories
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Repository>repository + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model.Repositories() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Repository>getRepository() + +
    +          Gets the value of the repository property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +repository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Repository> repository
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model.Repositories

    +
    +public Model.Repositories()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Repository> getRepository()
    +
    +
    Gets the value of the repository property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the repository property. + +

    + For example, to add a new item, do as follows: +

    +    getRepository().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Repository +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html new file mode 100644 index 000000000..047613852 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html @@ -0,0 +1,2673 @@ + + + + + + + +Model (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Model

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Model
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Model
    extends Object
    + + +

    +The <project> element is the root of the descriptor. + The following table lists all of the possible child elements. + + +

    Java class for Model complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Model">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="parent" type="{http://maven.apache.org/POM/4.0.0}Parent" minOccurs="0"/>
    +         <element name="modelVersion" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="packaging" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="prerequisites" type="{http://maven.apache.org/POM/4.0.0}Prerequisites" minOccurs="0"/>
    +         <element name="issueManagement" type="{http://maven.apache.org/POM/4.0.0}IssueManagement" minOccurs="0"/>
    +         <element name="ciManagement" type="{http://maven.apache.org/POM/4.0.0}CiManagement" minOccurs="0"/>
    +         <element name="inceptionYear" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="mailingLists" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="mailingList" type="{http://maven.apache.org/POM/4.0.0}MailingList" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="developers" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="developer" type="{http://maven.apache.org/POM/4.0.0}Developer" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="contributors" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="contributor" type="{http://maven.apache.org/POM/4.0.0}Contributor" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="licenses" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="license" type="{http://maven.apache.org/POM/4.0.0}License" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="scm" type="{http://maven.apache.org/POM/4.0.0}Scm" minOccurs="0"/>
    +         <element name="organization" type="{http://maven.apache.org/POM/4.0.0}Organization" minOccurs="0"/>
    +         <element name="build" type="{http://maven.apache.org/POM/4.0.0}Build" minOccurs="0"/>
    +         <element name="profiles" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="profile" type="{http://maven.apache.org/POM/4.0.0}Profile" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="modules" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="repositories" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="pluginRepositories" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="dependencies" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="reports" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="reporting" type="{http://maven.apache.org/POM/4.0.0}Reporting" minOccurs="0"/>
    +         <element name="dependencyManagement" type="{http://maven.apache.org/POM/4.0.0}DependencyManagement" minOccurs="0"/>
    +         <element name="distributionManagement" type="{http://maven.apache.org/POM/4.0.0}DistributionManagement" minOccurs="0"/>
    +         <element name="properties" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classModel.Contributors + +
    +          Java class for anonymous complex type.
    +static classModel.Dependencies + +
    +          Java class for anonymous complex type.
    +static classModel.Developers + +
    +          Java class for anonymous complex type.
    +static classModel.Licenses + +
    +          Java class for anonymous complex type.
    +static classModel.MailingLists + +
    +          Java class for anonymous complex type.
    +static classModel.Modules + +
    +          Java class for anonymous complex type.
    +static classModel.PluginRepositories + +
    +          Java class for anonymous complex type.
    +static classModel.Profiles + +
    +          Java class for anonymous complex type.
    +static classModel.Properties + +
    +          Java class for anonymous complex type.
    +static classModel.Reports + +
    +          Java class for anonymous complex type.
    +static classModel.Repositories + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  Buildbuild + +
    +           
    +protected  CiManagementciManagement + +
    +           
    +protected  Model.Contributorscontributors + +
    +           
    +protected  Model.Dependenciesdependencies + +
    +           
    +protected  DependencyManagementdependencyManagement + +
    +           
    +protected  Stringdescription + +
    +           
    +protected  Model.Developersdevelopers + +
    +           
    +protected  DistributionManagementdistributionManagement + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  StringinceptionYear + +
    +           
    +protected  IssueManagementissueManagement + +
    +           
    +protected  Model.Licenseslicenses + +
    +           
    +protected  Model.MailingListsmailingLists + +
    +           
    +protected  StringmodelVersion + +
    +           
    +protected  Model.Modulesmodules + +
    +           
    +protected  Stringname + +
    +           
    +protected  Organizationorganization + +
    +           
    +protected  Stringpackaging + +
    +           
    +protected  Parentparent + +
    +           
    +protected  Model.PluginRepositoriespluginRepositories + +
    +           
    +protected  Prerequisitesprerequisites + +
    +           
    +protected  Model.Profilesprofiles + +
    +           
    +protected  Model.Propertiesproperties + +
    +           
    +protected  Reportingreporting + +
    +           
    +protected  Model.Reportsreports + +
    +           
    +protected  Model.Repositoriesrepositories + +
    +           
    +protected  Scmscm + +
    +           
    +protected  Stringurl + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Model() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + BuildgetBuild() + +
    +          Gets the value of the build property.
    + CiManagementgetCiManagement() + +
    +          Gets the value of the ciManagement property.
    + Model.ContributorsgetContributors() + +
    +          Gets the value of the contributors property.
    + Model.DependenciesgetDependencies() + +
    +          Gets the value of the dependencies property.
    + DependencyManagementgetDependencyManagement() + +
    +          Gets the value of the dependencyManagement property.
    + StringgetDescription() + +
    +          Gets the value of the description property.
    + Model.DevelopersgetDevelopers() + +
    +          Gets the value of the developers property.
    + DistributionManagementgetDistributionManagement() + +
    +          Gets the value of the distributionManagement property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetInceptionYear() + +
    +          Gets the value of the inceptionYear property.
    + IssueManagementgetIssueManagement() + +
    +          Gets the value of the issueManagement property.
    + Model.LicensesgetLicenses() + +
    +          Gets the value of the licenses property.
    + Model.MailingListsgetMailingLists() + +
    +          Gets the value of the mailingLists property.
    + StringgetModelVersion() + +
    +          Gets the value of the modelVersion property.
    + Model.ModulesgetModules() + +
    +          Gets the value of the modules property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + OrganizationgetOrganization() + +
    +          Gets the value of the organization property.
    + StringgetPackaging() + +
    +          Gets the value of the packaging property.
    + ParentgetParent() + +
    +          Gets the value of the parent property.
    + Model.PluginRepositoriesgetPluginRepositories() + +
    +          Gets the value of the pluginRepositories property.
    + PrerequisitesgetPrerequisites() + +
    +          Gets the value of the prerequisites property.
    + Model.ProfilesgetProfiles() + +
    +          Gets the value of the profiles property.
    + Model.PropertiesgetProperties() + +
    +          Gets the value of the properties property.
    + ReportinggetReporting() + +
    +          Gets the value of the reporting property.
    + Model.ReportsgetReports() + +
    +          Gets the value of the reports property.
    + Model.RepositoriesgetRepositories() + +
    +          Gets the value of the repositories property.
    + ScmgetScm() + +
    +          Gets the value of the scm property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetBuild(Build value) + +
    +          Sets the value of the build property.
    + voidsetCiManagement(CiManagement value) + +
    +          Sets the value of the ciManagement property.
    + voidsetContributors(Model.Contributors value) + +
    +          Sets the value of the contributors property.
    + voidsetDependencies(Model.Dependencies value) + +
    +          Sets the value of the dependencies property.
    + voidsetDependencyManagement(DependencyManagement value) + +
    +          Sets the value of the dependencyManagement property.
    + voidsetDescription(String value) + +
    +          Sets the value of the description property.
    + voidsetDevelopers(Model.Developers value) + +
    +          Sets the value of the developers property.
    + voidsetDistributionManagement(DistributionManagement value) + +
    +          Sets the value of the distributionManagement property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetInceptionYear(String value) + +
    +          Sets the value of the inceptionYear property.
    + voidsetIssueManagement(IssueManagement value) + +
    +          Sets the value of the issueManagement property.
    + voidsetLicenses(Model.Licenses value) + +
    +          Sets the value of the licenses property.
    + voidsetMailingLists(Model.MailingLists value) + +
    +          Sets the value of the mailingLists property.
    + voidsetModelVersion(String value) + +
    +          Sets the value of the modelVersion property.
    + voidsetModules(Model.Modules value) + +
    +          Sets the value of the modules property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetOrganization(Organization value) + +
    +          Sets the value of the organization property.
    + voidsetPackaging(String value) + +
    +          Sets the value of the packaging property.
    + voidsetParent(Parent value) + +
    +          Sets the value of the parent property.
    + voidsetPluginRepositories(Model.PluginRepositories value) + +
    +          Sets the value of the pluginRepositories property.
    + voidsetPrerequisites(Prerequisites value) + +
    +          Sets the value of the prerequisites property.
    + voidsetProfiles(Model.Profiles value) + +
    +          Sets the value of the profiles property.
    + voidsetProperties(Model.Properties value) + +
    +          Sets the value of the properties property.
    + voidsetReporting(Reporting value) + +
    +          Sets the value of the reporting property.
    + voidsetReports(Model.Reports value) + +
    +          Sets the value of the reports property.
    + voidsetRepositories(Model.Repositories value) + +
    +          Sets the value of the repositories property.
    + voidsetScm(Scm value) + +
    +          Sets the value of the scm property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +parent

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Parent parent
    +
    +
    +
    +
    +
    + +

    +modelVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String modelVersion
    +
    +
    +
    +
    +
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +packaging

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String packaging
    +
    +
    +
    +
    +
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    +
    + +

    +description

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String description
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +prerequisites

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Prerequisites prerequisites
    +
    +
    +
    +
    +
    + +

    +issueManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected IssueManagement issueManagement
    +
    +
    +
    +
    +
    + +

    +ciManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected CiManagement ciManagement
    +
    +
    +
    +
    +
    + +

    +inceptionYear

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String inceptionYear
    +
    +
    +
    +
    +
    + +

    +mailingLists

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.MailingLists mailingLists
    +
    +
    +
    +
    +
    + +

    +developers

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Developers developers
    +
    +
    +
    +
    +
    + +

    +contributors

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Contributors contributors
    +
    +
    +
    +
    +
    + +

    +licenses

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Licenses licenses
    +
    +
    +
    +
    +
    + +

    +scm

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Scm scm
    +
    +
    +
    +
    +
    + +

    +organization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Organization organization
    +
    +
    +
    +
    +
    + +

    +build

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Build build
    +
    +
    +
    +
    +
    + +

    +profiles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Profiles profiles
    +
    +
    +
    +
    +
    + +

    +modules

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Modules modules
    +
    +
    +
    +
    +
    + +

    +repositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Repositories repositories
    +
    +
    +
    +
    +
    + +

    +pluginRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.PluginRepositories pluginRepositories
    +
    +
    +
    +
    +
    + +

    +dependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Dependencies dependencies
    +
    +
    +
    +
    +
    + +

    +reports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Reports reports
    +
    +
    +
    +
    +
    + +

    +reporting

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Reporting reporting
    +
    +
    +
    +
    +
    + +

    +dependencyManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DependencyManagement dependencyManagement
    +
    +
    +
    +
    +
    + +

    +distributionManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DistributionManagement distributionManagement
    +
    +
    +
    +
    +
    + +

    +properties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Model.Properties properties
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Model

    +
    +public Model()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getParent

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Parent getParent()
    +
    +
    Gets the value of the parent property. +

    +

    + +
    Returns:
    possible object is + Parent
    +
    +
    +
    + +

    +setParent

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setParent(Parent value)
    +
    +
    Sets the value of the parent property. +

    +

    +
    Parameters:
    value - allowed object is + Parent
    +
    +
    +
    + +

    +getModelVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getModelVersion()
    +
    +
    Gets the value of the modelVersion property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setModelVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setModelVersion(String value)
    +
    +
    Sets the value of the modelVersion property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getPackaging

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getPackaging()
    +
    +
    Gets the value of the packaging property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setPackaging

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPackaging(String value)
    +
    +
    Sets the value of the packaging property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getDescription

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDescription()
    +
    +
    Gets the value of the description property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDescription

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDescription(String value)
    +
    +
    Sets the value of the description property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getPrerequisites

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Prerequisites getPrerequisites()
    +
    +
    Gets the value of the prerequisites property. +

    +

    + +
    Returns:
    possible object is + Prerequisites
    +
    +
    +
    + +

    +setPrerequisites

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPrerequisites(Prerequisites value)
    +
    +
    Sets the value of the prerequisites property. +

    +

    +
    Parameters:
    value - allowed object is + Prerequisites
    +
    +
    +
    + +

    +getIssueManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public IssueManagement getIssueManagement()
    +
    +
    Gets the value of the issueManagement property. +

    +

    + +
    Returns:
    possible object is + IssueManagement
    +
    +
    +
    + +

    +setIssueManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setIssueManagement(IssueManagement value)
    +
    +
    Sets the value of the issueManagement property. +

    +

    +
    Parameters:
    value - allowed object is + IssueManagement
    +
    +
    +
    + +

    +getCiManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public CiManagement getCiManagement()
    +
    +
    Gets the value of the ciManagement property. +

    +

    + +
    Returns:
    possible object is + CiManagement
    +
    +
    +
    + +

    +setCiManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setCiManagement(CiManagement value)
    +
    +
    Sets the value of the ciManagement property. +

    +

    +
    Parameters:
    value - allowed object is + CiManagement
    +
    +
    +
    + +

    +getInceptionYear

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getInceptionYear()
    +
    +
    Gets the value of the inceptionYear property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setInceptionYear

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setInceptionYear(String value)
    +
    +
    Sets the value of the inceptionYear property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getMailingLists

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.MailingLists getMailingLists()
    +
    +
    Gets the value of the mailingLists property. +

    +

    + +
    Returns:
    possible object is + Model.MailingLists
    +
    +
    +
    + +

    +setMailingLists

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setMailingLists(Model.MailingLists value)
    +
    +
    Sets the value of the mailingLists property. +

    +

    +
    Parameters:
    value - allowed object is + Model.MailingLists
    +
    +
    +
    + +

    +getDevelopers

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Developers getDevelopers()
    +
    +
    Gets the value of the developers property. +

    +

    + +
    Returns:
    possible object is + Model.Developers
    +
    +
    +
    + +

    +setDevelopers

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDevelopers(Model.Developers value)
    +
    +
    Sets the value of the developers property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Developers
    +
    +
    +
    + +

    +getContributors

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Contributors getContributors()
    +
    +
    Gets the value of the contributors property. +

    +

    + +
    Returns:
    possible object is + Model.Contributors
    +
    +
    +
    + +

    +setContributors

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setContributors(Model.Contributors value)
    +
    +
    Sets the value of the contributors property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Contributors
    +
    +
    +
    + +

    +getLicenses

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Licenses getLicenses()
    +
    +
    Gets the value of the licenses property. +

    +

    + +
    Returns:
    possible object is + Model.Licenses
    +
    +
    +
    + +

    +setLicenses

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setLicenses(Model.Licenses value)
    +
    +
    Sets the value of the licenses property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Licenses
    +
    +
    +
    + +

    +getScm

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Scm getScm()
    +
    +
    Gets the value of the scm property. +

    +

    + +
    Returns:
    possible object is + Scm
    +
    +
    +
    + +

    +setScm

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setScm(Scm value)
    +
    +
    Sets the value of the scm property. +

    +

    +
    Parameters:
    value - allowed object is + Scm
    +
    +
    +
    + +

    +getOrganization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Organization getOrganization()
    +
    +
    Gets the value of the organization property. +

    +

    + +
    Returns:
    possible object is + Organization
    +
    +
    +
    + +

    +setOrganization

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOrganization(Organization value)
    +
    +
    Sets the value of the organization property. +

    +

    +
    Parameters:
    value - allowed object is + Organization
    +
    +
    +
    + +

    +getBuild

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Build getBuild()
    +
    +
    Gets the value of the build property. +

    +

    + +
    Returns:
    possible object is + Build
    +
    +
    +
    + +

    +setBuild

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setBuild(Build value)
    +
    +
    Sets the value of the build property. +

    +

    +
    Parameters:
    value - allowed object is + Build
    +
    +
    +
    + +

    +getProfiles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Profiles getProfiles()
    +
    +
    Gets the value of the profiles property. +

    +

    + +
    Returns:
    possible object is + Model.Profiles
    +
    +
    +
    + +

    +setProfiles

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setProfiles(Model.Profiles value)
    +
    +
    Sets the value of the profiles property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Profiles
    +
    +
    +
    + +

    +getModules

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Modules getModules()
    +
    +
    Gets the value of the modules property. +

    +

    + +
    Returns:
    possible object is + Model.Modules
    +
    +
    +
    + +

    +setModules

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setModules(Model.Modules value)
    +
    +
    Sets the value of the modules property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Modules
    +
    +
    +
    + +

    +getRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Repositories getRepositories()
    +
    +
    Gets the value of the repositories property. +

    +

    + +
    Returns:
    possible object is + Model.Repositories
    +
    +
    +
    + +

    +setRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRepositories(Model.Repositories value)
    +
    +
    Sets the value of the repositories property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Repositories
    +
    +
    +
    + +

    +getPluginRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.PluginRepositories getPluginRepositories()
    +
    +
    Gets the value of the pluginRepositories property. +

    +

    + +
    Returns:
    possible object is + Model.PluginRepositories
    +
    +
    +
    + +

    +setPluginRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPluginRepositories(Model.PluginRepositories value)
    +
    +
    Sets the value of the pluginRepositories property. +

    +

    +
    Parameters:
    value - allowed object is + Model.PluginRepositories
    +
    +
    +
    + +

    +getDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Dependencies getDependencies()
    +
    +
    Gets the value of the dependencies property. +

    +

    + +
    Returns:
    possible object is + Model.Dependencies
    +
    +
    +
    + +

    +setDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDependencies(Model.Dependencies value)
    +
    +
    Sets the value of the dependencies property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Dependencies
    +
    +
    +
    + +

    +getReports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Reports getReports()
    +
    +
    Gets the value of the reports property. +

    +

    + +
    Returns:
    possible object is + Model.Reports
    +
    +
    +
    + +

    +setReports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReports(Model.Reports value)
    +
    +
    Sets the value of the reports property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Reports
    +
    +
    +
    + +

    +getReporting

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Reporting getReporting()
    +
    +
    Gets the value of the reporting property. +

    +

    + +
    Returns:
    possible object is + Reporting
    +
    +
    +
    + +

    +setReporting

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReporting(Reporting value)
    +
    +
    Sets the value of the reporting property. +

    +

    +
    Parameters:
    value - allowed object is + Reporting
    +
    +
    +
    + +

    +getDependencyManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DependencyManagement getDependencyManagement()
    +
    +
    Gets the value of the dependencyManagement property. +

    +

    + +
    Returns:
    possible object is + DependencyManagement
    +
    +
    +
    + +

    +setDependencyManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDependencyManagement(DependencyManagement value)
    +
    +
    Sets the value of the dependencyManagement property. +

    +

    +
    Parameters:
    value - allowed object is + DependencyManagement
    +
    +
    +
    + +

    +getDistributionManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DistributionManagement getDistributionManagement()
    +
    +
    Gets the value of the distributionManagement property. +

    +

    + +
    Returns:
    possible object is + DistributionManagement
    +
    +
    +
    + +

    +setDistributionManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDistributionManagement(DistributionManagement value)
    +
    +
    Sets the value of the distributionManagement property. +

    +

    +
    Parameters:
    value - allowed object is + DistributionManagement
    +
    +
    +
    + +

    +getProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Model.Properties getProperties()
    +
    +
    Gets the value of the properties property. +

    +

    + +
    Returns:
    possible object is + Model.Properties
    +
    +
    +
    + +

    +setProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setProperties(Model.Properties value)
    +
    +
    Sets the value of the properties property. +

    +

    +
    Parameters:
    value - allowed object is + Model.Properties
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html new file mode 100644 index 000000000..1261faf7f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +Notifier.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Notifier.Configuration

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration
    +
    +
    +
    Enclosing class:
    Notifier
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Notifier.Configuration
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Notifier.Configuration() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Notifier.Configuration

    +
    +public Notifier.Configuration()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html new file mode 100644 index 000000000..26428b741 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html @@ -0,0 +1,813 @@ + + + + + + + +Notifier (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Notifier

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Notifier
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Notifier
    extends Object
    + + +

    +Configures one method for notifying users/developers when a build breaks. + + +

    Java class for Notifier complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Notifier">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="type" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="sendOnError" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="sendOnFailure" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="sendOnSuccess" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="sendOnWarning" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="address" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="configuration" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classNotifier.Configuration + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringaddress + +
    +           
    +protected  Notifier.Configurationconfiguration + +
    +           
    +protected  BooleansendOnError + +
    +           
    +protected  BooleansendOnFailure + +
    +           
    +protected  BooleansendOnSuccess + +
    +           
    +protected  BooleansendOnWarning + +
    +           
    +protected  Stringtype + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Notifier() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetAddress() + +
    +          Gets the value of the address property.
    + Notifier.ConfigurationgetConfiguration() + +
    +          Gets the value of the configuration property.
    + StringgetType() + +
    +          Gets the value of the type property.
    + BooleanisSendOnError() + +
    +          Gets the value of the sendOnError property.
    + BooleanisSendOnFailure() + +
    +          Gets the value of the sendOnFailure property.
    + BooleanisSendOnSuccess() + +
    +          Gets the value of the sendOnSuccess property.
    + BooleanisSendOnWarning() + +
    +          Gets the value of the sendOnWarning property.
    + voidsetAddress(String value) + +
    +          Sets the value of the address property.
    + voidsetConfiguration(Notifier.Configuration value) + +
    +          Sets the value of the configuration property.
    + voidsetSendOnError(Boolean value) + +
    +          Sets the value of the sendOnError property.
    + voidsetSendOnFailure(Boolean value) + +
    +          Sets the value of the sendOnFailure property.
    + voidsetSendOnSuccess(Boolean value) + +
    +          Sets the value of the sendOnSuccess property.
    + voidsetSendOnWarning(Boolean value) + +
    +          Sets the value of the sendOnWarning property.
    + voidsetType(String value) + +
    +          Sets the value of the type property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +type

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String type
    +
    +
    +
    +
    +
    + +

    +sendOnError

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean sendOnError
    +
    +
    +
    +
    +
    + +

    +sendOnFailure

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean sendOnFailure
    +
    +
    +
    +
    +
    + +

    +sendOnSuccess

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean sendOnSuccess
    +
    +
    +
    +
    +
    + +

    +sendOnWarning

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean sendOnWarning
    +
    +
    +
    +
    +
    + +

    +address

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String address
    +
    +
    +
    +
    +
    + +

    +configuration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Notifier.Configuration configuration
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Notifier

    +
    +public Notifier()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getType

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getType()
    +
    +
    Gets the value of the type property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setType

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setType(String value)
    +
    +
    Sets the value of the type property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +isSendOnError

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isSendOnError()
    +
    +
    Gets the value of the sendOnError property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setSendOnError

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSendOnError(Boolean value)
    +
    +
    Sets the value of the sendOnError property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +isSendOnFailure

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isSendOnFailure()
    +
    +
    Gets the value of the sendOnFailure property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setSendOnFailure

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSendOnFailure(Boolean value)
    +
    +
    Sets the value of the sendOnFailure property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +isSendOnSuccess

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isSendOnSuccess()
    +
    +
    Gets the value of the sendOnSuccess property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setSendOnSuccess

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSendOnSuccess(Boolean value)
    +
    +
    Sets the value of the sendOnSuccess property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +isSendOnWarning

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isSendOnWarning()
    +
    +
    Gets the value of the sendOnWarning property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setSendOnWarning

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSendOnWarning(Boolean value)
    +
    +
    Sets the value of the sendOnWarning property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getAddress

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getAddress()
    +
    +
    Gets the value of the address property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setAddress

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setAddress(String value)
    +
    +
    Sets the value of the address property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Notifier.Configuration getConfiguration()
    +
    +
    Gets the value of the configuration property. +

    +

    + +
    Returns:
    possible object is + Notifier.Configuration
    +
    +
    +
    + +

    +setConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setConfiguration(Notifier.Configuration value)
    +
    +
    Sets the value of the configuration property. +

    +

    +
    Parameters:
    value - allowed object is + Notifier.Configuration
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html new file mode 100644 index 000000000..5bdd30f65 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html @@ -0,0 +1,2056 @@ + + + + + + + +ObjectFactory (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ObjectFactory

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory
    +
    +
    +
    +
    public class ObjectFactory
    extends Object
    + + +

    +This object contains factory methods for each + Java content interface and Java element interface + generated in the org.owasp.dependencycheck.analyzer.pom.generated package. +

    An ObjectFactory allows you to programmatically + construct new instances of the Java representation + for XML content. The Java representation of XML + content can consist of schema derived interfaces + and classes representing the binding of schema + type definitions, element declarations and model + groups. Factory methods for each of these are + provided in this class. +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    ObjectFactory() + +
    +          Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.owasp.dependencycheck.analyzer.pom.generated
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + ActivationcreateActivation() + +
    +          Create an instance of Activation
    + ActivationFilecreateActivationFile() + +
    +          Create an instance of ActivationFile
    + ActivationOScreateActivationOS() + +
    +          Create an instance of ActivationOS
    + ActivationPropertycreateActivationProperty() + +
    +          Create an instance of ActivationProperty
    + BuildcreateBuild() + +
    +          Create an instance of Build
    + BuildBasecreateBuildBase() + +
    +          Create an instance of BuildBase
    + BuildBase.FilterscreateBuildBaseFilters() + +
    +          Create an instance of BuildBase.Filters
    + BuildBase.PluginscreateBuildBasePlugins() + +
    +          Create an instance of BuildBase.Plugins
    + BuildBase.ResourcescreateBuildBaseResources() + +
    +          Create an instance of BuildBase.Resources
    + BuildBase.TestResourcescreateBuildBaseTestResources() + +
    +          Create an instance of BuildBase.TestResources
    + Build.ExtensionscreateBuildExtensions() + +
    +          Create an instance of Build.Extensions
    + Build.FilterscreateBuildFilters() + +
    +          Create an instance of Build.Filters
    + Build.PluginscreateBuildPlugins() + +
    +          Create an instance of Build.Plugins
    + Build.ResourcescreateBuildResources() + +
    +          Create an instance of Build.Resources
    + Build.TestResourcescreateBuildTestResources() + +
    +          Create an instance of Build.TestResources
    + CiManagementcreateCiManagement() + +
    +          Create an instance of CiManagement
    + CiManagement.NotifierscreateCiManagementNotifiers() + +
    +          Create an instance of CiManagement.Notifiers
    + ContributorcreateContributor() + +
    +          Create an instance of Contributor
    + Contributor.PropertiescreateContributorProperties() + +
    +          Create an instance of Contributor.Properties
    + Contributor.RolescreateContributorRoles() + +
    +          Create an instance of Contributor.Roles
    + DependencycreateDependency() + +
    +          Create an instance of Dependency
    + Dependency.ExclusionscreateDependencyExclusions() + +
    +          Create an instance of Dependency.Exclusions
    + DependencyManagementcreateDependencyManagement() + +
    +          Create an instance of DependencyManagement
    + DependencyManagement.DependenciescreateDependencyManagementDependencies() + +
    +          Create an instance of DependencyManagement.Dependencies
    + DeploymentRepositorycreateDeploymentRepository() + +
    +          Create an instance of DeploymentRepository
    + DevelopercreateDeveloper() + +
    +          Create an instance of Developer
    + Developer.PropertiescreateDeveloperProperties() + +
    +          Create an instance of Developer.Properties
    + Developer.RolescreateDeveloperRoles() + +
    +          Create an instance of Developer.Roles
    + DistributionManagementcreateDistributionManagement() + +
    +          Create an instance of DistributionManagement
    + ExclusioncreateExclusion() + +
    +          Create an instance of Exclusion
    + ExtensioncreateExtension() + +
    +          Create an instance of Extension
    + IssueManagementcreateIssueManagement() + +
    +          Create an instance of IssueManagement
    + LicensecreateLicense() + +
    +          Create an instance of License
    + MailingListcreateMailingList() + +
    +          Create an instance of MailingList
    + MailingList.OtherArchivescreateMailingListOtherArchives() + +
    +          Create an instance of MailingList.OtherArchives
    + ModelcreateModel() + +
    +          Create an instance of Model
    + Model.ContributorscreateModelContributors() + +
    +          Create an instance of Model.Contributors
    + Model.DependenciescreateModelDependencies() + +
    +          Create an instance of Model.Dependencies
    + Model.DeveloperscreateModelDevelopers() + +
    +          Create an instance of Model.Developers
    + Model.LicensescreateModelLicenses() + +
    +          Create an instance of Model.Licenses
    + Model.MailingListscreateModelMailingLists() + +
    +          Create an instance of Model.MailingLists
    + Model.ModulescreateModelModules() + +
    +          Create an instance of Model.Modules
    + Model.PluginRepositoriescreateModelPluginRepositories() + +
    +          Create an instance of Model.PluginRepositories
    + Model.ProfilescreateModelProfiles() + +
    +          Create an instance of Model.Profiles
    + Model.PropertiescreateModelProperties() + +
    +          Create an instance of Model.Properties
    + Model.ReportscreateModelReports() + +
    +          Create an instance of Model.Reports
    + Model.RepositoriescreateModelRepositories() + +
    +          Create an instance of Model.Repositories
    + NotifiercreateNotifier() + +
    +          Create an instance of Notifier
    + Notifier.ConfigurationcreateNotifierConfiguration() + +
    +          Create an instance of Notifier.Configuration
    + OrganizationcreateOrganization() + +
    +          Create an instance of Organization
    + ParentcreateParent() + +
    +          Create an instance of Parent
    + PlugincreatePlugin() + +
    +          Create an instance of Plugin
    + Plugin.ConfigurationcreatePluginConfiguration() + +
    +          Create an instance of Plugin.Configuration
    + Plugin.DependenciescreatePluginDependencies() + +
    +          Create an instance of Plugin.Dependencies
    + PluginExecutioncreatePluginExecution() + +
    +          Create an instance of PluginExecution
    + PluginExecution.ConfigurationcreatePluginExecutionConfiguration() + +
    +          Create an instance of PluginExecution.Configuration
    + PluginExecution.GoalscreatePluginExecutionGoals() + +
    +          Create an instance of PluginExecution.Goals
    + Plugin.ExecutionscreatePluginExecutions() + +
    +          Create an instance of Plugin.Executions
    + Plugin.GoalscreatePluginGoals() + +
    +          Create an instance of Plugin.Goals
    + PluginManagementcreatePluginManagement() + +
    +          Create an instance of PluginManagement
    + PluginManagement.PluginscreatePluginManagementPlugins() + +
    +          Create an instance of PluginManagement.Plugins
    + PrerequisitescreatePrerequisites() + +
    +          Create an instance of Prerequisites
    + ProfilecreateProfile() + +
    +          Create an instance of Profile
    + Profile.DependenciescreateProfileDependencies() + +
    +          Create an instance of Profile.Dependencies
    + Profile.ModulescreateProfileModules() + +
    +          Create an instance of Profile.Modules
    + Profile.PluginRepositoriescreateProfilePluginRepositories() + +
    +          Create an instance of Profile.PluginRepositories
    + Profile.PropertiescreateProfileProperties() + +
    +          Create an instance of Profile.Properties
    + Profile.ReportscreateProfileReports() + +
    +          Create an instance of Profile.Reports
    + Profile.RepositoriescreateProfileRepositories() + +
    +          Create an instance of Profile.Repositories
    + JAXBElement<Model>createProject(Model value) + +
    +          Create an instance of JAXBElement<Model>}
    + RelocationcreateRelocation() + +
    +          Create an instance of Relocation
    + ReportingcreateReporting() + +
    +          Create an instance of Reporting
    + Reporting.PluginscreateReportingPlugins() + +
    +          Create an instance of Reporting.Plugins
    + ReportPlugincreateReportPlugin() + +
    +          Create an instance of ReportPlugin
    + ReportPlugin.ConfigurationcreateReportPluginConfiguration() + +
    +          Create an instance of ReportPlugin.Configuration
    + ReportPlugin.ReportSetscreateReportPluginReportSets() + +
    +          Create an instance of ReportPlugin.ReportSets
    + ReportSetcreateReportSet() + +
    +          Create an instance of ReportSet
    + ReportSet.ConfigurationcreateReportSetConfiguration() + +
    +          Create an instance of ReportSet.Configuration
    + ReportSet.ReportscreateReportSetReports() + +
    +          Create an instance of ReportSet.Reports
    + RepositorycreateRepository() + +
    +          Create an instance of Repository
    + RepositoryPolicycreateRepositoryPolicy() + +
    +          Create an instance of RepositoryPolicy
    + ResourcecreateResource() + +
    +          Create an instance of Resource
    + Resource.ExcludescreateResourceExcludes() + +
    +          Create an instance of Resource.Excludes
    + Resource.IncludescreateResourceIncludes() + +
    +          Create an instance of Resource.Includes
    + ScmcreateScm() + +
    +          Create an instance of Scm
    + SitecreateSite() + +
    +          Create an instance of Site
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +ObjectFactory

    +
    +public ObjectFactory()
    +
    +
    Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.owasp.dependencycheck.analyzer.pom.generated +

    +

    + + + + + + + + +
    +Method Detail
    + +

    +createModel

    +
    +public Model createModel()
    +
    +
    Create an instance of Model +

    +

    +
    +
    +
    +
    + +

    +createReporting

    +
    +public Reporting createReporting()
    +
    +
    Create an instance of Reporting +

    +

    +
    +
    +
    +
    + +

    +createExclusion

    +
    +public Exclusion createExclusion()
    +
    +
    Create an instance of Exclusion +

    +

    +
    +
    +
    +
    + +

    +createBuildFilters

    +
    +public Build.Filters createBuildFilters()
    +
    +
    Create an instance of Build.Filters +

    +

    +
    +
    +
    +
    + +

    +createReportPluginConfiguration

    +
    +public ReportPlugin.Configuration createReportPluginConfiguration()
    +
    +
    Create an instance of ReportPlugin.Configuration +

    +

    +
    +
    +
    +
    + +

    +createIssueManagement

    +
    +public IssueManagement createIssueManagement()
    +
    +
    Create an instance of IssueManagement +

    +

    +
    +
    +
    +
    + +

    +createPluginExecutionGoals

    +
    +public PluginExecution.Goals createPluginExecutionGoals()
    +
    +
    Create an instance of PluginExecution.Goals +

    +

    +
    +
    +
    +
    + +

    +createReportPlugin

    +
    +public ReportPlugin createReportPlugin()
    +
    +
    Create an instance of ReportPlugin +

    +

    +
    +
    +
    +
    + +

    +createProfileProperties

    +
    +public Profile.Properties createProfileProperties()
    +
    +
    Create an instance of Profile.Properties +

    +

    +
    +
    +
    +
    + +

    +createActivationProperty

    +
    +public ActivationProperty createActivationProperty()
    +
    +
    Create an instance of ActivationProperty +

    +

    +
    +
    +
    +
    + +

    +createBuildExtensions

    +
    +public Build.Extensions createBuildExtensions()
    +
    +
    Create an instance of Build.Extensions +

    +

    +
    +
    +
    +
    + +

    +createPlugin

    +
    +public Plugin createPlugin()
    +
    +
    Create an instance of Plugin +

    +

    +
    +
    +
    +
    + +

    +createProfileDependencies

    +
    +public Profile.Dependencies createProfileDependencies()
    +
    +
    Create an instance of Profile.Dependencies +

    +

    +
    +
    +
    +
    + +

    +createResourceExcludes

    +
    +public Resource.Excludes createResourceExcludes()
    +
    +
    Create an instance of Resource.Excludes +

    +

    +
    +
    +
    +
    + +

    +createScm

    +
    +public Scm createScm()
    +
    +
    Create an instance of Scm +

    +

    +
    +
    +
    +
    + +

    +createReportSetReports

    +
    +public ReportSet.Reports createReportSetReports()
    +
    +
    Create an instance of ReportSet.Reports +

    +

    +
    +
    +
    +
    + +

    +createPluginManagement

    +
    +public PluginManagement createPluginManagement()
    +
    +
    Create an instance of PluginManagement +

    +

    +
    +
    +
    +
    + +

    +createCiManagementNotifiers

    +
    +public CiManagement.Notifiers createCiManagementNotifiers()
    +
    +
    Create an instance of CiManagement.Notifiers +

    +

    +
    +
    +
    +
    + +

    +createModelPluginRepositories

    +
    +public Model.PluginRepositories createModelPluginRepositories()
    +
    +
    Create an instance of Model.PluginRepositories +

    +

    +
    +
    +
    +
    + +

    +createActivationFile

    +
    +public ActivationFile createActivationFile()
    +
    +
    Create an instance of ActivationFile +

    +

    +
    +
    +
    +
    + +

    +createDeveloperRoles

    +
    +public Developer.Roles createDeveloperRoles()
    +
    +
    Create an instance of Developer.Roles +

    +

    +
    +
    +
    +
    + +

    +createDeploymentRepository

    +
    +public DeploymentRepository createDeploymentRepository()
    +
    +
    Create an instance of DeploymentRepository +

    +

    +
    +
    +
    +
    + +

    +createContributorProperties

    +
    +public Contributor.Properties createContributorProperties()
    +
    +
    Create an instance of Contributor.Properties +

    +

    +
    +
    +
    +
    + +

    +createDistributionManagement

    +
    +public DistributionManagement createDistributionManagement()
    +
    +
    Create an instance of DistributionManagement +

    +

    +
    +
    +
    +
    + +

    +createRepositoryPolicy

    +
    +public RepositoryPolicy createRepositoryPolicy()
    +
    +
    Create an instance of RepositoryPolicy +

    +

    +
    +
    +
    +
    + +

    +createModelLicenses

    +
    +public Model.Licenses createModelLicenses()
    +
    +
    Create an instance of Model.Licenses +

    +

    +
    +
    +
    +
    + +

    +createBuildTestResources

    +
    +public Build.TestResources createBuildTestResources()
    +
    +
    Create an instance of Build.TestResources +

    +

    +
    +
    +
    +
    + +

    +createPluginGoals

    +
    +public Plugin.Goals createPluginGoals()
    +
    +
    Create an instance of Plugin.Goals +

    +

    +
    +
    +
    +
    + +

    +createPluginExecutions

    +
    +public Plugin.Executions createPluginExecutions()
    +
    +
    Create an instance of Plugin.Executions +

    +

    +
    +
    +
    +
    + +

    +createDependencyManagement

    +
    +public DependencyManagement createDependencyManagement()
    +
    +
    Create an instance of DependencyManagement +

    +

    +
    +
    +
    +
    + +

    +createModelReports

    +
    +public Model.Reports createModelReports()
    +
    +
    Create an instance of Model.Reports +

    +

    +
    +
    +
    +
    + +

    +createBuild

    +
    +public Build createBuild()
    +
    +
    Create an instance of Build +

    +

    +
    +
    +
    +
    + +

    +createBuildResources

    +
    +public Build.Resources createBuildResources()
    +
    +
    Create an instance of Build.Resources +

    +

    +
    +
    +
    +
    + +

    +createDependencyManagementDependencies

    +
    +public DependencyManagement.Dependencies createDependencyManagementDependencies()
    +
    +
    Create an instance of DependencyManagement.Dependencies +

    +

    +
    +
    +
    +
    + +

    +createModelContributors

    +
    +public Model.Contributors createModelContributors()
    +
    +
    Create an instance of Model.Contributors +

    +

    +
    +
    +
    +
    + +

    +createBuildPlugins

    +
    +public Build.Plugins createBuildPlugins()
    +
    +
    Create an instance of Build.Plugins +

    +

    +
    +
    +
    +
    + +

    +createExtension

    +
    +public Extension createExtension()
    +
    +
    Create an instance of Extension +

    +

    +
    +
    +
    +
    + +

    +createOrganization

    +
    +public Organization createOrganization()
    +
    +
    Create an instance of Organization +

    +

    +
    +
    +
    +
    + +

    +createLicense

    +
    +public License createLicense()
    +
    +
    Create an instance of License +

    +

    +
    +
    +
    +
    + +

    +createActivation

    +
    +public Activation createActivation()
    +
    +
    Create an instance of Activation +

    +

    +
    +
    +
    +
    + +

    +createActivationOS

    +
    +public ActivationOS createActivationOS()
    +
    +
    Create an instance of ActivationOS +

    +

    +
    +
    +
    +
    + +

    +createModelModules

    +
    +public Model.Modules createModelModules()
    +
    +
    Create an instance of Model.Modules +

    +

    +
    +
    +
    +
    + +

    +createProfileRepositories

    +
    +public Profile.Repositories createProfileRepositories()
    +
    +
    Create an instance of Profile.Repositories +

    +

    +
    +
    +
    +
    + +

    +createModelDependencies

    +
    +public Model.Dependencies createModelDependencies()
    +
    +
    Create an instance of Model.Dependencies +

    +

    +
    +
    +
    +
    + +

    +createBuildBaseResources

    +
    +public BuildBase.Resources createBuildBaseResources()
    +
    +
    Create an instance of BuildBase.Resources +

    +

    +
    +
    +
    +
    + +

    +createSite

    +
    +public Site createSite()
    +
    +
    Create an instance of Site +

    +

    +
    +
    +
    +
    + +

    +createReportPluginReportSets

    +
    +public ReportPlugin.ReportSets createReportPluginReportSets()
    +
    +
    Create an instance of ReportPlugin.ReportSets +

    +

    +
    +
    +
    +
    + +

    +createPluginConfiguration

    +
    +public Plugin.Configuration createPluginConfiguration()
    +
    +
    Create an instance of Plugin.Configuration +

    +

    +
    +
    +
    +
    + +

    +createProfilePluginRepositories

    +
    +public Profile.PluginRepositories createProfilePluginRepositories()
    +
    +
    Create an instance of Profile.PluginRepositories +

    +

    +
    +
    +
    +
    + +

    +createDependencyExclusions

    +
    +public Dependency.Exclusions createDependencyExclusions()
    +
    +
    Create an instance of Dependency.Exclusions +

    +

    +
    +
    +
    +
    + +

    +createPrerequisites

    +
    +public Prerequisites createPrerequisites()
    +
    +
    Create an instance of Prerequisites +

    +

    +
    +
    +
    +
    + +

    +createModelProfiles

    +
    +public Model.Profiles createModelProfiles()
    +
    +
    Create an instance of Model.Profiles +

    +

    +
    +
    +
    +
    + +

    +createModelProperties

    +
    +public Model.Properties createModelProperties()
    +
    +
    Create an instance of Model.Properties +

    +

    +
    +
    +
    +
    + +

    +createBuildBasePlugins

    +
    +public BuildBase.Plugins createBuildBasePlugins()
    +
    +
    Create an instance of BuildBase.Plugins +

    +

    +
    +
    +
    +
    + +

    +createBuildBase

    +
    +public BuildBase createBuildBase()
    +
    +
    Create an instance of BuildBase +

    +

    +
    +
    +
    +
    + +

    +createPluginManagementPlugins

    +
    +public PluginManagement.Plugins createPluginManagementPlugins()
    +
    +
    Create an instance of PluginManagement.Plugins +

    +

    +
    +
    +
    +
    + +

    +createContributorRoles

    +
    +public Contributor.Roles createContributorRoles()
    +
    +
    Create an instance of Contributor.Roles +

    +

    +
    +
    +
    +
    + +

    +createMailingList

    +
    +public MailingList createMailingList()
    +
    +
    Create an instance of MailingList +

    +

    +
    +
    +
    +
    + +

    +createCiManagement

    +
    +public CiManagement createCiManagement()
    +
    +
    Create an instance of CiManagement +

    +

    +
    +
    +
    +
    + +

    +createModelMailingLists

    +
    +public Model.MailingLists createModelMailingLists()
    +
    +
    Create an instance of Model.MailingLists +

    +

    +
    +
    +
    +
    + +

    +createModelDevelopers

    +
    +public Model.Developers createModelDevelopers()
    +
    +
    Create an instance of Model.Developers +

    +

    +
    +
    +
    +
    + +

    +createReportingPlugins

    +
    +public Reporting.Plugins createReportingPlugins()
    +
    +
    Create an instance of Reporting.Plugins +

    +

    +
    +
    +
    +
    + +

    +createContributor

    +
    +public Contributor createContributor()
    +
    +
    Create an instance of Contributor +

    +

    +
    +
    +
    +
    + +

    +createProfileReports

    +
    +public Profile.Reports createProfileReports()
    +
    +
    Create an instance of Profile.Reports +

    +

    +
    +
    +
    +
    + +

    +createBuildBaseTestResources

    +
    +public BuildBase.TestResources createBuildBaseTestResources()
    +
    +
    Create an instance of BuildBase.TestResources +

    +

    +
    +
    +
    +
    + +

    +createDeveloperProperties

    +
    +public Developer.Properties createDeveloperProperties()
    +
    +
    Create an instance of Developer.Properties +

    +

    +
    +
    +
    +
    + +

    +createPluginDependencies

    +
    +public Plugin.Dependencies createPluginDependencies()
    +
    +
    Create an instance of Plugin.Dependencies +

    +

    +
    +
    +
    +
    + +

    +createResourceIncludes

    +
    +public Resource.Includes createResourceIncludes()
    +
    +
    Create an instance of Resource.Includes +

    +

    +
    +
    +
    +
    + +

    +createResource

    +
    +public Resource createResource()
    +
    +
    Create an instance of Resource +

    +

    +
    +
    +
    +
    + +

    +createRepository

    +
    +public Repository createRepository()
    +
    +
    Create an instance of Repository +

    +

    +
    +
    +
    +
    + +

    +createBuildBaseFilters

    +
    +public BuildBase.Filters createBuildBaseFilters()
    +
    +
    Create an instance of BuildBase.Filters +

    +

    +
    +
    +
    +
    + +

    +createReportSet

    +
    +public ReportSet createReportSet()
    +
    +
    Create an instance of ReportSet +

    +

    +
    +
    +
    +
    + +

    +createNotifierConfiguration

    +
    +public Notifier.Configuration createNotifierConfiguration()
    +
    +
    Create an instance of Notifier.Configuration +

    +

    +
    +
    +
    +
    + +

    +createModelRepositories

    +
    +public Model.Repositories createModelRepositories()
    +
    +
    Create an instance of Model.Repositories +

    +

    +
    +
    +
    +
    + +

    +createDependency

    +
    +public Dependency createDependency()
    +
    +
    Create an instance of Dependency +

    +

    +
    +
    +
    +
    + +

    +createRelocation

    +
    +public Relocation createRelocation()
    +
    +
    Create an instance of Relocation +

    +

    +
    +
    +
    +
    + +

    +createMailingListOtherArchives

    +
    +public MailingList.OtherArchives createMailingListOtherArchives()
    +
    +
    Create an instance of MailingList.OtherArchives +

    +

    +
    +
    +
    +
    + +

    +createReportSetConfiguration

    +
    +public ReportSet.Configuration createReportSetConfiguration()
    +
    +
    Create an instance of ReportSet.Configuration +

    +

    +
    +
    +
    +
    + +

    +createProfile

    +
    +public Profile createProfile()
    +
    +
    Create an instance of Profile +

    +

    +
    +
    +
    +
    + +

    +createPluginExecutionConfiguration

    +
    +public PluginExecution.Configuration createPluginExecutionConfiguration()
    +
    +
    Create an instance of PluginExecution.Configuration +

    +

    +
    +
    +
    +
    + +

    +createNotifier

    +
    +public Notifier createNotifier()
    +
    +
    Create an instance of Notifier +

    +

    +
    +
    +
    +
    + +

    +createParent

    +
    +public Parent createParent()
    +
    +
    Create an instance of Parent +

    +

    +
    +
    +
    +
    + +

    +createPluginExecution

    +
    +public PluginExecution createPluginExecution()
    +
    +
    Create an instance of PluginExecution +

    +

    +
    +
    +
    +
    + +

    +createDeveloper

    +
    +public Developer createDeveloper()
    +
    +
    Create an instance of Developer +

    +

    +
    +
    +
    +
    + +

    +createProfileModules

    +
    +public Profile.Modules createProfileModules()
    +
    +
    Create an instance of Profile.Modules +

    +

    +
    +
    +
    +
    + +

    +createProject

    +
    +public JAXBElement<Model> createProject(Model value)
    +
    +
    Create an instance of JAXBElement<Model>} +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html new file mode 100644 index 000000000..5373cc3d3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html @@ -0,0 +1,420 @@ + + + + + + + +Organization (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Organization

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Organization
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Organization
    extends Object
    + + +

    +Specifies the organization that produces this project. + +

    Java class for Organization complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Organization">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringname + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Organization() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Organization

    +
    +public Organization()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html new file mode 100644 index 000000000..65db83716 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html @@ -0,0 +1,566 @@ + + + + + + + +Parent (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Parent

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Parent
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Parent
    extends Object
    + + +

    +4.0.0 + +

    Java class for Parent complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Parent">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="relativePath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  StringrelativePath + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Parent() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetRelativePath() + +
    +          Gets the value of the relativePath property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetRelativePath(String value) + +
    +          Sets the value of the relativePath property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    +
    + +

    +relativePath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String relativePath
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Parent

    +
    +public Parent()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getRelativePath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getRelativePath()
    +
    +
    Gets the value of the relativePath property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setRelativePath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRelativePath(String value)
    +
    +
    Sets the value of the relativePath property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html new file mode 100644 index 000000000..7ca412057 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Plugin.Configuration

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration
    +
    +
    +
    Enclosing class:
    Plugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Plugin.Configuration
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Plugin.Configuration() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Plugin.Configuration

    +
    +public Plugin.Configuration()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html new file mode 100644 index 000000000..5fa6d839a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Plugin.Dependencies

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies
    +
    +
    +
    Enclosing class:
    Plugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Plugin.Dependencies
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Dependency>dependency + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Plugin.Dependencies() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Dependency>getDependency() + +
    +          Gets the value of the dependency property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +dependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Dependency> dependency
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Plugin.Dependencies

    +
    +public Plugin.Dependencies()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Dependency> getDependency()
    +
    +
    Gets the value of the dependency property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the dependency property. + +

    + For example, to add a new item, do as follows: +

    +    getDependency().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Dependency +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html new file mode 100644 index 000000000..106823d28 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Executions (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Plugin.Executions

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions
    +
    +
    +
    Enclosing class:
    Plugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Plugin.Executions
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="execution" type="{http://maven.apache.org/POM/4.0.0}PluginExecution" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<PluginExecution>execution + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Plugin.Executions() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<PluginExecution>getExecution() + +
    +          Gets the value of the execution property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +execution

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<PluginExecution> execution
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Plugin.Executions

    +
    +public Plugin.Executions()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getExecution

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<PluginExecution> getExecution()
    +
    +
    Gets the value of the execution property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the execution property. + +

    + For example, to add a new item, do as follows: +

    +    getExecution().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + PluginExecution +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html new file mode 100644 index 000000000..e2212cdfe --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Goals (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Plugin.Goals

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals
    +
    +
    +
    Enclosing class:
    Plugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Plugin.Goals
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Plugin.Goals() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Plugin.Goals

    +
    +public Plugin.Goals()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html new file mode 100644 index 000000000..655ecde58 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html @@ -0,0 +1,1012 @@ + + + + + + + +Plugin (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Plugin

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Plugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Plugin
    extends Object
    + + +

    +4.0.0 + +

    Java class for Plugin complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Plugin">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="extensions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="executions" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="execution" type="{http://maven.apache.org/POM/4.0.0}PluginExecution" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="dependencies" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="goals" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="configuration" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classPlugin.Configuration + +
    +          Java class for anonymous complex type.
    +static classPlugin.Dependencies + +
    +          Java class for anonymous complex type.
    +static classPlugin.Executions + +
    +          Java class for anonymous complex type.
    +static classPlugin.Goals + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  Plugin.Configurationconfiguration + +
    +           
    +protected  Plugin.Dependenciesdependencies + +
    +           
    +protected  Plugin.Executionsexecutions + +
    +           
    +protected  Booleanextensions + +
    +           
    +protected  Plugin.Goalsgoals + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  Stringinherited + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Plugin() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + Plugin.ConfigurationgetConfiguration() + +
    +          Gets the value of the configuration property.
    + Plugin.DependenciesgetDependencies() + +
    +          Gets the value of the dependencies property.
    + Plugin.ExecutionsgetExecutions() + +
    +          Gets the value of the executions property.
    + Plugin.GoalsgetGoals() + +
    +          Gets the value of the goals property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetInherited() + +
    +          Gets the value of the inherited property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + BooleanisExtensions() + +
    +          Gets the value of the extensions property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetConfiguration(Plugin.Configuration value) + +
    +          Sets the value of the configuration property.
    + voidsetDependencies(Plugin.Dependencies value) + +
    +          Sets the value of the dependencies property.
    + voidsetExecutions(Plugin.Executions value) + +
    +          Sets the value of the executions property.
    + voidsetExtensions(Boolean value) + +
    +          Sets the value of the extensions property.
    + voidsetGoals(Plugin.Goals value) + +
    +          Sets the value of the goals property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetInherited(String value) + +
    +          Sets the value of the inherited property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    +
    + +

    +extensions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean extensions
    +
    +
    +
    +
    +
    + +

    +executions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Plugin.Executions executions
    +
    +
    +
    +
    +
    + +

    +dependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Plugin.Dependencies dependencies
    +
    +
    +
    +
    +
    + +

    +goals

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Plugin.Goals goals
    +
    +
    +
    +
    +
    + +

    +inherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String inherited
    +
    +
    +
    +
    +
    + +

    +configuration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Plugin.Configuration configuration
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Plugin

    +
    +public Plugin()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +isExtensions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isExtensions()
    +
    +
    Gets the value of the extensions property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setExtensions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExtensions(Boolean value)
    +
    +
    Sets the value of the extensions property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getExecutions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Plugin.Executions getExecutions()
    +
    +
    Gets the value of the executions property. +

    +

    + +
    Returns:
    possible object is + Plugin.Executions
    +
    +
    +
    + +

    +setExecutions

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExecutions(Plugin.Executions value)
    +
    +
    Sets the value of the executions property. +

    +

    +
    Parameters:
    value - allowed object is + Plugin.Executions
    +
    +
    +
    + +

    +getDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Plugin.Dependencies getDependencies()
    +
    +
    Gets the value of the dependencies property. +

    +

    + +
    Returns:
    possible object is + Plugin.Dependencies
    +
    +
    +
    + +

    +setDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDependencies(Plugin.Dependencies value)
    +
    +
    Sets the value of the dependencies property. +

    +

    +
    Parameters:
    value - allowed object is + Plugin.Dependencies
    +
    +
    +
    + +

    +getGoals

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Plugin.Goals getGoals()
    +
    +
    Gets the value of the goals property. +

    +

    + +
    Returns:
    possible object is + Plugin.Goals
    +
    +
    +
    + +

    +setGoals

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGoals(Plugin.Goals value)
    +
    +
    Sets the value of the goals property. +

    +

    +
    Parameters:
    value - allowed object is + Plugin.Goals
    +
    +
    +
    + +

    +getInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getInherited()
    +
    +
    Gets the value of the inherited property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setInherited(String value)
    +
    +
    Sets the value of the inherited property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Plugin.Configuration getConfiguration()
    +
    +
    Gets the value of the configuration property. +

    +

    + +
    Returns:
    possible object is + Plugin.Configuration
    +
    +
    +
    + +

    +setConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setConfiguration(Plugin.Configuration value)
    +
    +
    Sets the value of the configuration property. +

    +

    +
    Parameters:
    value - allowed object is + Plugin.Configuration
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html new file mode 100644 index 000000000..c2ff229f5 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +PluginExecution.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class PluginExecution.Configuration

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration
    +
    +
    +
    Enclosing class:
    PluginExecution
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class PluginExecution.Configuration
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    PluginExecution.Configuration() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +PluginExecution.Configuration

    +
    +public PluginExecution.Configuration()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html new file mode 100644 index 000000000..fc2147572 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html @@ -0,0 +1,338 @@ + + + + + + + +PluginExecution.Goals (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class PluginExecution.Goals

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals
    +
    +
    +
    Enclosing class:
    PluginExecution
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class PluginExecution.Goals
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="goal" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>goal + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    PluginExecution.Goals() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getGoal() + +
    +          Gets the value of the goal property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +goal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> goal
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +PluginExecution.Goals

    +
    +public PluginExecution.Goals()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getGoal

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getGoal()
    +
    +
    Gets the value of the goal property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the goal property. + +

    + For example, to add a new item, do as follows: +

    +    getGoal().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html new file mode 100644 index 000000000..51131afd1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html @@ -0,0 +1,684 @@ + + + + + + + +PluginExecution (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class PluginExecution

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class PluginExecution
    extends Object
    + + +

    +4.0.0 + +

    Java class for PluginExecution complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="PluginExecution">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="phase" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="goals" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="goal" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="configuration" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classPluginExecution.Configuration + +
    +          Java class for anonymous complex type.
    +static classPluginExecution.Goals + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  PluginExecution.Configurationconfiguration + +
    +           
    +protected  PluginExecution.Goalsgoals + +
    +           
    +protected  Stringid + +
    +           
    +protected  Stringinherited + +
    +           
    +protected  Stringphase + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    PluginExecution() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + PluginExecution.ConfigurationgetConfiguration() + +
    +          Gets the value of the configuration property.
    + PluginExecution.GoalsgetGoals() + +
    +          Gets the value of the goals property.
    + StringgetId() + +
    +          Gets the value of the id property.
    + StringgetInherited() + +
    +          Gets the value of the inherited property.
    + StringgetPhase() + +
    +          Gets the value of the phase property.
    + voidsetConfiguration(PluginExecution.Configuration value) + +
    +          Sets the value of the configuration property.
    + voidsetGoals(PluginExecution.Goals value) + +
    +          Sets the value of the goals property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetInherited(String value) + +
    +          Sets the value of the inherited property.
    + voidsetPhase(String value) + +
    +          Sets the value of the phase property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +phase

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String phase
    +
    +
    +
    +
    +
    + +

    +goals

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected PluginExecution.Goals goals
    +
    +
    +
    +
    +
    + +

    +inherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String inherited
    +
    +
    +
    +
    +
    + +

    +configuration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected PluginExecution.Configuration configuration
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +PluginExecution

    +
    +public PluginExecution()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getPhase

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getPhase()
    +
    +
    Gets the value of the phase property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setPhase

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPhase(String value)
    +
    +
    Sets the value of the phase property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getGoals

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public PluginExecution.Goals getGoals()
    +
    +
    Gets the value of the goals property. +

    +

    + +
    Returns:
    possible object is + PluginExecution.Goals
    +
    +
    +
    + +

    +setGoals

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGoals(PluginExecution.Goals value)
    +
    +
    Sets the value of the goals property. +

    +

    +
    Parameters:
    value - allowed object is + PluginExecution.Goals
    +
    +
    +
    + +

    +getInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getInherited()
    +
    +
    Gets the value of the inherited property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setInherited(String value)
    +
    +
    Sets the value of the inherited property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public PluginExecution.Configuration getConfiguration()
    +
    +
    Gets the value of the configuration property. +

    +

    + +
    Returns:
    possible object is + PluginExecution.Configuration
    +
    +
    +
    + +

    +setConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setConfiguration(PluginExecution.Configuration value)
    +
    +
    Sets the value of the configuration property. +

    +

    +
    Parameters:
    value - allowed object is + PluginExecution.Configuration
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html new file mode 100644 index 000000000..9d52dbca3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +PluginManagement.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class PluginManagement.Plugins

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins
    +
    +
    +
    Enclosing class:
    PluginManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class PluginManagement.Plugins
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Plugin>plugin + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    PluginManagement.Plugins() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Plugin>getPlugin() + +
    +          Gets the value of the plugin property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +plugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Plugin> plugin
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +PluginManagement.Plugins

    +
    +public PluginManagement.Plugins()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPlugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Plugin> getPlugin()
    +
    +
    Gets the value of the plugin property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the plugin property. + +

    + For example, to add a new item, do as follows: +

    +    getPlugin().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Plugin +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html new file mode 100644 index 000000000..d8c686251 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html @@ -0,0 +1,375 @@ + + + + + + + +PluginManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class PluginManagement

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class PluginManagement
    extends Object
    + + +

    +Section for management of default plugin information for use in a group of POMs. + + +

    Java class for PluginManagement complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="PluginManagement">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="plugins" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classPluginManagement.Plugins + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + +
    +Field Summary
    +protected  PluginManagement.Pluginsplugins + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    PluginManagement() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + PluginManagement.PluginsgetPlugins() + +
    +          Gets the value of the plugins property.
    + voidsetPlugins(PluginManagement.Plugins value) + +
    +          Sets the value of the plugins property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +plugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected PluginManagement.Plugins plugins
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +PluginManagement

    +
    +public PluginManagement()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public PluginManagement.Plugins getPlugins()
    +
    +
    Gets the value of the plugins property. +

    +

    + +
    Returns:
    possible object is + PluginManagement.Plugins
    +
    +
    +
    + +

    +setPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPlugins(PluginManagement.Plugins value)
    +
    +
    Sets the value of the plugins property. +

    +

    +
    Parameters:
    value - allowed object is + PluginManagement.Plugins
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html new file mode 100644 index 000000000..ccd25fc3a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html @@ -0,0 +1,347 @@ + + + + + + + +Prerequisites (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Prerequisites

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Prerequisites
    extends Object
    + + +

    +Describes the prerequisites a project can have. + +

    Java class for Prerequisites complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Prerequisites">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="maven" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  Stringmaven + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Prerequisites() + +
    +           
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetMaven() + +
    +          Gets the value of the maven property.
    + voidsetMaven(String value) + +
    +          Sets the value of the maven property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +maven

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String maven
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Prerequisites

    +
    +public Prerequisites()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getMaven

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getMaven()
    +
    +
    Gets the value of the maven property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setMaven

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setMaven(String value)
    +
    +
    Sets the value of the maven property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html new file mode 100644 index 000000000..b49339615 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile.Dependencies

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies
    +
    +
    +
    Enclosing class:
    Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Profile.Dependencies
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Dependency>dependency + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile.Dependencies() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Dependency>getDependency() + +
    +          Gets the value of the dependency property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +dependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Dependency> dependency
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile.Dependencies

    +
    +public Profile.Dependencies()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDependency

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Dependency> getDependency()
    +
    +
    Gets the value of the dependency property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the dependency property. + +

    + For example, to add a new item, do as follows: +

    +    getDependency().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Dependency +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html new file mode 100644 index 000000000..c8c12987f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Modules (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile.Modules

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules
    +
    +
    +
    Enclosing class:
    Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Profile.Modules
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>module + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile.Modules() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getModule() + +
    +          Gets the value of the module property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +module

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> module
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile.Modules

    +
    +public Profile.Modules()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getModule

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getModule()
    +
    +
    Gets the value of the module property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the module property. + +

    + For example, to add a new item, do as follows: +

    +    getModule().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html new file mode 100644 index 000000000..d404c9bf3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.PluginRepositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile.PluginRepositories

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories
    +
    +
    +
    Enclosing class:
    Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Profile.PluginRepositories
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Repository>pluginRepository + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile.PluginRepositories() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Repository>getPluginRepository() + +
    +          Gets the value of the pluginRepository property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +pluginRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Repository> pluginRepository
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile.PluginRepositories

    +
    +public Profile.PluginRepositories()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPluginRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Repository> getPluginRepository()
    +
    +
    Gets the value of the pluginRepository property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the pluginRepository property. + +

    + For example, to add a new item, do as follows: +

    +    getPluginRepository().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Repository +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html new file mode 100644 index 000000000..2b8b2e75b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile.Properties

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties
    +
    +
    +
    Enclosing class:
    Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Profile.Properties
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile.Properties() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile.Properties

    +
    +public Profile.Properties()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html new file mode 100644 index 000000000..fe6ad60a5 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Reports (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile.Reports

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports
    +
    +
    +
    Enclosing class:
    Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Profile.Reports
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile.Reports() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile.Reports

    +
    +public Profile.Reports()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html new file mode 100644 index 000000000..9dabad2a8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Repositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile.Repositories

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories
    +
    +
    +
    Enclosing class:
    Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Profile.Repositories
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Repository>repository + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile.Repositories() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Repository>getRepository() + +
    +          Gets the value of the repository property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +repository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Repository> repository
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile.Repositories

    +
    +public Profile.Repositories()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getRepository

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Repository> getRepository()
    +
    +
    Gets the value of the repository property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the repository property. + +

    + For example, to add a new item, do as follows: +

    +    getRepository().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Repository +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html new file mode 100644 index 000000000..9586327be --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html @@ -0,0 +1,1268 @@ + + + + + + + +Profile (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Profile

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Profile
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Profile
    extends Object
    + + +

    +Modifications to the build process which is activated based on environmental parameters or command line arguments. + + +

    Java class for Profile complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Profile">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="activation" type="{http://maven.apache.org/POM/4.0.0}Activation" minOccurs="0"/>
    +         <element name="build" type="{http://maven.apache.org/POM/4.0.0}BuildBase" minOccurs="0"/>
    +         <element name="modules" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="repositories" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="pluginRepositories" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="dependencies" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="reports" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="reporting" type="{http://maven.apache.org/POM/4.0.0}Reporting" minOccurs="0"/>
    +         <element name="dependencyManagement" type="{http://maven.apache.org/POM/4.0.0}DependencyManagement" minOccurs="0"/>
    +         <element name="distributionManagement" type="{http://maven.apache.org/POM/4.0.0}DistributionManagement" minOccurs="0"/>
    +         <element name="properties" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classProfile.Dependencies + +
    +          Java class for anonymous complex type.
    +static classProfile.Modules + +
    +          Java class for anonymous complex type.
    +static classProfile.PluginRepositories + +
    +          Java class for anonymous complex type.
    +static classProfile.Properties + +
    +          Java class for anonymous complex type.
    +static classProfile.Reports + +
    +          Java class for anonymous complex type.
    +static classProfile.Repositories + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Activationactivation + +
    +           
    +protected  BuildBasebuild + +
    +           
    +protected  Profile.Dependenciesdependencies + +
    +           
    +protected  DependencyManagementdependencyManagement + +
    +           
    +protected  DistributionManagementdistributionManagement + +
    +           
    +protected  Stringid + +
    +           
    +protected  Profile.Modulesmodules + +
    +           
    +protected  Profile.PluginRepositoriespluginRepositories + +
    +           
    +protected  Profile.Propertiesproperties + +
    +           
    +protected  Reportingreporting + +
    +           
    +protected  Profile.Reportsreports + +
    +           
    +protected  Profile.Repositoriesrepositories + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Profile() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + ActivationgetActivation() + +
    +          Gets the value of the activation property.
    + BuildBasegetBuild() + +
    +          Gets the value of the build property.
    + Profile.DependenciesgetDependencies() + +
    +          Gets the value of the dependencies property.
    + DependencyManagementgetDependencyManagement() + +
    +          Gets the value of the dependencyManagement property.
    + DistributionManagementgetDistributionManagement() + +
    +          Gets the value of the distributionManagement property.
    + StringgetId() + +
    +          Gets the value of the id property.
    + Profile.ModulesgetModules() + +
    +          Gets the value of the modules property.
    + Profile.PluginRepositoriesgetPluginRepositories() + +
    +          Gets the value of the pluginRepositories property.
    + Profile.PropertiesgetProperties() + +
    +          Gets the value of the properties property.
    + ReportinggetReporting() + +
    +          Gets the value of the reporting property.
    + Profile.ReportsgetReports() + +
    +          Gets the value of the reports property.
    + Profile.RepositoriesgetRepositories() + +
    +          Gets the value of the repositories property.
    + voidsetActivation(Activation value) + +
    +          Sets the value of the activation property.
    + voidsetBuild(BuildBase value) + +
    +          Sets the value of the build property.
    + voidsetDependencies(Profile.Dependencies value) + +
    +          Sets the value of the dependencies property.
    + voidsetDependencyManagement(DependencyManagement value) + +
    +          Sets the value of the dependencyManagement property.
    + voidsetDistributionManagement(DistributionManagement value) + +
    +          Sets the value of the distributionManagement property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetModules(Profile.Modules value) + +
    +          Sets the value of the modules property.
    + voidsetPluginRepositories(Profile.PluginRepositories value) + +
    +          Sets the value of the pluginRepositories property.
    + voidsetProperties(Profile.Properties value) + +
    +          Sets the value of the properties property.
    + voidsetReporting(Reporting value) + +
    +          Sets the value of the reporting property.
    + voidsetReports(Profile.Reports value) + +
    +          Sets the value of the reports property.
    + voidsetRepositories(Profile.Repositories value) + +
    +          Sets the value of the repositories property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +activation

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Activation activation
    +
    +
    +
    +
    +
    + +

    +build

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected BuildBase build
    +
    +
    +
    +
    +
    + +

    +modules

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Profile.Modules modules
    +
    +
    +
    +
    +
    + +

    +repositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Profile.Repositories repositories
    +
    +
    +
    +
    +
    + +

    +pluginRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Profile.PluginRepositories pluginRepositories
    +
    +
    +
    +
    +
    + +

    +dependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Profile.Dependencies dependencies
    +
    +
    +
    +
    +
    + +

    +reports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Profile.Reports reports
    +
    +
    +
    +
    +
    + +

    +reporting

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Reporting reporting
    +
    +
    +
    +
    +
    + +

    +dependencyManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DependencyManagement dependencyManagement
    +
    +
    +
    +
    +
    + +

    +distributionManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected DistributionManagement distributionManagement
    +
    +
    +
    +
    +
    + +

    +properties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Profile.Properties properties
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Profile

    +
    +public Profile()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getActivation

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Activation getActivation()
    +
    +
    Gets the value of the activation property. +

    +

    + +
    Returns:
    possible object is + Activation
    +
    +
    +
    + +

    +setActivation

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setActivation(Activation value)
    +
    +
    Sets the value of the activation property. +

    +

    +
    Parameters:
    value - allowed object is + Activation
    +
    +
    +
    + +

    +getBuild

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public BuildBase getBuild()
    +
    +
    Gets the value of the build property. +

    +

    + +
    Returns:
    possible object is + BuildBase
    +
    +
    +
    + +

    +setBuild

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setBuild(BuildBase value)
    +
    +
    Sets the value of the build property. +

    +

    +
    Parameters:
    value - allowed object is + BuildBase
    +
    +
    +
    + +

    +getModules

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Profile.Modules getModules()
    +
    +
    Gets the value of the modules property. +

    +

    + +
    Returns:
    possible object is + Profile.Modules
    +
    +
    +
    + +

    +setModules

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setModules(Profile.Modules value)
    +
    +
    Sets the value of the modules property. +

    +

    +
    Parameters:
    value - allowed object is + Profile.Modules
    +
    +
    +
    + +

    +getRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Profile.Repositories getRepositories()
    +
    +
    Gets the value of the repositories property. +

    +

    + +
    Returns:
    possible object is + Profile.Repositories
    +
    +
    +
    + +

    +setRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setRepositories(Profile.Repositories value)
    +
    +
    Sets the value of the repositories property. +

    +

    +
    Parameters:
    value - allowed object is + Profile.Repositories
    +
    +
    +
    + +

    +getPluginRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Profile.PluginRepositories getPluginRepositories()
    +
    +
    Gets the value of the pluginRepositories property. +

    +

    + +
    Returns:
    possible object is + Profile.PluginRepositories
    +
    +
    +
    + +

    +setPluginRepositories

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPluginRepositories(Profile.PluginRepositories value)
    +
    +
    Sets the value of the pluginRepositories property. +

    +

    +
    Parameters:
    value - allowed object is + Profile.PluginRepositories
    +
    +
    +
    + +

    +getDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Profile.Dependencies getDependencies()
    +
    +
    Gets the value of the dependencies property. +

    +

    + +
    Returns:
    possible object is + Profile.Dependencies
    +
    +
    +
    + +

    +setDependencies

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDependencies(Profile.Dependencies value)
    +
    +
    Sets the value of the dependencies property. +

    +

    +
    Parameters:
    value - allowed object is + Profile.Dependencies
    +
    +
    +
    + +

    +getReports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Profile.Reports getReports()
    +
    +
    Gets the value of the reports property. +

    +

    + +
    Returns:
    possible object is + Profile.Reports
    +
    +
    +
    + +

    +setReports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReports(Profile.Reports value)
    +
    +
    Sets the value of the reports property. +

    +

    +
    Parameters:
    value - allowed object is + Profile.Reports
    +
    +
    +
    + +

    +getReporting

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Reporting getReporting()
    +
    +
    Gets the value of the reporting property. +

    +

    + +
    Returns:
    possible object is + Reporting
    +
    +
    +
    + +

    +setReporting

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReporting(Reporting value)
    +
    +
    Sets the value of the reporting property. +

    +

    +
    Parameters:
    value - allowed object is + Reporting
    +
    +
    +
    + +

    +getDependencyManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DependencyManagement getDependencyManagement()
    +
    +
    Gets the value of the dependencyManagement property. +

    +

    + +
    Returns:
    possible object is + DependencyManagement
    +
    +
    +
    + +

    +setDependencyManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDependencyManagement(DependencyManagement value)
    +
    +
    Sets the value of the dependencyManagement property. +

    +

    +
    Parameters:
    value - allowed object is + DependencyManagement
    +
    +
    +
    + +

    +getDistributionManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public DistributionManagement getDistributionManagement()
    +
    +
    Gets the value of the distributionManagement property. +

    +

    + +
    Returns:
    possible object is + DistributionManagement
    +
    +
    +
    + +

    +setDistributionManagement

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDistributionManagement(DistributionManagement value)
    +
    +
    Sets the value of the distributionManagement property. +

    +

    +
    Parameters:
    value - allowed object is + DistributionManagement
    +
    +
    +
    + +

    +getProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Profile.Properties getProperties()
    +
    +
    Gets the value of the properties property. +

    +

    + +
    Returns:
    possible object is + Profile.Properties
    +
    +
    +
    + +

    +setProperties

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setProperties(Profile.Properties value)
    +
    +
    Sets the value of the properties property. +

    +

    +
    Parameters:
    value - allowed object is + Profile.Properties
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html new file mode 100644 index 000000000..189287328 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html @@ -0,0 +1,567 @@ + + + + + + + +Relocation (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Relocation

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Relocation
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Relocation
    extends Object
    + + +

    +Describes where an artifact has moved to. If any of the values are omitted, it is assumed to be the + same as it was before. + +

    Java class for Relocation complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Relocation">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="message" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  Stringmessage + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Relocation() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetMessage() + +
    +          Gets the value of the message property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetMessage(String value) + +
    +          Sets the value of the message property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    +
    + +

    +message

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String message
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Relocation

    +
    +public Relocation()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getMessage

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getMessage()
    +
    +
    Gets the value of the message property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setMessage

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setMessage(String value)
    +
    +
    Sets the value of the message property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html new file mode 100644 index 000000000..0ce290d80 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +ReportPlugin.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ReportPlugin.Configuration

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration
    +
    +
    +
    Enclosing class:
    ReportPlugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class ReportPlugin.Configuration
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportPlugin.Configuration() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportPlugin.Configuration

    +
    +public ReportPlugin.Configuration()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html new file mode 100644 index 000000000..d336a4fe1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html @@ -0,0 +1,338 @@ + + + + + + + +ReportPlugin.ReportSets (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ReportPlugin.ReportSets

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets
    +
    +
    +
    Enclosing class:
    ReportPlugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class ReportPlugin.ReportSets
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="reportSet" type="{http://maven.apache.org/POM/4.0.0}ReportSet" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<ReportSet>reportSet + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportPlugin.ReportSets() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<ReportSet>getReportSet() + +
    +          Gets the value of the reportSet property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +reportSet

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<ReportSet> reportSet
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportPlugin.ReportSets

    +
    +public ReportPlugin.ReportSets()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getReportSet

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<ReportSet> getReportSet()
    +
    +
    Gets the value of the reportSet property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the reportSet property. + +

    + For example, to add a new item, do as follows: +

    +    getReportSet().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + ReportSet +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html new file mode 100644 index 000000000..4b3d82311 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html @@ -0,0 +1,757 @@ + + + + + + + +ReportPlugin (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ReportPlugin

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class ReportPlugin
    extends Object
    + + +

    +4.0.0 + +

    Java class for ReportPlugin complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="ReportPlugin">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="configuration" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="reportSets" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="reportSet" type="{http://maven.apache.org/POM/4.0.0}ReportSet" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classReportPlugin.Configuration + +
    +          Java class for anonymous complex type.
    +static classReportPlugin.ReportSets + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringartifactId + +
    +           
    +protected  ReportPlugin.Configurationconfiguration + +
    +           
    +protected  StringgroupId + +
    +           
    +protected  Stringinherited + +
    +           
    +protected  ReportPlugin.ReportSetsreportSets + +
    +           
    +protected  Stringversion + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportPlugin() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetArtifactId() + +
    +          Gets the value of the artifactId property.
    + ReportPlugin.ConfigurationgetConfiguration() + +
    +          Gets the value of the configuration property.
    + StringgetGroupId() + +
    +          Gets the value of the groupId property.
    + StringgetInherited() + +
    +          Gets the value of the inherited property.
    + ReportPlugin.ReportSetsgetReportSets() + +
    +          Gets the value of the reportSets property.
    + StringgetVersion() + +
    +          Gets the value of the version property.
    + voidsetArtifactId(String value) + +
    +          Sets the value of the artifactId property.
    + voidsetConfiguration(ReportPlugin.Configuration value) + +
    +          Sets the value of the configuration property.
    + voidsetGroupId(String value) + +
    +          Sets the value of the groupId property.
    + voidsetInherited(String value) + +
    +          Sets the value of the inherited property.
    + voidsetReportSets(ReportPlugin.ReportSets value) + +
    +          Sets the value of the reportSets property.
    + voidsetVersion(String value) + +
    +          Sets the value of the version property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +groupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String groupId
    +
    +
    +
    +
    +
    + +

    +artifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String artifactId
    +
    +
    +
    +
    +
    + +

    +version

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String version
    +
    +
    +
    +
    +
    + +

    +inherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String inherited
    +
    +
    +
    +
    +
    + +

    +configuration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ReportPlugin.Configuration configuration
    +
    +
    +
    +
    +
    + +

    +reportSets

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ReportPlugin.ReportSets reportSets
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportPlugin

    +
    +public ReportPlugin()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getGroupId()
    +
    +
    Gets the value of the groupId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setGroupId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setGroupId(String value)
    +
    +
    Sets the value of the groupId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getArtifactId()
    +
    +
    Gets the value of the artifactId property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setArtifactId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setArtifactId(String value)
    +
    +
    Sets the value of the artifactId property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getVersion()
    +
    +
    Gets the value of the version property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setVersion

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setVersion(String value)
    +
    +
    Sets the value of the version property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getInherited()
    +
    +
    Gets the value of the inherited property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setInherited(String value)
    +
    +
    Sets the value of the inherited property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ReportPlugin.Configuration getConfiguration()
    +
    +
    Gets the value of the configuration property. +

    +

    + +
    Returns:
    possible object is + ReportPlugin.Configuration
    +
    +
    +
    + +

    +setConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setConfiguration(ReportPlugin.Configuration value)
    +
    +
    Sets the value of the configuration property. +

    +

    +
    Parameters:
    value - allowed object is + ReportPlugin.Configuration
    +
    +
    +
    + +

    +getReportSets

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ReportPlugin.ReportSets getReportSets()
    +
    +
    Gets the value of the reportSets property. +

    +

    + +
    Returns:
    possible object is + ReportPlugin.ReportSets
    +
    +
    +
    + +

    +setReportSets

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReportSets(ReportPlugin.ReportSets value)
    +
    +
    Sets the value of the reportSets property. +

    +

    +
    Parameters:
    value - allowed object is + ReportPlugin.ReportSets
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html new file mode 100644 index 000000000..7784452f9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +ReportSet.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ReportSet.Configuration

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration
    +
    +
    +
    Enclosing class:
    ReportSet
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class ReportSet.Configuration
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<Element>any + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportSet.Configuration() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<Element>getAny() + +
    +          Gets the value of the any property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +any

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<Element> any
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportSet.Configuration

    +
    +public ReportSet.Configuration()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getAny

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<Element> getAny()
    +
    +
    Gets the value of the any property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the any property. + +

    + For example, to add a new item, do as follows: +

    +    getAny().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + Element +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html new file mode 100644 index 000000000..9b994b8b6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html @@ -0,0 +1,338 @@ + + + + + + + +ReportSet.Reports (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ReportSet.Reports

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports
    +
    +
    +
    Enclosing class:
    ReportSet
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class ReportSet.Reports
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="report" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>report + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportSet.Reports() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getReport() + +
    +          Gets the value of the report property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +report

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> report
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportSet.Reports

    +
    +public ReportSet.Reports()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getReport

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getReport()
    +
    +
    Gets the value of the report property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the report property. + +

    + For example, to add a new item, do as follows: +

    +    getReport().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html new file mode 100644 index 000000000..d576c0e0f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html @@ -0,0 +1,611 @@ + + + + + + + +ReportSet (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class ReportSet

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.ReportSet
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class ReportSet
    extends Object
    + + +

    +Represents a set of reports and configuration to be used to generate them. + +

    Java class for ReportSet complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="ReportSet">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="configuration" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="reports" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="report" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classReportSet.Configuration + +
    +          Java class for anonymous complex type.
    +static classReportSet.Reports + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  ReportSet.Configurationconfiguration + +
    +           
    +protected  Stringid + +
    +           
    +protected  Stringinherited + +
    +           
    +protected  ReportSet.Reportsreports + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportSet() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + ReportSet.ConfigurationgetConfiguration() + +
    +          Gets the value of the configuration property.
    + StringgetId() + +
    +          Gets the value of the id property.
    + StringgetInherited() + +
    +          Gets the value of the inherited property.
    + ReportSet.ReportsgetReports() + +
    +          Gets the value of the reports property.
    + voidsetConfiguration(ReportSet.Configuration value) + +
    +          Sets the value of the configuration property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetInherited(String value) + +
    +          Sets the value of the inherited property.
    + voidsetReports(ReportSet.Reports value) + +
    +          Sets the value of the reports property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +configuration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ReportSet.Configuration configuration
    +
    +
    +
    +
    +
    + +

    +inherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String inherited
    +
    +
    +
    +
    +
    + +

    +reports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected ReportSet.Reports reports
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportSet

    +
    +public ReportSet()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ReportSet.Configuration getConfiguration()
    +
    +
    Gets the value of the configuration property. +

    +

    + +
    Returns:
    possible object is + ReportSet.Configuration
    +
    +
    +
    + +

    +setConfiguration

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setConfiguration(ReportSet.Configuration value)
    +
    +
    Sets the value of the configuration property. +

    +

    +
    Parameters:
    value - allowed object is + ReportSet.Configuration
    +
    +
    +
    + +

    +getInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getInherited()
    +
    +
    Gets the value of the inherited property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setInherited

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setInherited(String value)
    +
    +
    Sets the value of the inherited property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getReports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public ReportSet.Reports getReports()
    +
    +
    Gets the value of the reports property. +

    +

    + +
    Returns:
    possible object is + ReportSet.Reports
    +
    +
    +
    + +

    +setReports

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReports(ReportSet.Reports value)
    +
    +
    Sets the value of the reports property. +

    +

    +
    Parameters:
    value - allowed object is + ReportSet.Reports
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html new file mode 100644 index 000000000..76d71bfa6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +Reporting.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Reporting.Plugins

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins
    +
    +
    +
    Enclosing class:
    Reporting
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Reporting.Plugins
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}ReportPlugin" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<ReportPlugin>plugin + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Reporting.Plugins() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<ReportPlugin>getPlugin() + +
    +          Gets the value of the plugin property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +plugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<ReportPlugin> plugin
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Reporting.Plugins

    +
    +public Reporting.Plugins()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getPlugin

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<ReportPlugin> getPlugin()
    +
    +
    Gets the value of the plugin property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the plugin property. + +

    + For example, to add a new item, do as follows: +

    +    getPlugin().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + ReportPlugin +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html new file mode 100644 index 000000000..83b05eb78 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html @@ -0,0 +1,520 @@ + + + + + + + +Reporting (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Reporting

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Reporting
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Reporting
    extends Object
    + + +

    +Section for management of reports and their configuration. + +

    Java class for Reporting complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Reporting">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="excludeDefaults" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="outputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="plugins" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="plugin" type="{http://maven.apache.org/POM/4.0.0}ReportPlugin" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classReporting.Plugins + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  BooleanexcludeDefaults + +
    +           
    +protected  StringoutputDirectory + +
    +           
    +protected  Reporting.Pluginsplugins + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Reporting() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetOutputDirectory() + +
    +          Gets the value of the outputDirectory property.
    + Reporting.PluginsgetPlugins() + +
    +          Gets the value of the plugins property.
    + BooleanisExcludeDefaults() + +
    +          Gets the value of the excludeDefaults property.
    + voidsetExcludeDefaults(Boolean value) + +
    +          Sets the value of the excludeDefaults property.
    + voidsetOutputDirectory(String value) + +
    +          Sets the value of the outputDirectory property.
    + voidsetPlugins(Reporting.Plugins value) + +
    +          Sets the value of the plugins property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +excludeDefaults

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean excludeDefaults
    +
    +
    +
    +
    +
    + +

    +outputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String outputDirectory
    +
    +
    +
    +
    +
    + +

    +plugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Reporting.Plugins plugins
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Reporting

    +
    +public Reporting()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isExcludeDefaults

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isExcludeDefaults()
    +
    +
    Gets the value of the excludeDefaults property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setExcludeDefaults

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExcludeDefaults(Boolean value)
    +
    +
    Sets the value of the excludeDefaults property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getOutputDirectory()
    +
    +
    Gets the value of the outputDirectory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setOutputDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setOutputDirectory(String value)
    +
    +
    Sets the value of the outputDirectory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Reporting.Plugins getPlugins()
    +
    +
    Gets the value of the plugins property. +

    +

    + +
    Returns:
    possible object is + Reporting.Plugins
    +
    +
    +
    + +

    +setPlugins

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setPlugins(Reporting.Plugins value)
    +
    +
    Sets the value of the plugins property. +

    +

    +
    Parameters:
    value - allowed object is + Reporting.Plugins
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html new file mode 100644 index 000000000..14de86f61 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html @@ -0,0 +1,713 @@ + + + + + + + +Repository (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Repository

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Repository
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Repository
    extends Object
    + + +

    +A repository contains the information needed for establishing connections with remote repository. + + +

    Java class for Repository complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Repository">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="releases" type="{http://maven.apache.org/POM/4.0.0}RepositoryPolicy" minOccurs="0"/>
    +         <element name="snapshots" type="{http://maven.apache.org/POM/4.0.0}RepositoryPolicy" minOccurs="0"/>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="layout" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringid + +
    +           
    +protected  Stringlayout + +
    +           
    +protected  Stringname + +
    +           
    +protected  RepositoryPolicyreleases + +
    +           
    +protected  RepositoryPolicysnapshots + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Repository() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetId() + +
    +          Gets the value of the id property.
    + StringgetLayout() + +
    +          Gets the value of the layout property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + RepositoryPolicygetReleases() + +
    +          Gets the value of the releases property.
    + RepositoryPolicygetSnapshots() + +
    +          Gets the value of the snapshots property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetLayout(String value) + +
    +          Sets the value of the layout property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetReleases(RepositoryPolicy value) + +
    +          Sets the value of the releases property.
    + voidsetSnapshots(RepositoryPolicy value) + +
    +          Sets the value of the snapshots property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +releases

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected RepositoryPolicy releases
    +
    +
    +
    +
    +
    + +

    +snapshots

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected RepositoryPolicy snapshots
    +
    +
    +
    +
    +
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    +
    + +

    +layout

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String layout
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Repository

    +
    +public Repository()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getReleases

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public RepositoryPolicy getReleases()
    +
    +
    Gets the value of the releases property. +

    +

    + +
    Returns:
    possible object is + RepositoryPolicy
    +
    +
    +
    + +

    +setReleases

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setReleases(RepositoryPolicy value)
    +
    +
    Sets the value of the releases property. +

    +

    +
    Parameters:
    value - allowed object is + RepositoryPolicy
    +
    +
    +
    + +

    +getSnapshots

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public RepositoryPolicy getSnapshots()
    +
    +
    Gets the value of the snapshots property. +

    +

    + +
    Returns:
    possible object is + RepositoryPolicy
    +
    +
    +
    + +

    +setSnapshots

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setSnapshots(RepositoryPolicy value)
    +
    +
    Sets the value of the snapshots property. +

    +

    +
    Parameters:
    value - allowed object is + RepositoryPolicy
    +
    +
    +
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getLayout

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getLayout()
    +
    +
    Gets the value of the layout property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setLayout

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setLayout(String value)
    +
    +
    Sets the value of the layout property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html new file mode 100644 index 000000000..267645b15 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html @@ -0,0 +1,493 @@ + + + + + + + +RepositoryPolicy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class RepositoryPolicy

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class RepositoryPolicy
    extends Object
    + + +

    +Download policy + +

    Java class for RepositoryPolicy complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="RepositoryPolicy">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="enabled" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="updatePolicy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="checksumPolicy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  StringchecksumPolicy + +
    +           
    +protected  Booleanenabled + +
    +           
    +protected  StringupdatePolicy + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    RepositoryPolicy() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetChecksumPolicy() + +
    +          Gets the value of the checksumPolicy property.
    + StringgetUpdatePolicy() + +
    +          Gets the value of the updatePolicy property.
    + BooleanisEnabled() + +
    +          Gets the value of the enabled property.
    + voidsetChecksumPolicy(String value) + +
    +          Sets the value of the checksumPolicy property.
    + voidsetEnabled(Boolean value) + +
    +          Sets the value of the enabled property.
    + voidsetUpdatePolicy(String value) + +
    +          Sets the value of the updatePolicy property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +enabled

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean enabled
    +
    +
    +
    +
    +
    + +

    +updatePolicy

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String updatePolicy
    +
    +
    +
    +
    +
    + +

    +checksumPolicy

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String checksumPolicy
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +RepositoryPolicy

    +
    +public RepositoryPolicy()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isEnabled

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isEnabled()
    +
    +
    Gets the value of the enabled property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setEnabled

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setEnabled(Boolean value)
    +
    +
    Sets the value of the enabled property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getUpdatePolicy

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUpdatePolicy()
    +
    +
    Gets the value of the updatePolicy property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUpdatePolicy

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUpdatePolicy(String value)
    +
    +
    Sets the value of the updatePolicy property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getChecksumPolicy

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getChecksumPolicy()
    +
    +
    Gets the value of the checksumPolicy property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setChecksumPolicy

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setChecksumPolicy(String value)
    +
    +
    Sets the value of the checksumPolicy property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html new file mode 100644 index 000000000..540a8445a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html @@ -0,0 +1,338 @@ + + + + + + + +Resource.Excludes (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Resource.Excludes

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes
    +
    +
    +
    Enclosing class:
    Resource
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Resource.Excludes
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="exclude" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>exclude + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Resource.Excludes() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getExclude() + +
    +          Gets the value of the exclude property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +exclude

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> exclude
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Resource.Excludes

    +
    +public Resource.Excludes()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getExclude

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getExclude()
    +
    +
    Gets the value of the exclude property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the exclude property. + +

    + For example, to add a new item, do as follows: +

    +    getExclude().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html new file mode 100644 index 000000000..7173baa06 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html @@ -0,0 +1,338 @@ + + + + + + + +Resource.Includes (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Resource.Includes

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes
    +
    +
    +
    Enclosing class:
    Resource
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public static class Resource.Includes
    extends Object
    + + +

    +

    Java class for anonymous complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType>
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <sequence>
    +         <element name="include" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +       </sequence>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  List<String>include + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Resource.Includes() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<String>getInclude() + +
    +          Gets the value of the include property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +include

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected List<String> include
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Resource.Includes

    +
    +public Resource.Includes()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getInclude

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public List<String> getInclude()
    +
    +
    Gets the value of the include property. + +

    + This accessor method returns a reference to the live list, + not a snapshot. Therefore any modification you make to the + returned list will be present inside the JAXB object. + This is why there is not a set method for the include property. + +

    + For example, to add a new item, do as follows: +

    +    getInclude().add(newItem);
    + 
    + + +

    + Objects of the following type(s) are allowed in the list + String +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html new file mode 100644 index 000000000..bd06bda4f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html @@ -0,0 +1,686 @@ + + + + + + + +Resource (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Resource

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Resource
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Resource
    extends Object
    + + +

    +This element describes all of the classpath resources associated with a project or + unit tests. + + +

    Java class for Resource complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Resource">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="targetPath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="filtering" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +         <element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="includes" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="include" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +         <element name="excludes" minOccurs="0">
    +           <complexType>
    +             <complexContent>
    +               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +                 <sequence>
    +                   <element name="exclude" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +                 </sequence>
    +               </restriction>
    +             </complexContent>
    +           </complexType>
    +         </element>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Nested Class Summary
    +static classResource.Excludes + +
    +          Java class for anonymous complex type.
    +static classResource.Includes + +
    +          Java class for anonymous complex type.
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringdirectory + +
    +           
    +protected  Resource.Excludesexcludes + +
    +           
    +protected  Booleanfiltering + +
    +           
    +protected  Resource.Includesincludes + +
    +           
    +protected  StringtargetPath + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Resource() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetDirectory() + +
    +          Gets the value of the directory property.
    + Resource.ExcludesgetExcludes() + +
    +          Gets the value of the excludes property.
    + Resource.IncludesgetIncludes() + +
    +          Gets the value of the includes property.
    + StringgetTargetPath() + +
    +          Gets the value of the targetPath property.
    + BooleanisFiltering() + +
    +          Gets the value of the filtering property.
    + voidsetDirectory(String value) + +
    +          Sets the value of the directory property.
    + voidsetExcludes(Resource.Excludes value) + +
    +          Sets the value of the excludes property.
    + voidsetFiltering(Boolean value) + +
    +          Sets the value of the filtering property.
    + voidsetIncludes(Resource.Includes value) + +
    +          Sets the value of the includes property.
    + voidsetTargetPath(String value) + +
    +          Sets the value of the targetPath property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +targetPath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String targetPath
    +
    +
    +
    +
    +
    + +

    +filtering

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Boolean filtering
    +
    +
    +
    +
    +
    + +

    +directory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String directory
    +
    +
    +
    +
    +
    + +

    +includes

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Resource.Includes includes
    +
    +
    +
    +
    +
    + +

    +excludes

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected Resource.Excludes excludes
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Resource

    +
    +public Resource()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getTargetPath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getTargetPath()
    +
    +
    Gets the value of the targetPath property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setTargetPath

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTargetPath(String value)
    +
    +
    Sets the value of the targetPath property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +isFiltering

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Boolean isFiltering()
    +
    +
    Gets the value of the filtering property. +

    +

    + +
    Returns:
    possible object is + Boolean
    +
    +
    +
    + +

    +setFiltering

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setFiltering(Boolean value)
    +
    +
    Sets the value of the filtering property. +

    +

    +
    Parameters:
    value - allowed object is + Boolean
    +
    +
    +
    + +

    +getDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDirectory()
    +
    +
    Gets the value of the directory property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDirectory

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDirectory(String value)
    +
    +
    Sets the value of the directory property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getIncludes

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Resource.Includes getIncludes()
    +
    +
    Gets the value of the includes property. +

    +

    + +
    Returns:
    possible object is + Resource.Includes
    +
    +
    +
    + +

    +setIncludes

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setIncludes(Resource.Includes value)
    +
    +
    Sets the value of the includes property. +

    +

    +
    Parameters:
    value - allowed object is + Resource.Includes
    +
    +
    +
    + +

    +getExcludes

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public Resource.Excludes getExcludes()
    +
    +
    Gets the value of the excludes property. +

    +

    + +
    Returns:
    possible object is + Resource.Excludes
    +
    +
    +
    + +

    +setExcludes

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setExcludes(Resource.Excludes value)
    +
    +
    Sets the value of the excludes property. +

    +

    +
    Parameters:
    value - allowed object is + Resource.Excludes
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html new file mode 100644 index 000000000..c000a4958 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html @@ -0,0 +1,566 @@ + + + + + + + +Scm (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Scm

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Scm
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Scm
    extends Object
    + + +

    +4.0.0 + +

    Java class for Scm complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Scm">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="connection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="developerConnection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="tag" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringconnection + +
    +           
    +protected  StringdeveloperConnection + +
    +           
    +protected  Stringtag + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Scm() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetConnection() + +
    +          Gets the value of the connection property.
    + StringgetDeveloperConnection() + +
    +          Gets the value of the developerConnection property.
    + StringgetTag() + +
    +          Gets the value of the tag property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetConnection(String value) + +
    +          Sets the value of the connection property.
    + voidsetDeveloperConnection(String value) + +
    +          Sets the value of the developerConnection property.
    + voidsetTag(String value) + +
    +          Sets the value of the tag property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +connection

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String connection
    +
    +
    +
    +
    +
    + +

    +developerConnection

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String developerConnection
    +
    +
    +
    +
    +
    + +

    +tag

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String tag
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Scm

    +
    +public Scm()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getConnection

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getConnection()
    +
    +
    Gets the value of the connection property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setConnection

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setConnection(String value)
    +
    +
    Sets the value of the connection property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getDeveloperConnection

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getDeveloperConnection()
    +
    +
    Gets the value of the developerConnection property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setDeveloperConnection

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setDeveloperConnection(String value)
    +
    +
    Sets the value of the developerConnection property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getTag

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getTag()
    +
    +
    Gets the value of the tag property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setTag

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setTag(String value)
    +
    +
    Sets the value of the tag property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html new file mode 100644 index 000000000..e080da367 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html @@ -0,0 +1,494 @@ + + + + + + + +Site (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.jaxb.pom.generated +
    +Class Site

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.jaxb.pom.generated.Site
    +
    +
    +
    +
    @Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public class Site
    extends Object
    + + +

    +Contains the information needed for deploying websites. + + +

    Java class for Site complex type. + +

    The following schema fragment specifies the expected content contained within this class. + +

    + <complexType name="Site">
    +   <complexContent>
    +     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       <all>
    +         <element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +       </all>
    +     </restriction>
    +   </complexContent>
    + </complexType>
    + 
    +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  Stringid + +
    +           
    +protected  Stringname + +
    +           
    +protected  Stringurl + +
    +           
    +  + + + + + + + + + + +
    +Constructor Summary
    Site() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + StringgetId() + +
    +          Gets the value of the id property.
    + StringgetName() + +
    +          Gets the value of the name property.
    + StringgetUrl() + +
    +          Gets the value of the url property.
    + voidsetId(String value) + +
    +          Sets the value of the id property.
    + voidsetName(String value) + +
    +          Sets the value of the name property.
    + voidsetUrl(String value) + +
    +          Sets the value of the url property.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +id

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String id
    +
    +
    +
    +
    +
    + +

    +name

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String name
    +
    +
    +
    +
    +
    + +

    +url

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +protected String url
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Site

    +
    +public Site()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getId()
    +
    +
    Gets the value of the id property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setId

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setId(String value)
    +
    +
    Sets the value of the id property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getName()
    +
    +
    Gets the value of the name property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setName

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setName(String value)
    +
    +
    Sets the value of the name property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    +
    + +

    +getUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public String getUrl()
    +
    +
    Gets the value of the url property. +

    +

    + +
    Returns:
    possible object is + String
    +
    +
    +
    + +

    +setUrl

    +
    +@Generated(value="com.sun.tools.internal.xjc.Driver",
    +           date="2012-11-09T12:33:57-05:00",
    +           comments="JAXB RI vJAXB 2.1.10 in JDK 6")
    +public void setUrl(String value)
    +
    +
    Sets the value of the url property. +

    +

    +
    Parameters:
    value - allowed object is + String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html new file mode 100644 index 000000000..4a2714949 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Activation (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Activation

    +
    + + + + + + + + + +
    +Packages that use Activation
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Activation in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Activation
    +protected  ActivationProfile.activation + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Activation
    + ActivationObjectFactory.createActivation() + +
    +          Create an instance of Activation
    + ActivationProfile.getActivation() + +
    +          Gets the value of the activation property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Activation
    + voidProfile.setActivation(Activation value) + +
    +          Sets the value of the activation property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html new file mode 100644 index 000000000..cea333247 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile

    +
    + + + + + + + + + +
    +Packages that use ActivationFile
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ActivationFile in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ActivationFile
    +protected  ActivationFileActivation.file + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ActivationFile
    + ActivationFileObjectFactory.createActivationFile() + +
    +          Create an instance of ActivationFile
    + ActivationFileActivation.getFile() + +
    +          Gets the value of the file property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ActivationFile
    + voidActivation.setFile(ActivationFile value) + +
    +          Sets the value of the file property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html new file mode 100644 index 000000000..e0728a8f6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS

    +
    + + + + + + + + + +
    +Packages that use ActivationOS
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ActivationOS in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ActivationOS
    +protected  ActivationOSActivation.os + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ActivationOS
    + ActivationOSObjectFactory.createActivationOS() + +
    +          Create an instance of ActivationOS
    + ActivationOSActivation.getOs() + +
    +          Gets the value of the os property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ActivationOS
    + voidActivation.setOs(ActivationOS value) + +
    +          Sets the value of the os property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html new file mode 100644 index 000000000..3fa3b9765 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty

    +
    + + + + + + + + + +
    +Packages that use ActivationProperty
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ActivationProperty in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ActivationProperty
    +protected  ActivationPropertyActivation.property + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ActivationProperty
    + ActivationPropertyObjectFactory.createActivationProperty() + +
    +          Create an instance of ActivationProperty
    + ActivationPropertyActivation.getProperty() + +
    +          Gets the value of the property property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ActivationProperty
    + voidActivation.setProperty(ActivationProperty value) + +
    +          Sets the value of the property property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html new file mode 100644 index 000000000..d572aa498 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions

    +
    + + + + + + + + + +
    +Packages that use Build.Extensions
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Build.Extensions in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Build.Extensions
    +protected  Build.ExtensionsBuild.extensions + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Build.Extensions
    + Build.ExtensionsObjectFactory.createBuildExtensions() + +
    +          Create an instance of Build.Extensions
    + Build.ExtensionsBuild.getExtensions() + +
    +          Gets the value of the extensions property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Build.Extensions
    + voidBuild.setExtensions(Build.Extensions value) + +
    +          Sets the value of the extensions property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html new file mode 100644 index 000000000..e3fd85c50 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters

    +
    + + + + + + + + + +
    +Packages that use Build.Filters
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Build.Filters in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Build.Filters
    +protected  Build.FiltersBuild.filters + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Build.Filters
    + Build.FiltersObjectFactory.createBuildFilters() + +
    +          Create an instance of Build.Filters
    + Build.FiltersBuild.getFilters() + +
    +          Gets the value of the filters property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Build.Filters
    + voidBuild.setFilters(Build.Filters value) + +
    +          Sets the value of the filters property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html new file mode 100644 index 000000000..82ac4a83d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins

    +
    + + + + + + + + + +
    +Packages that use Build.Plugins
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Build.Plugins in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Build.Plugins
    +protected  Build.PluginsBuild.plugins + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Build.Plugins
    + Build.PluginsObjectFactory.createBuildPlugins() + +
    +          Create an instance of Build.Plugins
    + Build.PluginsBuild.getPlugins() + +
    +          Gets the value of the plugins property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Build.Plugins
    + voidBuild.setPlugins(Build.Plugins value) + +
    +          Sets the value of the plugins property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html new file mode 100644 index 000000000..742b341f1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources

    +
    + + + + + + + + + +
    +Packages that use Build.Resources
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Build.Resources in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Build.Resources
    +protected  Build.ResourcesBuild.resources + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Build.Resources
    + Build.ResourcesObjectFactory.createBuildResources() + +
    +          Create an instance of Build.Resources
    + Build.ResourcesBuild.getResources() + +
    +          Gets the value of the resources property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Build.Resources
    + voidBuild.setResources(Build.Resources value) + +
    +          Sets the value of the resources property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html new file mode 100644 index 000000000..681c6afe9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources

    +
    + + + + + + + + + +
    +Packages that use Build.TestResources
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Build.TestResources in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Build.TestResources
    +protected  Build.TestResourcesBuild.testResources + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Build.TestResources
    + Build.TestResourcesObjectFactory.createBuildTestResources() + +
    +          Create an instance of Build.TestResources
    + Build.TestResourcesBuild.getTestResources() + +
    +          Gets the value of the testResources property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Build.TestResources
    + voidBuild.setTestResources(Build.TestResources value) + +
    +          Sets the value of the testResources property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html new file mode 100644 index 000000000..cde08710a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Build

    +
    + + + + + + + + + +
    +Packages that use Build
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Build in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Build
    +protected  BuildModel.build + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Build
    + BuildObjectFactory.createBuild() + +
    +          Create an instance of Build
    + BuildModel.getBuild() + +
    +          Gets the value of the build property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Build
    + voidModel.setBuild(Build value) + +
    +          Sets the value of the build property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html new file mode 100644 index 000000000..4fb14f94f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters

    +
    + + + + + + + + + +
    +Packages that use BuildBase.Filters
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of BuildBase.Filters in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as BuildBase.Filters
    +protected  BuildBase.FiltersBuildBase.filters + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return BuildBase.Filters
    + BuildBase.FiltersObjectFactory.createBuildBaseFilters() + +
    +          Create an instance of BuildBase.Filters
    + BuildBase.FiltersBuildBase.getFilters() + +
    +          Gets the value of the filters property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type BuildBase.Filters
    + voidBuildBase.setFilters(BuildBase.Filters value) + +
    +          Sets the value of the filters property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html new file mode 100644 index 000000000..e5a605bf7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins

    +
    + + + + + + + + + +
    +Packages that use BuildBase.Plugins
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of BuildBase.Plugins in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as BuildBase.Plugins
    +protected  BuildBase.PluginsBuildBase.plugins + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return BuildBase.Plugins
    + BuildBase.PluginsObjectFactory.createBuildBasePlugins() + +
    +          Create an instance of BuildBase.Plugins
    + BuildBase.PluginsBuildBase.getPlugins() + +
    +          Gets the value of the plugins property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type BuildBase.Plugins
    + voidBuildBase.setPlugins(BuildBase.Plugins value) + +
    +          Sets the value of the plugins property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html new file mode 100644 index 000000000..7135a1148 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources

    +
    + + + + + + + + + +
    +Packages that use BuildBase.Resources
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of BuildBase.Resources in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as BuildBase.Resources
    +protected  BuildBase.ResourcesBuildBase.resources + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return BuildBase.Resources
    + BuildBase.ResourcesObjectFactory.createBuildBaseResources() + +
    +          Create an instance of BuildBase.Resources
    + BuildBase.ResourcesBuildBase.getResources() + +
    +          Gets the value of the resources property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type BuildBase.Resources
    + voidBuildBase.setResources(BuildBase.Resources value) + +
    +          Sets the value of the resources property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html new file mode 100644 index 000000000..1857fbcac --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources

    +
    + + + + + + + + + +
    +Packages that use BuildBase.TestResources
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of BuildBase.TestResources in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as BuildBase.TestResources
    +protected  BuildBase.TestResourcesBuildBase.testResources + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return BuildBase.TestResources
    + BuildBase.TestResourcesObjectFactory.createBuildBaseTestResources() + +
    +          Create an instance of BuildBase.TestResources
    + BuildBase.TestResourcesBuildBase.getTestResources() + +
    +          Gets the value of the testResources property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type BuildBase.TestResources
    + voidBuildBase.setTestResources(BuildBase.TestResources value) + +
    +          Sets the value of the testResources property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html new file mode 100644 index 000000000..d43dfe857 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.BuildBase

    +
    + + + + + + + + + +
    +Packages that use BuildBase
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of BuildBase in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as BuildBase
    +protected  BuildBaseProfile.build + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return BuildBase
    + BuildBaseObjectFactory.createBuildBase() + +
    +          Create an instance of BuildBase
    + BuildBaseProfile.getBuild() + +
    +          Gets the value of the build property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type BuildBase
    + voidProfile.setBuild(BuildBase value) + +
    +          Sets the value of the build property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html new file mode 100644 index 000000000..1c44bb937 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers

    +
    + + + + + + + + + +
    +Packages that use CiManagement.Notifiers
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of CiManagement.Notifiers in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as CiManagement.Notifiers
    +protected  CiManagement.NotifiersCiManagement.notifiers + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return CiManagement.Notifiers
    + CiManagement.NotifiersObjectFactory.createCiManagementNotifiers() + +
    +          Create an instance of CiManagement.Notifiers
    + CiManagement.NotifiersCiManagement.getNotifiers() + +
    +          Gets the value of the notifiers property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type CiManagement.Notifiers
    + voidCiManagement.setNotifiers(CiManagement.Notifiers value) + +
    +          Sets the value of the notifiers property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html new file mode 100644 index 000000000..f05d0e775 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.CiManagement

    +
    + + + + + + + + + +
    +Packages that use CiManagement
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of CiManagement in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as CiManagement
    +protected  CiManagementModel.ciManagement + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return CiManagement
    + CiManagementObjectFactory.createCiManagement() + +
    +          Create an instance of CiManagement
    + CiManagementModel.getCiManagement() + +
    +          Gets the value of the ciManagement property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type CiManagement
    + voidModel.setCiManagement(CiManagement value) + +
    +          Sets the value of the ciManagement property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html new file mode 100644 index 000000000..7a4bc5191 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties

    +
    + + + + + + + + + +
    +Packages that use Contributor.Properties
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Contributor.Properties in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Contributor.Properties
    +protected  Contributor.PropertiesContributor.properties + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Contributor.Properties
    + Contributor.PropertiesObjectFactory.createContributorProperties() + +
    +          Create an instance of Contributor.Properties
    + Contributor.PropertiesContributor.getProperties() + +
    +          Gets the value of the properties property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Contributor.Properties
    + voidContributor.setProperties(Contributor.Properties value) + +
    +          Sets the value of the properties property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html new file mode 100644 index 000000000..90822e86b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles

    +
    + + + + + + + + + +
    +Packages that use Contributor.Roles
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Contributor.Roles in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Contributor.Roles
    +protected  Contributor.RolesContributor.roles + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Contributor.Roles
    + Contributor.RolesObjectFactory.createContributorRoles() + +
    +          Create an instance of Contributor.Roles
    + Contributor.RolesContributor.getRoles() + +
    +          Gets the value of the roles property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Contributor.Roles
    + voidContributor.setRoles(Contributor.Roles value) + +
    +          Sets the value of the roles property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html new file mode 100644 index 000000000..b0bd10e71 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Contributor

    +
    + + + + + + + + + +
    +Packages that use Contributor
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Contributor in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Contributor
    +protected  List<Contributor>Model.Contributors.contributor + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Contributor
    + ContributorObjectFactory.createContributor() + +
    +          Create an instance of Contributor
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Contributor
    + List<Contributor>Model.Contributors.getContributor() + +
    +          Gets the value of the contributor property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html new file mode 100644 index 000000000..41bcba5ce --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions

    +
    + + + + + + + + + +
    +Packages that use Dependency.Exclusions
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Dependency.Exclusions in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Dependency.Exclusions
    +protected  Dependency.ExclusionsDependency.exclusions + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Dependency.Exclusions
    + Dependency.ExclusionsObjectFactory.createDependencyExclusions() + +
    +          Create an instance of Dependency.Exclusions
    + Dependency.ExclusionsDependency.getExclusions() + +
    +          Gets the value of the exclusions property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Dependency.Exclusions
    + voidDependency.setExclusions(Dependency.Exclusions value) + +
    +          Sets the value of the exclusions property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html new file mode 100644 index 000000000..e70273560 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html @@ -0,0 +1,261 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Dependency

    +
    + + + + + + + + + +
    +Packages that use Dependency
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Dependency
    +protected  List<Dependency>Profile.Dependencies.dependency + +
    +           
    +protected  List<Dependency>Plugin.Dependencies.dependency + +
    +           
    +protected  List<Dependency>Model.Dependencies.dependency + +
    +           
    +protected  List<Dependency>DependencyManagement.Dependencies.dependency + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Dependency
    + DependencyObjectFactory.createDependency() + +
    +          Create an instance of Dependency
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Dependency
    + List<Dependency>Profile.Dependencies.getDependency() + +
    +          Gets the value of the dependency property.
    + List<Dependency>Plugin.Dependencies.getDependency() + +
    +          Gets the value of the dependency property.
    + List<Dependency>Model.Dependencies.getDependency() + +
    +          Gets the value of the dependency property.
    + List<Dependency>DependencyManagement.Dependencies.getDependency() + +
    +          Gets the value of the dependency property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html new file mode 100644 index 000000000..07ecd697f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies

    +
    + + + + + + + + + +
    +Packages that use DependencyManagement.Dependencies
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of DependencyManagement.Dependencies in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as DependencyManagement.Dependencies
    +protected  DependencyManagement.DependenciesDependencyManagement.dependencies + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return DependencyManagement.Dependencies
    + DependencyManagement.DependenciesObjectFactory.createDependencyManagementDependencies() + +
    +          Create an instance of DependencyManagement.Dependencies
    + DependencyManagement.DependenciesDependencyManagement.getDependencies() + +
    +          Gets the value of the dependencies property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type DependencyManagement.Dependencies
    + voidDependencyManagement.setDependencies(DependencyManagement.Dependencies value) + +
    +          Sets the value of the dependencies property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html new file mode 100644 index 000000000..911faeed8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement

    +
    + + + + + + + + + +
    +Packages that use DependencyManagement
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of DependencyManagement in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as DependencyManagement
    +protected  DependencyManagementProfile.dependencyManagement + +
    +           
    +protected  DependencyManagementModel.dependencyManagement + +
    +           
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return DependencyManagement
    + DependencyManagementObjectFactory.createDependencyManagement() + +
    +          Create an instance of DependencyManagement
    + DependencyManagementProfile.getDependencyManagement() + +
    +          Gets the value of the dependencyManagement property.
    + DependencyManagementModel.getDependencyManagement() + +
    +          Gets the value of the dependencyManagement property.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type DependencyManagement
    + voidProfile.setDependencyManagement(DependencyManagement value) + +
    +          Sets the value of the dependencyManagement property.
    + voidModel.setDependencyManagement(DependencyManagement value) + +
    +          Sets the value of the dependencyManagement property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html new file mode 100644 index 000000000..06211498b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository

    +
    + + + + + + + + + +
    +Packages that use DeploymentRepository
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of DeploymentRepository in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as DeploymentRepository
    +protected  DeploymentRepositoryDistributionManagement.repository + +
    +           
    +protected  DeploymentRepositoryDistributionManagement.snapshotRepository + +
    +           
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return DeploymentRepository
    + DeploymentRepositoryObjectFactory.createDeploymentRepository() + +
    +          Create an instance of DeploymentRepository
    + DeploymentRepositoryDistributionManagement.getRepository() + +
    +          Gets the value of the repository property.
    + DeploymentRepositoryDistributionManagement.getSnapshotRepository() + +
    +          Gets the value of the snapshotRepository property.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type DeploymentRepository
    + voidDistributionManagement.setRepository(DeploymentRepository value) + +
    +          Sets the value of the repository property.
    + voidDistributionManagement.setSnapshotRepository(DeploymentRepository value) + +
    +          Sets the value of the snapshotRepository property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html new file mode 100644 index 000000000..4e4aa7e29 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties

    +
    + + + + + + + + + +
    +Packages that use Developer.Properties
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Developer.Properties in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Developer.Properties
    +protected  Developer.PropertiesDeveloper.properties + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Developer.Properties
    + Developer.PropertiesObjectFactory.createDeveloperProperties() + +
    +          Create an instance of Developer.Properties
    + Developer.PropertiesDeveloper.getProperties() + +
    +          Gets the value of the properties property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Developer.Properties
    + voidDeveloper.setProperties(Developer.Properties value) + +
    +          Sets the value of the properties property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html new file mode 100644 index 000000000..7e6efc914 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles

    +
    + + + + + + + + + +
    +Packages that use Developer.Roles
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Developer.Roles in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Developer.Roles
    +protected  Developer.RolesDeveloper.roles + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Developer.Roles
    + Developer.RolesObjectFactory.createDeveloperRoles() + +
    +          Create an instance of Developer.Roles
    + Developer.RolesDeveloper.getRoles() + +
    +          Gets the value of the roles property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Developer.Roles
    + voidDeveloper.setRoles(Developer.Roles value) + +
    +          Sets the value of the roles property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html new file mode 100644 index 000000000..9dfc781d7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Developer

    +
    + + + + + + + + + +
    +Packages that use Developer
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Developer in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Developer
    +protected  List<Developer>Model.Developers.developer + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Developer
    + DeveloperObjectFactory.createDeveloper() + +
    +          Create an instance of Developer
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Developer
    + List<Developer>Model.Developers.getDeveloper() + +
    +          Gets the value of the developer property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html new file mode 100644 index 000000000..007b94eec --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement

    +
    + + + + + + + + + +
    +Packages that use DistributionManagement
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of DistributionManagement in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as DistributionManagement
    +protected  DistributionManagementProfile.distributionManagement + +
    +           
    +protected  DistributionManagementModel.distributionManagement + +
    +           
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return DistributionManagement
    + DistributionManagementObjectFactory.createDistributionManagement() + +
    +          Create an instance of DistributionManagement
    + DistributionManagementProfile.getDistributionManagement() + +
    +          Gets the value of the distributionManagement property.
    + DistributionManagementModel.getDistributionManagement() + +
    +          Gets the value of the distributionManagement property.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type DistributionManagement
    + voidProfile.setDistributionManagement(DistributionManagement value) + +
    +          Sets the value of the distributionManagement property.
    + voidModel.setDistributionManagement(DistributionManagement value) + +
    +          Sets the value of the distributionManagement property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html new file mode 100644 index 000000000..484545d7c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Exclusion

    +
    + + + + + + + + + +
    +Packages that use Exclusion
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Exclusion in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Exclusion
    +protected  List<Exclusion>Dependency.Exclusions.exclusion + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Exclusion
    + ExclusionObjectFactory.createExclusion() + +
    +          Create an instance of Exclusion
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Exclusion
    + List<Exclusion>Dependency.Exclusions.getExclusion() + +
    +          Gets the value of the exclusion property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html new file mode 100644 index 000000000..347075b19 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Extension (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Extension

    +
    + + + + + + + + + +
    +Packages that use Extension
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Extension in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Extension
    +protected  List<Extension>Build.Extensions.extension + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Extension
    + ExtensionObjectFactory.createExtension() + +
    +          Create an instance of Extension
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Extension
    + List<Extension>Build.Extensions.getExtension() + +
    +          Gets the value of the extension property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html new file mode 100644 index 000000000..cca0d7fb1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement

    +
    + + + + + + + + + +
    +Packages that use IssueManagement
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of IssueManagement in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as IssueManagement
    +protected  IssueManagementModel.issueManagement + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return IssueManagement
    + IssueManagementObjectFactory.createIssueManagement() + +
    +          Create an instance of IssueManagement
    + IssueManagementModel.getIssueManagement() + +
    +          Gets the value of the issueManagement property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type IssueManagement
    + voidModel.setIssueManagement(IssueManagement value) + +
    +          Sets the value of the issueManagement property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html new file mode 100644 index 000000000..bdf6f9cce --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.License (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.License

    +
    + + + + + + + + + +
    +Packages that use License
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of License in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type License
    +protected  List<License>Model.Licenses.license + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return License
    + LicenseObjectFactory.createLicense() + +
    +          Create an instance of License
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type License
    + List<License>Model.Licenses.getLicense() + +
    +          Gets the value of the license property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html new file mode 100644 index 000000000..dfee4006d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives

    +
    + + + + + + + + + +
    +Packages that use MailingList.OtherArchives
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of MailingList.OtherArchives in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as MailingList.OtherArchives
    +protected  MailingList.OtherArchivesMailingList.otherArchives + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return MailingList.OtherArchives
    + MailingList.OtherArchivesObjectFactory.createMailingListOtherArchives() + +
    +          Create an instance of MailingList.OtherArchives
    + MailingList.OtherArchivesMailingList.getOtherArchives() + +
    +          Gets the value of the otherArchives property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type MailingList.OtherArchives
    + voidMailingList.setOtherArchives(MailingList.OtherArchives value) + +
    +          Sets the value of the otherArchives property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html new file mode 100644 index 000000000..4cb0a4d33 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.MailingList

    +
    + + + + + + + + + +
    +Packages that use MailingList
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of MailingList in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type MailingList
    +protected  List<MailingList>Model.MailingLists.mailingList + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return MailingList
    + MailingListObjectFactory.createMailingList() + +
    +          Create an instance of MailingList
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type MailingList
    + List<MailingList>Model.MailingLists.getMailingList() + +
    +          Gets the value of the mailingList property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html new file mode 100644 index 000000000..f23e620a9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors

    +
    + + + + + + + + + +
    +Packages that use Model.Contributors
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Contributors in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Contributors
    +protected  Model.ContributorsModel.contributors + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Contributors
    + Model.ContributorsObjectFactory.createModelContributors() + +
    +          Create an instance of Model.Contributors
    + Model.ContributorsModel.getContributors() + +
    +          Gets the value of the contributors property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Contributors
    + voidModel.setContributors(Model.Contributors value) + +
    +          Sets the value of the contributors property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html new file mode 100644 index 000000000..c9c33794b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies

    +
    + + + + + + + + + +
    +Packages that use Model.Dependencies
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Dependencies in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Dependencies
    +protected  Model.DependenciesModel.dependencies + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Dependencies
    + Model.DependenciesObjectFactory.createModelDependencies() + +
    +          Create an instance of Model.Dependencies
    + Model.DependenciesModel.getDependencies() + +
    +          Gets the value of the dependencies property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Dependencies
    + voidModel.setDependencies(Model.Dependencies value) + +
    +          Sets the value of the dependencies property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html new file mode 100644 index 000000000..92f04d1a8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers

    +
    + + + + + + + + + +
    +Packages that use Model.Developers
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Developers in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Developers
    +protected  Model.DevelopersModel.developers + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Developers
    + Model.DevelopersObjectFactory.createModelDevelopers() + +
    +          Create an instance of Model.Developers
    + Model.DevelopersModel.getDevelopers() + +
    +          Gets the value of the developers property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Developers
    + voidModel.setDevelopers(Model.Developers value) + +
    +          Sets the value of the developers property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html new file mode 100644 index 000000000..bd3bee1e2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses

    +
    + + + + + + + + + +
    +Packages that use Model.Licenses
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Licenses in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Licenses
    +protected  Model.LicensesModel.licenses + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Licenses
    + Model.LicensesObjectFactory.createModelLicenses() + +
    +          Create an instance of Model.Licenses
    + Model.LicensesModel.getLicenses() + +
    +          Gets the value of the licenses property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Licenses
    + voidModel.setLicenses(Model.Licenses value) + +
    +          Sets the value of the licenses property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html new file mode 100644 index 000000000..bd4da0347 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists

    +
    + + + + + + + + + +
    +Packages that use Model.MailingLists
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.MailingLists in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.MailingLists
    +protected  Model.MailingListsModel.mailingLists + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.MailingLists
    + Model.MailingListsObjectFactory.createModelMailingLists() + +
    +          Create an instance of Model.MailingLists
    + Model.MailingListsModel.getMailingLists() + +
    +          Gets the value of the mailingLists property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.MailingLists
    + voidModel.setMailingLists(Model.MailingLists value) + +
    +          Sets the value of the mailingLists property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html new file mode 100644 index 000000000..8fd09b377 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules

    +
    + + + + + + + + + +
    +Packages that use Model.Modules
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Modules in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Modules
    +protected  Model.ModulesModel.modules + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Modules
    + Model.ModulesObjectFactory.createModelModules() + +
    +          Create an instance of Model.Modules
    + Model.ModulesModel.getModules() + +
    +          Gets the value of the modules property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Modules
    + voidModel.setModules(Model.Modules value) + +
    +          Sets the value of the modules property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html new file mode 100644 index 000000000..c9279af1f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories

    +
    + + + + + + + + + +
    +Packages that use Model.PluginRepositories
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.PluginRepositories in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.PluginRepositories
    +protected  Model.PluginRepositoriesModel.pluginRepositories + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.PluginRepositories
    + Model.PluginRepositoriesObjectFactory.createModelPluginRepositories() + +
    +          Create an instance of Model.PluginRepositories
    + Model.PluginRepositoriesModel.getPluginRepositories() + +
    +          Gets the value of the pluginRepositories property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.PluginRepositories
    + voidModel.setPluginRepositories(Model.PluginRepositories value) + +
    +          Sets the value of the pluginRepositories property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html new file mode 100644 index 000000000..ebf090929 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles

    +
    + + + + + + + + + +
    +Packages that use Model.Profiles
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Profiles in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Profiles
    +protected  Model.ProfilesModel.profiles + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Profiles
    + Model.ProfilesObjectFactory.createModelProfiles() + +
    +          Create an instance of Model.Profiles
    + Model.ProfilesModel.getProfiles() + +
    +          Gets the value of the profiles property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Profiles
    + voidModel.setProfiles(Model.Profiles value) + +
    +          Sets the value of the profiles property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html new file mode 100644 index 000000000..ff77ba28c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties

    +
    + + + + + + + + + +
    +Packages that use Model.Properties
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Properties in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Properties
    +protected  Model.PropertiesModel.properties + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Properties
    + Model.PropertiesObjectFactory.createModelProperties() + +
    +          Create an instance of Model.Properties
    + Model.PropertiesModel.getProperties() + +
    +          Gets the value of the properties property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Properties
    + voidModel.setProperties(Model.Properties value) + +
    +          Sets the value of the properties property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html new file mode 100644 index 000000000..cf0085fa7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports

    +
    + + + + + + + + + +
    +Packages that use Model.Reports
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Reports in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Reports
    +protected  Model.ReportsModel.reports + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Reports
    + Model.ReportsObjectFactory.createModelReports() + +
    +          Create an instance of Model.Reports
    + Model.ReportsModel.getReports() + +
    +          Gets the value of the reports property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Reports
    + voidModel.setReports(Model.Reports value) + +
    +          Sets the value of the reports property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html new file mode 100644 index 000000000..5ba431b52 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories

    +
    + + + + + + + + + +
    +Packages that use Model.Repositories
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model.Repositories in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Model.Repositories
    +protected  Model.RepositoriesModel.repositories + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model.Repositories
    + Model.RepositoriesObjectFactory.createModelRepositories() + +
    +          Create an instance of Model.Repositories
    + Model.RepositoriesModel.getRepositories() + +
    +          Gets the value of the repositories property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model.Repositories
    + voidModel.setRepositories(Model.Repositories value) + +
    +          Sets the value of the repositories property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html new file mode 100644 index 000000000..29035b5a3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Model

    +
    + + + + + + + + + +
    +Packages that use Model
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Model in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Model
    + ModelObjectFactory.createModel() + +
    +          Create an instance of Model
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Model
    + JAXBElement<Model>ObjectFactory.createProject(Model value) + +
    +          Create an instance of JAXBElement<Model>}
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Model
    + JAXBElement<Model>ObjectFactory.createProject(Model value) + +
    +          Create an instance of JAXBElement<Model>}
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html new file mode 100644 index 000000000..d0c73eff1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration

    +
    + + + + + + + + + +
    +Packages that use Notifier.Configuration
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Notifier.Configuration in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Notifier.Configuration
    +protected  Notifier.ConfigurationNotifier.configuration + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Notifier.Configuration
    + Notifier.ConfigurationObjectFactory.createNotifierConfiguration() + +
    +          Create an instance of Notifier.Configuration
    + Notifier.ConfigurationNotifier.getConfiguration() + +
    +          Gets the value of the configuration property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Notifier.Configuration
    + voidNotifier.setConfiguration(Notifier.Configuration value) + +
    +          Sets the value of the configuration property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html new file mode 100644 index 000000000..82d41d53b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Notifier

    +
    + + + + + + + + + +
    +Packages that use Notifier
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Notifier in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Notifier
    +protected  List<Notifier>CiManagement.Notifiers.notifier + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Notifier
    + NotifierObjectFactory.createNotifier() + +
    +          Create an instance of Notifier
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Notifier
    + List<Notifier>CiManagement.Notifiers.getNotifier() + +
    +          Gets the value of the notifier property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html new file mode 100644 index 000000000..f2cdd17d7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory

    +
    +No usage of org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html new file mode 100644 index 000000000..43a05d883 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Organization (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Organization

    +
    + + + + + + + + + +
    +Packages that use Organization
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Organization in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Organization
    +protected  OrganizationModel.organization + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Organization
    + OrganizationObjectFactory.createOrganization() + +
    +          Create an instance of Organization
    + OrganizationModel.getOrganization() + +
    +          Gets the value of the organization property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Organization
    + voidModel.setOrganization(Organization value) + +
    +          Sets the value of the organization property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html new file mode 100644 index 000000000..e9dc8c273 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Parent (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Parent

    +
    + + + + + + + + + +
    +Packages that use Parent
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Parent in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Parent
    +protected  ParentModel.parent + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Parent
    + ParentObjectFactory.createParent() + +
    +          Create an instance of Parent
    + ParentModel.getParent() + +
    +          Gets the value of the parent property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Parent
    + voidModel.setParent(Parent value) + +
    +          Sets the value of the parent property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html new file mode 100644 index 000000000..fad9ce0ef --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration

    +
    + + + + + + + + + +
    +Packages that use Plugin.Configuration
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Plugin.Configuration in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Plugin.Configuration
    +protected  Plugin.ConfigurationPlugin.configuration + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Plugin.Configuration
    + Plugin.ConfigurationObjectFactory.createPluginConfiguration() + +
    +          Create an instance of Plugin.Configuration
    + Plugin.ConfigurationPlugin.getConfiguration() + +
    +          Gets the value of the configuration property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Plugin.Configuration
    + voidPlugin.setConfiguration(Plugin.Configuration value) + +
    +          Sets the value of the configuration property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html new file mode 100644 index 000000000..058ac58ac --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies

    +
    + + + + + + + + + +
    +Packages that use Plugin.Dependencies
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Plugin.Dependencies in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Plugin.Dependencies
    +protected  Plugin.DependenciesPlugin.dependencies + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Plugin.Dependencies
    + Plugin.DependenciesObjectFactory.createPluginDependencies() + +
    +          Create an instance of Plugin.Dependencies
    + Plugin.DependenciesPlugin.getDependencies() + +
    +          Gets the value of the dependencies property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Plugin.Dependencies
    + voidPlugin.setDependencies(Plugin.Dependencies value) + +
    +          Sets the value of the dependencies property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html new file mode 100644 index 000000000..37e437bef --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions

    +
    + + + + + + + + + +
    +Packages that use Plugin.Executions
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Plugin.Executions in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Plugin.Executions
    +protected  Plugin.ExecutionsPlugin.executions + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Plugin.Executions
    + Plugin.ExecutionsObjectFactory.createPluginExecutions() + +
    +          Create an instance of Plugin.Executions
    + Plugin.ExecutionsPlugin.getExecutions() + +
    +          Gets the value of the executions property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Plugin.Executions
    + voidPlugin.setExecutions(Plugin.Executions value) + +
    +          Sets the value of the executions property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html new file mode 100644 index 000000000..91ecedc25 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals

    +
    + + + + + + + + + +
    +Packages that use Plugin.Goals
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Plugin.Goals in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Plugin.Goals
    +protected  Plugin.GoalsPlugin.goals + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Plugin.Goals
    + Plugin.GoalsObjectFactory.createPluginGoals() + +
    +          Create an instance of Plugin.Goals
    + Plugin.GoalsPlugin.getGoals() + +
    +          Gets the value of the goals property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Plugin.Goals
    + voidPlugin.setGoals(Plugin.Goals value) + +
    +          Sets the value of the goals property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html new file mode 100644 index 000000000..1f82d9901 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Plugin

    +
    + + + + + + + + + +
    +Packages that use Plugin
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Plugin in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Plugin
    +protected  List<Plugin>PluginManagement.Plugins.plugin + +
    +           
    +protected  List<Plugin>BuildBase.Plugins.plugin + +
    +           
    +protected  List<Plugin>Build.Plugins.plugin + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Plugin
    + PluginObjectFactory.createPlugin() + +
    +          Create an instance of Plugin
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Plugin
    + List<Plugin>PluginManagement.Plugins.getPlugin() + +
    +          Gets the value of the plugin property.
    + List<Plugin>BuildBase.Plugins.getPlugin() + +
    +          Gets the value of the plugin property.
    + List<Plugin>Build.Plugins.getPlugin() + +
    +          Gets the value of the plugin property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html new file mode 100644 index 000000000..480882df2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration

    +
    + + + + + + + + + +
    +Packages that use PluginExecution.Configuration
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of PluginExecution.Configuration in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as PluginExecution.Configuration
    +protected  PluginExecution.ConfigurationPluginExecution.configuration + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return PluginExecution.Configuration
    + PluginExecution.ConfigurationObjectFactory.createPluginExecutionConfiguration() + +
    +          Create an instance of PluginExecution.Configuration
    + PluginExecution.ConfigurationPluginExecution.getConfiguration() + +
    +          Gets the value of the configuration property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type PluginExecution.Configuration
    + voidPluginExecution.setConfiguration(PluginExecution.Configuration value) + +
    +          Sets the value of the configuration property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html new file mode 100644 index 000000000..09a5d7792 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals

    +
    + + + + + + + + + +
    +Packages that use PluginExecution.Goals
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of PluginExecution.Goals in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as PluginExecution.Goals
    +protected  PluginExecution.GoalsPluginExecution.goals + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return PluginExecution.Goals
    + PluginExecution.GoalsObjectFactory.createPluginExecutionGoals() + +
    +          Create an instance of PluginExecution.Goals
    + PluginExecution.GoalsPluginExecution.getGoals() + +
    +          Gets the value of the goals property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type PluginExecution.Goals
    + voidPluginExecution.setGoals(PluginExecution.Goals value) + +
    +          Sets the value of the goals property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html new file mode 100644 index 000000000..545daf212 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution

    +
    + + + + + + + + + +
    +Packages that use PluginExecution
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of PluginExecution in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type PluginExecution
    +protected  List<PluginExecution>Plugin.Executions.execution + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return PluginExecution
    + PluginExecutionObjectFactory.createPluginExecution() + +
    +          Create an instance of PluginExecution
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type PluginExecution
    + List<PluginExecution>Plugin.Executions.getExecution() + +
    +          Gets the value of the execution property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html new file mode 100644 index 000000000..a220fbf22 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins

    +
    + + + + + + + + + +
    +Packages that use PluginManagement.Plugins
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of PluginManagement.Plugins in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as PluginManagement.Plugins
    +protected  PluginManagement.PluginsPluginManagement.plugins + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return PluginManagement.Plugins
    + PluginManagement.PluginsObjectFactory.createPluginManagementPlugins() + +
    +          Create an instance of PluginManagement.Plugins
    + PluginManagement.PluginsPluginManagement.getPlugins() + +
    +          Gets the value of the plugins property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type PluginManagement.Plugins
    + voidPluginManagement.setPlugins(PluginManagement.Plugins value) + +
    +          Sets the value of the plugins property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html new file mode 100644 index 000000000..abfeb1a09 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement

    +
    + + + + + + + + + +
    +Packages that use PluginManagement
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of PluginManagement in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as PluginManagement
    +protected  PluginManagementBuildBase.pluginManagement + +
    +           
    +protected  PluginManagementBuild.pluginManagement + +
    +           
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return PluginManagement
    + PluginManagementObjectFactory.createPluginManagement() + +
    +          Create an instance of PluginManagement
    + PluginManagementBuildBase.getPluginManagement() + +
    +          Gets the value of the pluginManagement property.
    + PluginManagementBuild.getPluginManagement() + +
    +          Gets the value of the pluginManagement property.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type PluginManagement
    + voidBuildBase.setPluginManagement(PluginManagement value) + +
    +          Sets the value of the pluginManagement property.
    + voidBuild.setPluginManagement(PluginManagement value) + +
    +          Sets the value of the pluginManagement property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html new file mode 100644 index 000000000..e0cb147de --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites

    +
    + + + + + + + + + +
    +Packages that use Prerequisites
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Prerequisites in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Prerequisites
    +protected  PrerequisitesModel.prerequisites + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Prerequisites
    + PrerequisitesObjectFactory.createPrerequisites() + +
    +          Create an instance of Prerequisites
    + PrerequisitesModel.getPrerequisites() + +
    +          Gets the value of the prerequisites property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Prerequisites
    + voidModel.setPrerequisites(Prerequisites value) + +
    +          Sets the value of the prerequisites property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html new file mode 100644 index 000000000..bb415559f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies

    +
    + + + + + + + + + +
    +Packages that use Profile.Dependencies
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile.Dependencies in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Profile.Dependencies
    +protected  Profile.DependenciesProfile.dependencies + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile.Dependencies
    + Profile.DependenciesObjectFactory.createProfileDependencies() + +
    +          Create an instance of Profile.Dependencies
    + Profile.DependenciesProfile.getDependencies() + +
    +          Gets the value of the dependencies property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Profile.Dependencies
    + voidProfile.setDependencies(Profile.Dependencies value) + +
    +          Sets the value of the dependencies property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html new file mode 100644 index 000000000..7a1368335 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules

    +
    + + + + + + + + + +
    +Packages that use Profile.Modules
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile.Modules in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Profile.Modules
    +protected  Profile.ModulesProfile.modules + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile.Modules
    + Profile.ModulesObjectFactory.createProfileModules() + +
    +          Create an instance of Profile.Modules
    + Profile.ModulesProfile.getModules() + +
    +          Gets the value of the modules property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Profile.Modules
    + voidProfile.setModules(Profile.Modules value) + +
    +          Sets the value of the modules property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html new file mode 100644 index 000000000..66634fb4c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories

    +
    + + + + + + + + + +
    +Packages that use Profile.PluginRepositories
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile.PluginRepositories in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Profile.PluginRepositories
    +protected  Profile.PluginRepositoriesProfile.pluginRepositories + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile.PluginRepositories
    + Profile.PluginRepositoriesObjectFactory.createProfilePluginRepositories() + +
    +          Create an instance of Profile.PluginRepositories
    + Profile.PluginRepositoriesProfile.getPluginRepositories() + +
    +          Gets the value of the pluginRepositories property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Profile.PluginRepositories
    + voidProfile.setPluginRepositories(Profile.PluginRepositories value) + +
    +          Sets the value of the pluginRepositories property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html new file mode 100644 index 000000000..89c216358 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties

    +
    + + + + + + + + + +
    +Packages that use Profile.Properties
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile.Properties in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Profile.Properties
    +protected  Profile.PropertiesProfile.properties + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile.Properties
    + Profile.PropertiesObjectFactory.createProfileProperties() + +
    +          Create an instance of Profile.Properties
    + Profile.PropertiesProfile.getProperties() + +
    +          Gets the value of the properties property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Profile.Properties
    + voidProfile.setProperties(Profile.Properties value) + +
    +          Sets the value of the properties property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html new file mode 100644 index 000000000..0c332db2d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports

    +
    + + + + + + + + + +
    +Packages that use Profile.Reports
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile.Reports in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Profile.Reports
    +protected  Profile.ReportsProfile.reports + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile.Reports
    + Profile.ReportsObjectFactory.createProfileReports() + +
    +          Create an instance of Profile.Reports
    + Profile.ReportsProfile.getReports() + +
    +          Gets the value of the reports property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Profile.Reports
    + voidProfile.setReports(Profile.Reports value) + +
    +          Sets the value of the reports property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html new file mode 100644 index 000000000..5a953dfd4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories

    +
    + + + + + + + + + +
    +Packages that use Profile.Repositories
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile.Repositories in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Profile.Repositories
    +protected  Profile.RepositoriesProfile.repositories + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile.Repositories
    + Profile.RepositoriesObjectFactory.createProfileRepositories() + +
    +          Create an instance of Profile.Repositories
    + Profile.RepositoriesProfile.getRepositories() + +
    +          Gets the value of the repositories property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Profile.Repositories
    + voidProfile.setRepositories(Profile.Repositories value) + +
    +          Sets the value of the repositories property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html new file mode 100644 index 000000000..094c25150 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Profile

    +
    + + + + + + + + + +
    +Packages that use Profile
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Profile in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Profile
    +protected  List<Profile>Model.Profiles.profile + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Profile
    + ProfileObjectFactory.createProfile() + +
    +          Create an instance of Profile
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Profile
    + List<Profile>Model.Profiles.getProfile() + +
    +          Gets the value of the profile property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html new file mode 100644 index 000000000..ec3ccbef3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Relocation (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Relocation

    +
    + + + + + + + + + +
    +Packages that use Relocation
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Relocation in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Relocation
    +protected  RelocationDistributionManagement.relocation + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Relocation
    + RelocationObjectFactory.createRelocation() + +
    +          Create an instance of Relocation
    + RelocationDistributionManagement.getRelocation() + +
    +          Gets the value of the relocation property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Relocation
    + voidDistributionManagement.setRelocation(Relocation value) + +
    +          Sets the value of the relocation property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html new file mode 100644 index 000000000..6f0af491c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration

    +
    + + + + + + + + + +
    +Packages that use ReportPlugin.Configuration
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ReportPlugin.Configuration in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ReportPlugin.Configuration
    +protected  ReportPlugin.ConfigurationReportPlugin.configuration + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ReportPlugin.Configuration
    + ReportPlugin.ConfigurationObjectFactory.createReportPluginConfiguration() + +
    +          Create an instance of ReportPlugin.Configuration
    + ReportPlugin.ConfigurationReportPlugin.getConfiguration() + +
    +          Gets the value of the configuration property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ReportPlugin.Configuration
    + voidReportPlugin.setConfiguration(ReportPlugin.Configuration value) + +
    +          Sets the value of the configuration property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html new file mode 100644 index 000000000..34b3c83b0 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets

    +
    + + + + + + + + + +
    +Packages that use ReportPlugin.ReportSets
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ReportPlugin.ReportSets in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ReportPlugin.ReportSets
    +protected  ReportPlugin.ReportSetsReportPlugin.reportSets + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ReportPlugin.ReportSets
    + ReportPlugin.ReportSetsObjectFactory.createReportPluginReportSets() + +
    +          Create an instance of ReportPlugin.ReportSets
    + ReportPlugin.ReportSetsReportPlugin.getReportSets() + +
    +          Gets the value of the reportSets property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ReportPlugin.ReportSets
    + voidReportPlugin.setReportSets(ReportPlugin.ReportSets value) + +
    +          Sets the value of the reportSets property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html new file mode 100644 index 000000000..0c663755f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin

    +
    + + + + + + + + + +
    +Packages that use ReportPlugin
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ReportPlugin in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type ReportPlugin
    +protected  List<ReportPlugin>Reporting.Plugins.plugin + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ReportPlugin
    + ReportPluginObjectFactory.createReportPlugin() + +
    +          Create an instance of ReportPlugin
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type ReportPlugin
    + List<ReportPlugin>Reporting.Plugins.getPlugin() + +
    +          Gets the value of the plugin property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html new file mode 100644 index 000000000..57e1b1177 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration

    +
    + + + + + + + + + +
    +Packages that use ReportSet.Configuration
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ReportSet.Configuration in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ReportSet.Configuration
    +protected  ReportSet.ConfigurationReportSet.configuration + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ReportSet.Configuration
    + ReportSet.ConfigurationObjectFactory.createReportSetConfiguration() + +
    +          Create an instance of ReportSet.Configuration
    + ReportSet.ConfigurationReportSet.getConfiguration() + +
    +          Gets the value of the configuration property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ReportSet.Configuration
    + voidReportSet.setConfiguration(ReportSet.Configuration value) + +
    +          Sets the value of the configuration property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html new file mode 100644 index 000000000..00daaa9b1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports

    +
    + + + + + + + + + +
    +Packages that use ReportSet.Reports
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ReportSet.Reports in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as ReportSet.Reports
    +protected  ReportSet.ReportsReportSet.reports + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ReportSet.Reports
    + ReportSet.ReportsObjectFactory.createReportSetReports() + +
    +          Create an instance of ReportSet.Reports
    + ReportSet.ReportsReportSet.getReports() + +
    +          Gets the value of the reports property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type ReportSet.Reports
    + voidReportSet.setReports(ReportSet.Reports value) + +
    +          Sets the value of the reports property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html new file mode 100644 index 000000000..b524674fb --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.ReportSet

    +
    + + + + + + + + + +
    +Packages that use ReportSet
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of ReportSet in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type ReportSet
    +protected  List<ReportSet>ReportPlugin.ReportSets.reportSet + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return ReportSet
    + ReportSetObjectFactory.createReportSet() + +
    +          Create an instance of ReportSet
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type ReportSet
    + List<ReportSet>ReportPlugin.ReportSets.getReportSet() + +
    +          Gets the value of the reportSet property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html new file mode 100644 index 000000000..b2f2373b1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins

    +
    + + + + + + + + + +
    +Packages that use Reporting.Plugins
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Reporting.Plugins in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Reporting.Plugins
    +protected  Reporting.PluginsReporting.plugins + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Reporting.Plugins
    + Reporting.PluginsObjectFactory.createReportingPlugins() + +
    +          Create an instance of Reporting.Plugins
    + Reporting.PluginsReporting.getPlugins() + +
    +          Gets the value of the plugins property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Reporting.Plugins
    + voidReporting.setPlugins(Reporting.Plugins value) + +
    +          Sets the value of the plugins property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html new file mode 100644 index 000000000..bd2d354f4 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Reporting

    +
    + + + + + + + + + +
    +Packages that use Reporting
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Reporting in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Reporting
    +protected  ReportingProfile.reporting + +
    +           
    +protected  ReportingModel.reporting + +
    +           
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Reporting
    + ReportingObjectFactory.createReporting() + +
    +          Create an instance of Reporting
    + ReportingProfile.getReporting() + +
    +          Gets the value of the reporting property.
    + ReportingModel.getReporting() + +
    +          Gets the value of the reporting property.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Reporting
    + voidProfile.setReporting(Reporting value) + +
    +          Sets the value of the reporting property.
    + voidModel.setReporting(Reporting value) + +
    +          Sets the value of the reporting property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html new file mode 100644 index 000000000..e4f42880e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html @@ -0,0 +1,261 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Repository (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Repository

    +
    + + + + + + + + + +
    +Packages that use Repository
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Repository in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Repository
    +protected  List<Repository>Profile.PluginRepositories.pluginRepository + +
    +           
    +protected  List<Repository>Model.PluginRepositories.pluginRepository + +
    +           
    +protected  List<Repository>Profile.Repositories.repository + +
    +           
    +protected  List<Repository>Model.Repositories.repository + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Repository
    + RepositoryObjectFactory.createRepository() + +
    +          Create an instance of Repository
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Repository
    + List<Repository>Profile.PluginRepositories.getPluginRepository() + +
    +          Gets the value of the pluginRepository property.
    + List<Repository>Model.PluginRepositories.getPluginRepository() + +
    +          Gets the value of the pluginRepository property.
    + List<Repository>Profile.Repositories.getRepository() + +
    +          Gets the value of the repository property.
    + List<Repository>Model.Repositories.getRepository() + +
    +          Gets the value of the repository property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html new file mode 100644 index 000000000..b8715bdc9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy

    +
    + + + + + + + + + +
    +Packages that use RepositoryPolicy
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of RepositoryPolicy in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as RepositoryPolicy
    +protected  RepositoryPolicyRepository.releases + +
    +           
    +protected  RepositoryPolicyRepository.snapshots + +
    +           
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return RepositoryPolicy
    + RepositoryPolicyObjectFactory.createRepositoryPolicy() + +
    +          Create an instance of RepositoryPolicy
    + RepositoryPolicyRepository.getReleases() + +
    +          Gets the value of the releases property.
    + RepositoryPolicyRepository.getSnapshots() + +
    +          Gets the value of the snapshots property.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type RepositoryPolicy
    + voidRepository.setReleases(RepositoryPolicy value) + +
    +          Sets the value of the releases property.
    + voidRepository.setSnapshots(RepositoryPolicy value) + +
    +          Sets the value of the snapshots property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html new file mode 100644 index 000000000..d6b0720f6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes

    +
    + + + + + + + + + +
    +Packages that use Resource.Excludes
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Resource.Excludes in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Resource.Excludes
    +protected  Resource.ExcludesResource.excludes + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Resource.Excludes
    + Resource.ExcludesObjectFactory.createResourceExcludes() + +
    +          Create an instance of Resource.Excludes
    + Resource.ExcludesResource.getExcludes() + +
    +          Gets the value of the excludes property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Resource.Excludes
    + voidResource.setExcludes(Resource.Excludes value) + +
    +          Sets the value of the excludes property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html new file mode 100644 index 000000000..6982f76c7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes

    +
    + + + + + + + + + +
    +Packages that use Resource.Includes
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Resource.Includes in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Resource.Includes
    +protected  Resource.IncludesResource.includes + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Resource.Includes
    + Resource.IncludesObjectFactory.createResourceIncludes() + +
    +          Create an instance of Resource.Includes
    + Resource.IncludesResource.getIncludes() + +
    +          Gets the value of the includes property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Resource.Includes
    + voidResource.setIncludes(Resource.Includes value) + +
    +          Sets the value of the includes property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html new file mode 100644 index 000000000..e751c1c80 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html @@ -0,0 +1,261 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Resource

    +
    + + + + + + + + + +
    +Packages that use Resource
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Resource in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated with type parameters of type Resource
    +protected  List<Resource>BuildBase.Resources.resource + +
    +           
    +protected  List<Resource>Build.Resources.resource + +
    +           
    +protected  List<Resource>BuildBase.TestResources.testResource + +
    +           
    +protected  List<Resource>Build.TestResources.testResource + +
    +           
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Resource
    + ResourceObjectFactory.createResource() + +
    +          Create an instance of Resource
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return types with arguments of type Resource
    + List<Resource>BuildBase.Resources.getResource() + +
    +          Gets the value of the resource property.
    + List<Resource>Build.Resources.getResource() + +
    +          Gets the value of the resource property.
    + List<Resource>BuildBase.TestResources.getTestResource() + +
    +          Gets the value of the testResource property.
    + List<Resource>Build.TestResources.getTestResource() + +
    +          Gets the value of the testResource property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html new file mode 100644 index 000000000..47d9f67a9 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Scm (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Scm

    +
    + + + + + + + + + +
    +Packages that use Scm
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Scm in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Scm
    +protected  ScmModel.scm + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Scm
    + ScmObjectFactory.createScm() + +
    +          Create an instance of Scm
    + ScmModel.getScm() + +
    +          Gets the value of the scm property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Scm
    + voidModel.setScm(Scm value) + +
    +          Sets the value of the scm property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html new file mode 100644 index 000000000..ac2be7748 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html @@ -0,0 +1,221 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Site (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.jaxb.pom.generated.Site

    +
    + + + + + + + + + +
    +Packages that use Site
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + +
    +Uses of Site in org.owasp.dependencycheck.jaxb.pom.generated
    +  +

    + + + + + + + + + +
    Fields in org.owasp.dependencycheck.jaxb.pom.generated declared as Site
    +protected  SiteDistributionManagement.site + +
    +           
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated that return Site
    + SiteObjectFactory.createSite() + +
    +          Create an instance of Site
    + SiteDistributionManagement.getSite() + +
    +          Gets the value of the site property.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.jaxb.pom.generated with parameters of type Site
    + voidDistributionManagement.setSite(Site value) + +
    +          Sets the value of the site property.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html new file mode 100644 index 000000000..dd7632cd7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html @@ -0,0 +1,203 @@ + + + + + + + +org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.jaxb.pom.generated + + + + +
    +Classes  + +
    +Activation +
    +ActivationFile +
    +ActivationOS +
    +ActivationProperty +
    +Build +
    +Build.Extensions +
    +Build.Filters +
    +Build.Plugins +
    +Build.Resources +
    +Build.TestResources +
    +BuildBase +
    +BuildBase.Filters +
    +BuildBase.Plugins +
    +BuildBase.Resources +
    +BuildBase.TestResources +
    +CiManagement +
    +CiManagement.Notifiers +
    +Contributor +
    +Contributor.Properties +
    +Contributor.Roles +
    +Dependency +
    +Dependency.Exclusions +
    +DependencyManagement +
    +DependencyManagement.Dependencies +
    +DeploymentRepository +
    +Developer +
    +Developer.Properties +
    +Developer.Roles +
    +DistributionManagement +
    +Exclusion +
    +Extension +
    +IssueManagement +
    +License +
    +MailingList +
    +MailingList.OtherArchives +
    +Model +
    +Model.Contributors +
    +Model.Dependencies +
    +Model.Developers +
    +Model.Licenses +
    +Model.MailingLists +
    +Model.Modules +
    +Model.PluginRepositories +
    +Model.Profiles +
    +Model.Properties +
    +Model.Reports +
    +Model.Repositories +
    +Notifier +
    +Notifier.Configuration +
    +ObjectFactory +
    +Organization +
    +Parent +
    +Plugin +
    +Plugin.Configuration +
    +Plugin.Dependencies +
    +Plugin.Executions +
    +Plugin.Goals +
    +PluginExecution +
    +PluginExecution.Configuration +
    +PluginExecution.Goals +
    +PluginManagement +
    +PluginManagement.Plugins +
    +Prerequisites +
    +Profile +
    +Profile.Dependencies +
    +Profile.Modules +
    +Profile.PluginRepositories +
    +Profile.Properties +
    +Profile.Reports +
    +Profile.Repositories +
    +Relocation +
    +Reporting +
    +Reporting.Plugins +
    +ReportPlugin +
    +ReportPlugin.Configuration +
    +ReportPlugin.ReportSets +
    +ReportSet +
    +ReportSet.Configuration +
    +ReportSet.Reports +
    +Repository +
    +RepositoryPolicy +
    +Resource +
    +Resource.Excludes +
    +Resource.Includes +
    +Scm +
    +Site
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html new file mode 100644 index 000000000..7a6cb9f5d --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html @@ -0,0 +1,505 @@ + + + + + + + +org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.jaxb.pom.generated +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    ActivationThe conditions within the build runtime environment which will trigger + the automatic inclusion of the build profile.
    ActivationFileThis is the file specification used to activate the profile.
    ActivationOSThis is an activator which will detect an operating system's attributes in order to activate + its profile.
    ActivationPropertyThis is the property specification used to activate a profile.
    Build3.0.0+
    Build.ExtensionsJava class for anonymous complex type.
    Build.FiltersJava class for anonymous complex type.
    Build.PluginsJava class for anonymous complex type.
    Build.ResourcesJava class for anonymous complex type.
    Build.TestResourcesJava class for anonymous complex type.
    BuildBase3.0.0+
    BuildBase.FiltersJava class for anonymous complex type.
    BuildBase.PluginsJava class for anonymous complex type.
    BuildBase.ResourcesJava class for anonymous complex type.
    BuildBase.TestResourcesJava class for anonymous complex type.
    CiManagement4.0.0
    CiManagement.NotifiersJava class for anonymous complex type.
    ContributorDescription of a person who has contributed to the project, but who does + not have commit privileges.
    Contributor.PropertiesJava class for anonymous complex type.
    Contributor.RolesJava class for anonymous complex type.
    Dependency3.0.0+
    Dependency.ExclusionsJava class for anonymous complex type.
    DependencyManagementSection for management of default dependency information for use in a group of POMs.
    DependencyManagement.DependenciesJava class for anonymous complex type.
    DeploymentRepositoryRepository contains the information needed for deploying to the remote repository.
    DeveloperInformation about one of the committers on this project.
    Developer.PropertiesJava class for anonymous complex type.
    Developer.RolesJava class for anonymous complex type.
    DistributionManagementThis elements describes all that pertains to distribution for a project.
    Exclusion4.0.0
    ExtensionDescribes a build extension to utilise.
    IssueManagementInformation about the issue tracking (or bug tracking) system used to manage this project.
    LicenseDescribes the licenses for this project.
    MailingListThis element describes all of the mailing lists associated with + a project.
    MailingList.OtherArchivesJava class for anonymous complex type.
    ModelThe <project> element is the root of the descriptor.
    Model.ContributorsJava class for anonymous complex type.
    Model.DependenciesJava class for anonymous complex type.
    Model.DevelopersJava class for anonymous complex type.
    Model.LicensesJava class for anonymous complex type.
    Model.MailingListsJava class for anonymous complex type.
    Model.ModulesJava class for anonymous complex type.
    Model.PluginRepositoriesJava class for anonymous complex type.
    Model.ProfilesJava class for anonymous complex type.
    Model.PropertiesJava class for anonymous complex type.
    Model.ReportsJava class for anonymous complex type.
    Model.RepositoriesJava class for anonymous complex type.
    NotifierConfigures one method for notifying users/developers when a build breaks.
    Notifier.ConfigurationJava class for anonymous complex type.
    ObjectFactoryThis object contains factory methods for each + Java content interface and Java element interface + generated in the org.owasp.dependencycheck.analyzer.pom.generated package.
    OrganizationSpecifies the organization that produces this project.
    Parent4.0.0
    Plugin4.0.0
    Plugin.ConfigurationJava class for anonymous complex type.
    Plugin.DependenciesJava class for anonymous complex type.
    Plugin.ExecutionsJava class for anonymous complex type.
    Plugin.GoalsJava class for anonymous complex type.
    PluginExecution4.0.0
    PluginExecution.ConfigurationJava class for anonymous complex type.
    PluginExecution.GoalsJava class for anonymous complex type.
    PluginManagementSection for management of default plugin information for use in a group of POMs.
    PluginManagement.PluginsJava class for anonymous complex type.
    PrerequisitesDescribes the prerequisites a project can have.
    ProfileModifications to the build process which is activated based on environmental parameters or command line arguments.
    Profile.DependenciesJava class for anonymous complex type.
    Profile.ModulesJava class for anonymous complex type.
    Profile.PluginRepositoriesJava class for anonymous complex type.
    Profile.PropertiesJava class for anonymous complex type.
    Profile.ReportsJava class for anonymous complex type.
    Profile.RepositoriesJava class for anonymous complex type.
    RelocationDescribes where an artifact has moved to.
    ReportingSection for management of reports and their configuration.
    Reporting.PluginsJava class for anonymous complex type.
    ReportPlugin4.0.0
    ReportPlugin.ConfigurationJava class for anonymous complex type.
    ReportPlugin.ReportSetsJava class for anonymous complex type.
    ReportSetRepresents a set of reports and configuration to be used to generate them.
    ReportSet.ConfigurationJava class for anonymous complex type.
    ReportSet.ReportsJava class for anonymous complex type.
    RepositoryA repository contains the information needed for establishing connections with remote repository.
    RepositoryPolicyDownload policy
    ResourceThis element describes all of the classpath resources associated with a project or + unit tests.
    Resource.ExcludesJava class for anonymous complex type.
    Resource.IncludesJava class for anonymous complex type.
    Scm4.0.0
    SiteContains the information needed for deploying websites.
    +  + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html new file mode 100644 index 000000000..1b8e11e47 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck.jaxb.pom.generated Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.jaxb.pom.generated +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html new file mode 100644 index 000000000..3ca175660 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html @@ -0,0 +1,680 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.jaxb.pom.generated

    +
    + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.jaxb.pom.generated
    org.owasp.dependencycheck.jaxb.pom.generated  
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.jaxb.pom.generated used by org.owasp.dependencycheck.jaxb.pom.generated
    Activation + +
    +          The conditions within the build runtime environment which will trigger + the automatic inclusion of the build profile.
    ActivationFile + +
    +          This is the file specification used to activate the profile.
    ActivationOS + +
    +          This is an activator which will detect an operating system's attributes in order to activate + its profile.
    ActivationProperty + +
    +          This is the property specification used to activate a profile.
    Build + +
    +          3.0.0+
    Build.Extensions + +
    +          Java class for anonymous complex type.
    Build.Filters + +
    +          Java class for anonymous complex type.
    Build.Plugins + +
    +          Java class for anonymous complex type.
    Build.Resources + +
    +          Java class for anonymous complex type.
    Build.TestResources + +
    +          Java class for anonymous complex type.
    BuildBase + +
    +          3.0.0+
    BuildBase.Filters + +
    +          Java class for anonymous complex type.
    BuildBase.Plugins + +
    +          Java class for anonymous complex type.
    BuildBase.Resources + +
    +          Java class for anonymous complex type.
    BuildBase.TestResources + +
    +          Java class for anonymous complex type.
    CiManagement + +
    +          4.0.0
    CiManagement.Notifiers + +
    +          Java class for anonymous complex type.
    Contributor + +
    +          Description of a person who has contributed to the project, but who does + not have commit privileges.
    Contributor.Properties + +
    +          Java class for anonymous complex type.
    Contributor.Roles + +
    +          Java class for anonymous complex type.
    Dependency + +
    +          3.0.0+
    Dependency.Exclusions + +
    +          Java class for anonymous complex type.
    DependencyManagement + +
    +          Section for management of default dependency information for use in a group of POMs.
    DependencyManagement.Dependencies + +
    +          Java class for anonymous complex type.
    DeploymentRepository + +
    +          Repository contains the information needed for deploying to the remote repository.
    Developer + +
    +          Information about one of the committers on this project.
    Developer.Properties + +
    +          Java class for anonymous complex type.
    Developer.Roles + +
    +          Java class for anonymous complex type.
    DistributionManagement + +
    +          This elements describes all that pertains to distribution for a project.
    Exclusion + +
    +          4.0.0
    Extension + +
    +          Describes a build extension to utilise.
    IssueManagement + +
    +          Information about the issue tracking (or bug tracking) system used to manage this project.
    License + +
    +          Describes the licenses for this project.
    MailingList + +
    +          This element describes all of the mailing lists associated with + a project.
    MailingList.OtherArchives + +
    +          Java class for anonymous complex type.
    Model + +
    +          The <project> element is the root of the descriptor.
    Model.Contributors + +
    +          Java class for anonymous complex type.
    Model.Dependencies + +
    +          Java class for anonymous complex type.
    Model.Developers + +
    +          Java class for anonymous complex type.
    Model.Licenses + +
    +          Java class for anonymous complex type.
    Model.MailingLists + +
    +          Java class for anonymous complex type.
    Model.Modules + +
    +          Java class for anonymous complex type.
    Model.PluginRepositories + +
    +          Java class for anonymous complex type.
    Model.Profiles + +
    +          Java class for anonymous complex type.
    Model.Properties + +
    +          Java class for anonymous complex type.
    Model.Reports + +
    +          Java class for anonymous complex type.
    Model.Repositories + +
    +          Java class for anonymous complex type.
    Notifier + +
    +          Configures one method for notifying users/developers when a build breaks.
    Notifier.Configuration + +
    +          Java class for anonymous complex type.
    Organization + +
    +          Specifies the organization that produces this project.
    Parent + +
    +          4.0.0
    Plugin + +
    +          4.0.0
    Plugin.Configuration + +
    +          Java class for anonymous complex type.
    Plugin.Dependencies + +
    +          Java class for anonymous complex type.
    Plugin.Executions + +
    +          Java class for anonymous complex type.
    Plugin.Goals + +
    +          Java class for anonymous complex type.
    PluginExecution + +
    +          4.0.0
    PluginExecution.Configuration + +
    +          Java class for anonymous complex type.
    PluginExecution.Goals + +
    +          Java class for anonymous complex type.
    PluginManagement + +
    +          Section for management of default plugin information for use in a group of POMs.
    PluginManagement.Plugins + +
    +          Java class for anonymous complex type.
    Prerequisites + +
    +          Describes the prerequisites a project can have.
    Profile + +
    +          Modifications to the build process which is activated based on environmental parameters or command line arguments.
    Profile.Dependencies + +
    +          Java class for anonymous complex type.
    Profile.Modules + +
    +          Java class for anonymous complex type.
    Profile.PluginRepositories + +
    +          Java class for anonymous complex type.
    Profile.Properties + +
    +          Java class for anonymous complex type.
    Profile.Reports + +
    +          Java class for anonymous complex type.
    Profile.Repositories + +
    +          Java class for anonymous complex type.
    Relocation + +
    +          Describes where an artifact has moved to.
    Reporting + +
    +          Section for management of reports and their configuration.
    Reporting.Plugins + +
    +          Java class for anonymous complex type.
    ReportPlugin + +
    +          4.0.0
    ReportPlugin.Configuration + +
    +          Java class for anonymous complex type.
    ReportPlugin.ReportSets + +
    +          Java class for anonymous complex type.
    ReportSet + +
    +          Represents a set of reports and configuration to be used to generate them.
    ReportSet.Configuration + +
    +          Java class for anonymous complex type.
    ReportSet.Reports + +
    +          Java class for anonymous complex type.
    Repository + +
    +          A repository contains the information needed for establishing connections with remote repository.
    RepositoryPolicy + +
    +          Download policy
    Resource + +
    +          This element describes all of the classpath resources associated with a project or + unit tests.
    Resource.Excludes + +
    +          Java class for anonymous complex type.
    Resource.Includes + +
    +          Java class for anonymous complex type.
    Scm + +
    +          4.0.0
    Site + +
    +          Contains the information needed for deploying websites.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html new file mode 100644 index 000000000..736eb74f2 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html @@ -0,0 +1,33 @@ + + + + + + + +org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.jaxb.pom + + + + +
    +Classes  + +
    +MavenNamespaceFilter
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html new file mode 100644 index 000000000..c4d6f7d6e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html @@ -0,0 +1,185 @@ + + + + + + + +org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.jaxb.pom +

    + + + org.owasp.dependencycheck.analyzer.pom + + + This package contains utility classes used to parse pom.xml files. +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Class Summary
    MavenNamespaceFilterThis filter is used when parsing POM documents.
    +  + +

    +

    +Package org.owasp.dependencycheck.jaxb.pom Description +

    + +

    + + + org.owasp.dependencycheck.analyzer.pom + + + This package contains utility classes used to parse pom.xml files. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html new file mode 100644 index 000000000..cd79aca2f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html @@ -0,0 +1,157 @@ + + + + + + + +org.owasp.dependencycheck.jaxb.pom Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.jaxb.pom +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html new file mode 100644 index 000000000..05aae2859 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.jaxb.pom

    +
    +No usage of org.owasp.dependencycheck.jaxb.pom +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..6b3fef9a1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,33 @@ + + + + + + + +org.owasp.dependencycheck (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck + + + + +
    +Classes  + +
    +Engine
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..a56f7c2bf --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,185 @@ + + + + + + + +org.owasp.dependencycheck (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck +

    + + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. +

    +See: +
    +          Description +

    + + + + + + + + + +
    +Class Summary
    EngineScans files, directories, etc.
    +  + +

    +

    +Package org.owasp.dependencycheck Description +

    + +

    + + + org.owasp.dependencycheck + + + Includes the main entry point (i.e. the engine) for dependency-check. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html new file mode 100644 index 000000000..ce3f2a7fd --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html new file mode 100644 index 000000000..04ff3a37e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html @@ -0,0 +1,201 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck

    +
    + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck used by org.owasp.dependencycheck.analyzer
    Engine + +
    +          Scans files, directories, etc.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck used by org.owasp.dependencycheck.utils
    Engine + +
    +          Scans files, directories, etc.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html new file mode 100644 index 000000000..3dafbb275 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html @@ -0,0 +1,370 @@ + + + + + + + +ReportGenerator.Format (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.reporting +
    +Enum ReportGenerator.Format

    +
    +java.lang.Object
    +  extended by java.lang.Enum<ReportGenerator.Format>
    +      extended by org.owasp.dependencycheck.reporting.ReportGenerator.Format
    +
    +
    +
    All Implemented Interfaces:
    Serializable, Comparable<ReportGenerator.Format>
    +
    +
    +
    Enclosing class:
    ReportGenerator
    +
    +
    +
    +
    public static enum ReportGenerator.Format
    extends Enum<ReportGenerator.Format>
    + + +

    +An enumeration of the report formats. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + +
    +Enum Constant Summary
    ALL + +
    +          Generate all reports.
    HTML + +
    +          Generate HTML report.
    VULN + +
    +          Generate HTML Vulnerability report.
    XML + +
    +          Generate XML report.
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +static ReportGenerator.FormatvalueOf(String name) + +
    +          Returns the enum constant of this type with the specified name.
    +static ReportGenerator.Format[]values() + +
    +          Returns an array containing the constants of this enum type, in +the order they are declared.
    + + + + + + + +
    Methods inherited from class java.lang.Enum
    clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
    + + + + + + + +
    Methods inherited from class java.lang.Object
    getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Enum Constant Detail
    + +

    +ALL

    +
    +public static final ReportGenerator.Format ALL
    +
    +
    Generate all reports. +

    +

    +
    +
    +
    + +

    +XML

    +
    +public static final ReportGenerator.Format XML
    +
    +
    Generate XML report. +

    +

    +
    +
    +
    + +

    +HTML

    +
    +public static final ReportGenerator.Format HTML
    +
    +
    Generate HTML report. +

    +

    +
    +
    +
    + +

    +VULN

    +
    +public static final ReportGenerator.Format VULN
    +
    +
    Generate HTML Vulnerability report. +

    +

    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +values

    +
    +public static ReportGenerator.Format[] values()
    +
    +
    Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
    +for (ReportGenerator.Format c : ReportGenerator.Format.values())
    +    System.out.println(c);
    +
    +

    +

    + +
    Returns:
    an array containing the constants of this enum type, in +the order they are declared
    +
    +
    +
    + +

    +valueOf

    +
    +public static ReportGenerator.Format valueOf(String name)
    +
    +
    Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.) +

    +

    +
    Parameters:
    name - the name of the enum constant to be returned. +
    Returns:
    the enum constant with the specified name +
    Throws: +
    IllegalArgumentException - if this enum type has no constant +with the specified name +
    NullPointerException - if the argument is null
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html new file mode 100644 index 000000000..7cf805d74 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html @@ -0,0 +1,358 @@ + + + + + + + +ReportGenerator (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.reporting +
    +Class ReportGenerator

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.reporting.ReportGenerator
    +
    +
    +
    +
    public class ReportGenerator
    extends Object
    + + +

    +The ReportGenerator is used to, as the name implies, generate reports. + Internally the generator uses the Velocity Templating Engine. The + ReportGenerator exposes a list of Dependencies to the template when + generating the report. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classReportGenerator.Format + +
    +          An enumeration of the report formats.
    +  + + + + + + + + + + +
    +Constructor Summary
    ReportGenerator(String applicationName, + List<Dependency> dependencies, + List<Analyzer> analyzers) + +
    +          Constructs a new ReportGenerator.
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  voidgenerateReport(String templateName, + String outFileName) + +
    +          Generates a report from a given Velocity Template.
    + voidgenerateReports(String outputDir, + ReportGenerator.Format format) + +
    +          Generates the Dependency Reports for the identified dependencies.
    + voidgenerateReports(String outputDir, + String outputFormat) + +
    +          Generates the Dependency Reports for the identified dependencies.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +ReportGenerator

    +
    +public ReportGenerator(String applicationName,
    +                       List<Dependency> dependencies,
    +                       List<Analyzer> analyzers)
    +
    +
    Constructs a new ReportGenerator. +

    +

    +
    Parameters:
    applicationName - the application name being analyzed
    dependencies - the list of dependencies
    analyzers - the list of analyzers used.
    +
    + + + + + + + + +
    +Method Detail
    + +

    +generateReports

    +
    +public void generateReports(String outputDir,
    +                            ReportGenerator.Format format)
    +                     throws IOException,
    +                            Exception
    +
    +
    Generates the Dependency Reports for the identified dependencies. +

    +

    +
    Parameters:
    outputDir - the path where the reports should be written
    format - the format the report should be written in +
    Throws: +
    IOException - is thrown when the template file does not exist +
    Exception - is thrown if there is an error writing out the reports.
    +
    +
    +
    + +

    +generateReports

    +
    +public void generateReports(String outputDir,
    +                            String outputFormat)
    +                     throws IOException,
    +                            Exception
    +
    +
    Generates the Dependency Reports for the identified dependencies. +

    +

    +
    Parameters:
    outputDir - the path where the reports should be written
    outputFormat - the format the report should be written in (XML, + HTML, ALL) +
    Throws: +
    IOException - is thrown when the template file does not exist +
    Exception - is thrown if there is an error writing out the reports.
    +
    +
    +
    + +

    +generateReport

    +
    +protected void generateReport(String templateName,
    +                              String outFileName)
    +                       throws IOException,
    +                              Exception
    +
    +
    Generates a report from a given Velocity Template. The template name + provided can be the name of a template contained in the jar file, such as + 'XmlReport' or 'HtmlReport', or the template name can be the path to a + template file. +

    +

    +
    Parameters:
    templateName - the name of the template to load.
    outFileName - the filename and path to write the report to. +
    Throws: +
    IOException - is thrown when the template file does not exist. +
    Exception - is thrown when an exception occurs.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html new file mode 100644 index 000000000..37842de47 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html @@ -0,0 +1,379 @@ + + + + + + + +VelocityLoggerRedirect (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.reporting +
    +Class VelocityLoggerRedirect

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.reporting.VelocityLoggerRedirect
    +
    +
    +
    All Implemented Interfaces:
    org.apache.velocity.runtime.log.LogChute
    +
    +
    +
    +
    public class VelocityLoggerRedirect
    extends Object
    implements org.apache.velocity.runtime.log.LogChute
    + + +

    +

    DependencyCheck uses Logger as a logging + framework, and Apache Velocity uses a custom logging implementation that + outputs to a file named velocity.log by default. This class is an + implementation of a custom Velocity logger that redirects all velocity + logging to the Java Logger class. +

    + This class was written to address permission issues when using + Dependency-Check in a server environment (such as the Jenkins plugin). In + some circumstances, Velocity would attempt to create velocity.log in an + un-writable directory.

    +

    + +

    +

    +
    Author:
    +
    Steve Springett (steve.springett@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from interface org.apache.velocity.runtime.log.LogChute
    DEBUG_ID, DEBUG_PREFIX, ERROR_ID, ERROR_PREFIX, INFO_ID, INFO_PREFIX, TRACE_ID, TRACE_PREFIX, WARN_ID, WARN_PREFIX
    +  + + + + + + + + + + +
    +Constructor Summary
    VelocityLoggerRedirect() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidinit(org.apache.velocity.runtime.RuntimeServices rsvc) + +
    +          This will be invoked once by the LogManager.
    + booleanisLevelEnabled(int level) + +
    +          Will always return true.
    + voidlog(int level, + String message) + +
    +          Given a Velocity log level and message, this method will call the + appropriate Logger level and log the specified values.
    + voidlog(int level, + String message, + Throwable t) + +
    +          Given a Velocity log level, message and Throwable, this method will call + the appropriate Logger level and log the specified values.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VelocityLoggerRedirect

    +
    +public VelocityLoggerRedirect()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +init

    +
    +public void init(org.apache.velocity.runtime.RuntimeServices rsvc)
    +
    +
    This will be invoked once by the LogManager. +

    +

    +
    Specified by:
    init in interface org.apache.velocity.runtime.log.LogChute
    +
    +
    +
    Parameters:
    rsvc - the RuntimeServices
    +
    +
    +
    + +

    +log

    +
    +public void log(int level,
    +                String message)
    +
    +
    Given a Velocity log level and message, this method will call the + appropriate Logger level and log the specified values. +

    +

    +
    Specified by:
    log in interface org.apache.velocity.runtime.log.LogChute
    +
    +
    +
    Parameters:
    level - the logging level
    message - the message to be logged
    +
    +
    +
    + +

    +log

    +
    +public void log(int level,
    +                String message,
    +                Throwable t)
    +
    +
    Given a Velocity log level, message and Throwable, this method will call + the appropriate Logger level and log the specified values. +

    +

    +
    Specified by:
    log in interface org.apache.velocity.runtime.log.LogChute
    +
    +
    +
    Parameters:
    level - the logging level
    message - the message to be logged
    t - a throwable to log
    +
    +
    +
    + +

    +isLevelEnabled

    +
    +public boolean isLevelEnabled(int level)
    +
    +
    Will always return true. The property file will decide what level to log. +

    +

    +
    Specified by:
    isLevelEnabled in interface org.apache.velocity.runtime.log.LogChute
    +
    +
    +
    Parameters:
    level - the logging level +
    Returns:
    true
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html new file mode 100644 index 000000000..5a1fe877c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html @@ -0,0 +1,212 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator.Format (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.reporting.ReportGenerator.Format

    +
    + + + + + + + + + +
    +Packages that use ReportGenerator.Format
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    +  +

    + + + + + +
    +Uses of ReportGenerator.Format in org.owasp.dependencycheck.reporting
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.reporting that return ReportGenerator.Format
    +static ReportGenerator.FormatReportGenerator.Format.valueOf(String name) + +
    +          Returns the enum constant of this type with the specified name.
    +static ReportGenerator.Format[]ReportGenerator.Format.values() + +
    +          Returns an array containing the constants of this enum type, in +the order they are declared.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.reporting with parameters of type ReportGenerator.Format
    + voidReportGenerator.generateReports(String outputDir, + ReportGenerator.Format format) + +
    +          Generates the Dependency Reports for the identified dependencies.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html new file mode 100644 index 000000000..2daadaa32 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.reporting.ReportGenerator

    +
    +No usage of org.owasp.dependencycheck.reporting.ReportGenerator +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html new file mode 100644 index 000000000..6347b1568 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.reporting.VelocityLoggerRedirect

    +
    +No usage of org.owasp.dependencycheck.reporting.VelocityLoggerRedirect +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html new file mode 100644 index 000000000..f7a1d330a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html @@ -0,0 +1,46 @@ + + + + + + + +org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.reporting + + + + +
    +Classes  + +
    +ReportGenerator +
    +VelocityLoggerRedirect
    + + + + + + +
    +Enums  + +
    +ReportGenerator.Format
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html new file mode 100644 index 000000000..7386974b3 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html @@ -0,0 +1,205 @@ + + + + + + + +org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.reporting +

    + + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + +
    +Class Summary
    ReportGeneratorThe ReportGenerator is used to, as the name implies, generate reports.
    VelocityLoggerRedirectDependencyCheck uses Logger as a logging + framework, and Apache Velocity uses a custom logging implementation that + outputs to a file named velocity.log by default.
    +  + +

    + + + + + + + + + +
    +Enum Summary
    ReportGenerator.FormatAn enumeration of the report formats.
    +  + +

    +

    +Package org.owasp.dependencycheck.reporting Description +

    + +

    + + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html new file mode 100644 index 000000000..fc9955ba7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html @@ -0,0 +1,165 @@ + + + + + + + +org.owasp.dependencycheck.reporting Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.reporting +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +

    +Enum Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html new file mode 100644 index 000000000..802b97199 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html @@ -0,0 +1,176 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.reporting

    +
    + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.reporting
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.reporting used by org.owasp.dependencycheck.reporting
    ReportGenerator.Format + +
    +          An enumeration of the report formats.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html new file mode 100644 index 000000000..6c0d10348 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html @@ -0,0 +1,472 @@ + + + + + + + +PropertyType (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class PropertyType

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.PropertyType
    +
    +
    +
    +
    public class PropertyType
    extends Object
    + + +

    +A simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive. The equals method has been + over-ridden so that the object will correctly compare to strings. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    PropertyType() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + booleanequals(Object obj) + +
    +          Default implementation of equals.
    + StringgetValue() + +
    +          Gets the value of the value property.
    + inthashCode() + +
    +          Default implementation of hashCode.
    + booleanisCaseSensitive() + +
    +          Gets the value of the caseSensitive property.
    + booleanisRegex() + +
    +          Returns whether or not the value is a regex.
    + booleanmatches(String text) + +
    +          Uses the object's properties to determine if the supplied string matches + the value of this property.
    + voidsetCaseSensitive(boolean value) + +
    +          Sets the value of the caseSensitive property.
    + voidsetRegex(boolean value) + +
    +          Sets whether the value property is a regex.
    + voidsetValue(String value) + +
    +          Sets the value of the value property.
    + StringtoString() + +
    +          Default implementation of toString().
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +PropertyType

    +
    +public PropertyType()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getValue

    +
    +public String getValue()
    +
    +
    Gets the value of the value property. +

    +

    + +
    Returns:
    the value of the value property
    +
    +
    +
    + +

    +setValue

    +
    +public void setValue(String value)
    +
    +
    Sets the value of the value property. +

    +

    +
    Parameters:
    value - the value of the value property
    +
    +
    +
    + +

    +isRegex

    +
    +public boolean isRegex()
    +
    +
    Returns whether or not the value is a regex. +

    +

    + +
    Returns:
    true if the value is a regex, otherwise false
    +
    +
    +
    + +

    +setRegex

    +
    +public void setRegex(boolean value)
    +
    +
    Sets whether the value property is a regex. +

    +

    +
    Parameters:
    value - true if the value is a regex, otherwise false
    +
    +
    +
    + +

    +isCaseSensitive

    +
    +public boolean isCaseSensitive()
    +
    +
    Gets the value of the caseSensitive property. +

    +

    + +
    Returns:
    true if the value is case sensitive
    +
    +
    +
    + +

    +setCaseSensitive

    +
    +public void setCaseSensitive(boolean value)
    +
    +
    Sets the value of the caseSensitive property. +

    +

    +
    Parameters:
    value - whether the value is case sensitive
    +
    +
    +
    + +

    +matches

    +
    +public boolean matches(String text)
    +
    +
    Uses the object's properties to determine if the supplied string matches + the value of this property. +

    +

    +
    Parameters:
    text - the String to validate +
    Returns:
    whether the text supplied is matched by the value of the property
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Default implementation of hashCode. +

    +

    +
    Overrides:
    hashCode in class Object
    +
    +
    + +
    Returns:
    the hash code
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    Default implementation of equals. +

    +

    +
    Overrides:
    equals in class Object
    +
    +
    +
    Parameters:
    obj - the object to compare +
    Returns:
    whether the objects are equivalent
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Default implementation of toString(). +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    the string representation of the object
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html new file mode 100644 index 000000000..67b315b8a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html @@ -0,0 +1,326 @@ + + + + + + + +SuppressionErrorHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionErrorHandler

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.SuppressionErrorHandler
    +
    +
    +
    All Implemented Interfaces:
    ErrorHandler
    +
    +
    +
    +
    public class SuppressionErrorHandler
    extends Object
    implements ErrorHandler
    + + +

    +An XML parsing error handler. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    SuppressionErrorHandler() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voiderror(SAXParseException ex) + +
    +          Handles errors.
    + voidfatalError(SAXParseException ex) + +
    +          Handles fatal exceptions.
    + voidwarning(SAXParseException ex) + +
    +          Logs warnings.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionErrorHandler

    +
    +public SuppressionErrorHandler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +warning

    +
    +public void warning(SAXParseException ex)
    +             throws SAXException
    +
    +
    Logs warnings. +

    +

    +
    Specified by:
    warning in interface ErrorHandler
    +
    +
    +
    Parameters:
    ex - the warning to log +
    Throws: +
    SAXException - is never thrown
    +
    +
    +
    + +

    +error

    +
    +public void error(SAXParseException ex)
    +           throws SAXException
    +
    +
    Handles errors. +

    +

    +
    Specified by:
    error in interface ErrorHandler
    +
    +
    +
    Parameters:
    ex - the error to handle +
    Throws: +
    SAXException - is always thrown
    +
    +
    +
    + +

    +fatalError

    +
    +public void fatalError(SAXParseException ex)
    +                throws SAXException
    +
    +
    Handles fatal exceptions. +

    +

    +
    Specified by:
    fatalError in interface ErrorHandler
    +
    +
    +
    Parameters:
    ex - a fatal exception +
    Throws: +
    SAXException - is always
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html new file mode 100644 index 000000000..e44ecc115 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html @@ -0,0 +1,530 @@ + + + + + + + +SuppressionHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionHandler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.suppression.SuppressionHandler
    +
    +
    +
    All Implemented Interfaces:
    ContentHandler, DTDHandler, EntityResolver, ErrorHandler
    +
    +
    +
    +
    public class SuppressionHandler
    extends org.xml.sax.helpers.DefaultHandler
    + + +

    +A handler to load suppression rules. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringCPE + +
    +          The CPE element name.
    +static StringCVE + +
    +          The CVE element name.
    +static StringCVSS_BELOW + +
    +          The cvssBelow element name.
    +static StringCWE + +
    +          The CWE element name.
    +static StringFILE_PATH + +
    +          The file path element name.
    +static StringSHA1 + +
    +          The sha1 hash element name.
    +static StringSUPPRESS + +
    +          The suppress node, indicates the start of a new rule.
    +  + + + + + + + + + + +
    +Constructor Summary
    SuppressionHandler() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidcharacters(char[] ch, + int start, + int length) + +
    +          Collects the body text of the node being processed.
    + voidendElement(String uri, + String localName, + String qName) + +
    +          Handles the end element event.
    + List<SuppressionRule>getSupressionRules() + +
    +          Get the value of supressionRules.
    + voidstartElement(String uri, + String localName, + String qName, + Attributes attributes) + +
    +          Handles the start element event.
    + + + + + + + +
    Methods inherited from class org.xml.sax.helpers.DefaultHandler
    endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +SUPPRESS

    +
    +public static final String SUPPRESS
    +
    +
    The suppress node, indicates the start of a new rule. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +FILE_PATH

    +
    +public static final String FILE_PATH
    +
    +
    The file path element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SHA1

    +
    +public static final String SHA1
    +
    +
    The sha1 hash element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE

    +
    +public static final String CVE
    +
    +
    The CVE element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CPE

    +
    +public static final String CPE
    +
    +
    The CPE element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CWE

    +
    +public static final String CWE
    +
    +
    The CWE element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_BELOW

    +
    +public static final String CVSS_BELOW
    +
    +
    The cvssBelow element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionHandler

    +
    +public SuppressionHandler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupressionRules

    +
    +public List<SuppressionRule> getSupressionRules()
    +
    +
    Get the value of supressionRules. +

    +

    + +
    Returns:
    the value of supressionRules
    +
    +
    +
    + +

    +startElement

    +
    +public void startElement(String uri,
    +                         String localName,
    +                         String qName,
    +                         Attributes attributes)
    +                  throws SAXException
    +
    +
    Handles the start element event. +

    +

    +
    Specified by:
    startElement in interface ContentHandler
    Overrides:
    startElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    +
    Parameters:
    uri - the uri of the element being processed
    localName - the local name of the element being processed
    qName - the qName of the element being processed
    attributes - the attributes of the element being processed +
    Throws: +
    SAXException - thrown if there is an exception processing
    +
    +
    +
    + +

    +endElement

    +
    +public void endElement(String uri,
    +                       String localName,
    +                       String qName)
    +                throws SAXException
    +
    +
    Handles the end element event. +

    +

    +
    Specified by:
    endElement in interface ContentHandler
    Overrides:
    endElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    +
    Parameters:
    uri - the uri of the element
    localName - the local name of the element
    qName - the qName of the element +
    Throws: +
    SAXException - thrown if there is an exception processing
    +
    +
    +
    + +

    +characters

    +
    +public void characters(char[] ch,
    +                       int start,
    +                       int length)
    +                throws SAXException
    +
    +
    Collects the body text of the node being processed. +

    +

    +
    Specified by:
    characters in interface ContentHandler
    Overrides:
    characters in class org.xml.sax.helpers.DefaultHandler
    +
    +
    +
    Parameters:
    ch - the char array of text
    start - the start position to copy text from in the char array
    length - the number of characters to copy from the char array +
    Throws: +
    SAXException - thrown if there is a parsing exception
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html new file mode 100644 index 000000000..f7e6adb3a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html @@ -0,0 +1,306 @@ + + + + + + + +SuppressionParseException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionParseException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.suppression.SuppressionParseException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class SuppressionParseException
    extends IOException
    + + +

    +An exception used when parsing a suppression rule file fails. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    SuppressionParseException() + +
    +          Creates a new SuppressionParseException.
    SuppressionParseException(String msg) + +
    +          Creates a new SuppressionParseException.
    SuppressionParseException(String msg, + Throwable ex) + +
    +          Creates a new SuppressionParseException.
    SuppressionParseException(Throwable ex) + +
    +          Creates a new SuppressionParseException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException()
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException(String msg)
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException(Throwable ex)
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    Parameters:
    ex - the cause of the download failure.
    +
    +
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException(String msg,
    +                                 Throwable ex)
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the download failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html new file mode 100644 index 000000000..c2d3730bc --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html @@ -0,0 +1,350 @@ + + + + + + + +SuppressionParser (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionParser

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.SuppressionParser
    +
    +
    +
    +
    public class SuppressionParser
    extends Object
    + + +

    +A simple validating parser for XML Suppression Rules. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringJAXP_SCHEMA_LANGUAGE + +
    +          JAXP Schema Language.
    +static StringJAXP_SCHEMA_SOURCE + +
    +          JAXP Schema Source.
    +static StringW3C_XML_SCHEMA + +
    +          W3C XML Schema.
    +  + + + + + + + + + + +
    +Constructor Summary
    SuppressionParser() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<SuppressionRule>parseSuppressionRules(File file) + +
    +          Parses the given xml file and returns a list of the suppression rules + contained.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +JAXP_SCHEMA_LANGUAGE

    +
    +public static final String JAXP_SCHEMA_LANGUAGE
    +
    +
    JAXP Schema Language. Source: + http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +W3C_XML_SCHEMA

    +
    +public static final String W3C_XML_SCHEMA
    +
    +
    W3C XML Schema. Source: + http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +JAXP_SCHEMA_SOURCE

    +
    +public static final String JAXP_SCHEMA_SOURCE
    +
    +
    JAXP Schema Source. Source: + http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionParser

    +
    +public SuppressionParser()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +parseSuppressionRules

    +
    +public List<SuppressionRule> parseSuppressionRules(File file)
    +                                            throws SuppressionParseException
    +
    +
    Parses the given xml file and returns a list of the suppression rules + contained. +

    +

    +
    Parameters:
    file - an xml file containing suppression rules +
    Returns:
    a list of suppression rules +
    Throws: +
    SuppressionParseException - thrown if the xml file cannot be parsed
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html new file mode 100644 index 000000000..eaff5d3cd --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html @@ -0,0 +1,692 @@ + + + + + + + +SuppressionRule (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionRule

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.SuppressionRule
    +
    +
    +
    +
    public class SuppressionRule
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    SuppressionRule() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidaddCpe(PropertyType cpe) + +
    +          Adds the cpe to the cpe list.
    + voidaddCve(String cve) + +
    +          Adds the cve to the cve list.
    + voidaddCvssBelow(Float cvss) + +
    +          Adds the cvss to the cvssBelow list.
    + voidaddCwe(String cwe) + +
    +          Adds the cwe to the cwe list.
    + List<PropertyType>getCpe() + +
    +          Get the value of cpe.
    + List<String>getCve() + +
    +          Get the value of cve.
    + List<Float>getCvssBelow() + +
    +          Get the value of cvssBelow.
    + List<String>getCwe() + +
    +          Get the value of cwe.
    + PropertyTypegetFilePath() + +
    +          Get the value of filePath.
    + StringgetSha1() + +
    +          Get the value of sha1.
    + booleanhasCpe() + +
    +          Returns whether or not this suppression rule as CPE entries.
    + booleanhasCve() + +
    +          Returns whether this suppression rule has CVE entries.
    + booleanhasCvssBelow() + +
    +          Returns whether or not this suppression rule has cvss suppressions.
    + booleanhasCwe() + +
    +          Returns whether this suppression rule has CWE entries.
    + voidprocess(Dependency dependency) + +
    +          Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS + scores should be suppressed.
    + voidsetCpe(List<PropertyType> cpe) + +
    +          Set the value of cpe.
    + voidsetCve(List<String> cve) + +
    +          Set the value of cve.
    + voidsetCvssBelow(List<Float> cvssBelow) + +
    +          Set the value of cvssBelow.
    + voidsetCwe(List<String> cwe) + +
    +          Set the value of cwe.
    + voidsetFilePath(PropertyType filePath) + +
    +          Set the value of filePath.
    + voidsetSha1(String sha1) + +
    +          Set the value of sha1.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionRule

    +
    +public SuppressionRule()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getFilePath

    +
    +public PropertyType getFilePath()
    +
    +
    Get the value of filePath. +

    +

    + +
    Returns:
    the value of filePath
    +
    +
    +
    + +

    +setFilePath

    +
    +public void setFilePath(PropertyType filePath)
    +
    +
    Set the value of filePath. +

    +

    +
    Parameters:
    filePath - new value of filePath
    +
    +
    +
    + +

    +getSha1

    +
    +public String getSha1()
    +
    +
    Get the value of sha1. +

    +

    + +
    Returns:
    the value of sha1
    +
    +
    +
    + +

    +setSha1

    +
    +public void setSha1(String sha1)
    +
    +
    Set the value of sha1. +

    +

    +
    Parameters:
    sha1 - new value of sha1
    +
    +
    +
    + +

    +getCpe

    +
    +public List<PropertyType> getCpe()
    +
    +
    Get the value of cpe. +

    +

    + +
    Returns:
    the value of cpe
    +
    +
    +
    + +

    +setCpe

    +
    +public void setCpe(List<PropertyType> cpe)
    +
    +
    Set the value of cpe. +

    +

    +
    Parameters:
    cpe - new value of cpe
    +
    +
    +
    + +

    +addCpe

    +
    +public void addCpe(PropertyType cpe)
    +
    +
    Adds the cpe to the cpe list. +

    +

    +
    Parameters:
    cpe - the cpe to add
    +
    +
    +
    + +

    +hasCpe

    +
    +public boolean hasCpe()
    +
    +
    Returns whether or not this suppression rule as CPE entries. +

    +

    + +
    Returns:
    whether or not this suppression rule as CPE entries
    +
    +
    +
    + +

    +getCvssBelow

    +
    +public List<Float> getCvssBelow()
    +
    +
    Get the value of cvssBelow. +

    +

    + +
    Returns:
    the value of cvssBelow
    +
    +
    +
    + +

    +setCvssBelow

    +
    +public void setCvssBelow(List<Float> cvssBelow)
    +
    +
    Set the value of cvssBelow. +

    +

    +
    Parameters:
    cvssBelow - new value of cvssBelow
    +
    +
    +
    + +

    +addCvssBelow

    +
    +public void addCvssBelow(Float cvss)
    +
    +
    Adds the cvss to the cvssBelow list. +

    +

    +
    Parameters:
    cvss - the cvss to add
    +
    +
    +
    + +

    +hasCvssBelow

    +
    +public boolean hasCvssBelow()
    +
    +
    Returns whether or not this suppression rule has cvss suppressions. +

    +

    + +
    Returns:
    whether or not this suppression rule has cvss suppressions
    +
    +
    +
    + +

    +getCwe

    +
    +public List<String> getCwe()
    +
    +
    Get the value of cwe. +

    +

    + +
    Returns:
    the value of cwe
    +
    +
    +
    + +

    +setCwe

    +
    +public void setCwe(List<String> cwe)
    +
    +
    Set the value of cwe. +

    +

    +
    Parameters:
    cwe - new value of cwe
    +
    +
    +
    + +

    +addCwe

    +
    +public void addCwe(String cwe)
    +
    +
    Adds the cwe to the cwe list. +

    +

    +
    Parameters:
    cwe - the cwe to add
    +
    +
    +
    + +

    +hasCwe

    +
    +public boolean hasCwe()
    +
    +
    Returns whether this suppression rule has CWE entries. +

    +

    + +
    Returns:
    whether this suppression rule has CWE entries
    +
    +
    +
    + +

    +getCve

    +
    +public List<String> getCve()
    +
    +
    Get the value of cve. +

    +

    + +
    Returns:
    the value of cve
    +
    +
    +
    + +

    +setCve

    +
    +public void setCve(List<String> cve)
    +
    +
    Set the value of cve. +

    +

    +
    Parameters:
    cve - new value of cve
    +
    +
    +
    + +

    +addCve

    +
    +public void addCve(String cve)
    +
    +
    Adds the cve to the cve list. +

    +

    +
    Parameters:
    cve - the cve to add
    +
    +
    +
    + +

    +hasCve

    +
    +public boolean hasCve()
    +
    +
    Returns whether this suppression rule has CVE entries. +

    +

    + +
    Returns:
    whether this suppression rule has CVE entries
    +
    +
    +
    + +

    +process

    +
    +public void process(Dependency dependency)
    +
    +
    Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS + scores should be suppressed. If any should be, they are removed from the + dependency. +

    +

    +
    Parameters:
    dependency - a project dependency to analyze
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html new file mode 100644 index 000000000..6b70d1eb7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html @@ -0,0 +1,242 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.PropertyType (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.PropertyType

    +
    + + + + + + + + + +
    +Packages that use PropertyType
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of PropertyType in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that return PropertyType
    + PropertyTypeSuppressionRule.getFilePath() + +
    +          Get the value of filePath.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that return types with arguments of type PropertyType
    + List<PropertyType>SuppressionRule.getCpe() + +
    +          Get the value of cpe.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression with parameters of type PropertyType
    + voidSuppressionRule.addCpe(PropertyType cpe) + +
    +          Adds the cpe to the cpe list.
    + voidSuppressionRule.setFilePath(PropertyType filePath) + +
    +          Set the value of filePath.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.suppression with type arguments of type PropertyType
    + voidSuppressionRule.setCpe(List<PropertyType> cpe) + +
    +          Set the value of cpe.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html new file mode 100644 index 000000000..fdef98509 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionErrorHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionErrorHandler

    +
    +No usage of org.owasp.dependencycheck.suppression.SuppressionErrorHandler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html new file mode 100644 index 000000000..dfb6da29c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionHandler

    +
    +No usage of org.owasp.dependencycheck.suppression.SuppressionHandler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html new file mode 100644 index 000000000..d7725304e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html @@ -0,0 +1,187 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionParseException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionParseException

    +
    + + + + + + + + + +
    +Packages that use SuppressionParseException
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of SuppressionParseException in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that throw SuppressionParseException
    + List<SuppressionRule>SuppressionParser.parseSuppressionRules(File file) + +
    +          Parses the given xml file and returns a list of the suppression rules + contained.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html new file mode 100644 index 000000000..4cd955b54 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionParser (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionParser

    +
    +No usage of org.owasp.dependencycheck.suppression.SuppressionParser +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html new file mode 100644 index 000000000..a6571fe8f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html @@ -0,0 +1,246 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionRule (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionRule

    +
    + + + + + + + + + + + + + +
    +Packages that use SuppressionRule
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of SuppressionRule in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that return types with arguments of type SuppressionRule
    + List<SuppressionRule>AbstractSuppressionAnalyzer.getRules() + +
    +          Get the value of rules.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.analyzer with type arguments of type SuppressionRule
    + voidAbstractSuppressionAnalyzer.setRules(List<SuppressionRule> rules) + +
    +          Set the value of rules.
    +  +

    + + + + + +
    +Uses of SuppressionRule in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that return types with arguments of type SuppressionRule
    + List<SuppressionRule>SuppressionHandler.getSupressionRules() + +
    +          Get the value of supressionRules.
    + List<SuppressionRule>SuppressionParser.parseSuppressionRules(File file) + +
    +          Parses the given xml file and returns a list of the suppression rules + contained.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html new file mode 100644 index 000000000..8bdd09c5e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html @@ -0,0 +1,52 @@ + + + + + + + +org.owasp.dependencycheck.suppression (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.suppression + + + + +
    +Classes  + +
    +PropertyType +
    +SuppressionErrorHandler +
    +SuppressionHandler +
    +SuppressionParser +
    +SuppressionRule
    + + + + + + +
    +Exceptions  + +
    +SuppressionParseException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html new file mode 100644 index 000000000..acfb14f96 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html @@ -0,0 +1,216 @@ + + + + + + + +org.owasp.dependencycheck.suppression (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.suppression +

    + + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    PropertyTypeA simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive.
    SuppressionErrorHandlerAn XML parsing error handler.
    SuppressionHandlerA handler to load suppression rules.
    SuppressionParserA simple validating parser for XML Suppression Rules.
    SuppressionRule 
    +  + +

    + + + + + + + + + +
    +Exception Summary
    SuppressionParseExceptionAn exception used when parsing a suppression rule file fails.
    +  + +

    +

    +Package org.owasp.dependencycheck.suppression Description +

    + +

    + + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html new file mode 100644 index 000000000..752968b14 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html @@ -0,0 +1,165 @@ + + + + + + + +org.owasp.dependencycheck.suppression Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.suppression +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html new file mode 100644 index 000000000..c2a737f7e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html @@ -0,0 +1,214 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.suppression (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.suppression

    +
    + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.suppression
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.suppression used by org.owasp.dependencycheck.analyzer
    SuppressionRule + +
    +           
    +  +

    + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.suppression used by org.owasp.dependencycheck.suppression
    PropertyType + +
    +          A simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive.
    SuppressionParseException + +
    +          An exception used when parsing a suppression rule file fails.
    SuppressionRule + +
    +           
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html new file mode 100644 index 000000000..d402c6b3c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html @@ -0,0 +1,358 @@ + + + + + + + +Checksum (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class Checksum

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.Checksum
    +
    +
    +
    +
    public class Checksum
    extends Object
    + + +

    +Includes methods to generate the MD5 and SHA1 checksum. + + This code was copied from Real's How To. It has been slightly modified. + + Written and compiled by Réal Gagnon ©1998-2012 +

    + +

    +

    +
    Author:
    +
    Real's How To: http://www.rgagnon.com/javadetails/java-0416.html
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Checksum() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static byte[]getChecksum(String algorithm, + File file) + +
    +          Creates the cryptographic checksum of a given file using the specified + algorithm.
    +static StringgetHex(byte[] raw) + +
    +          Converts a byte array into a hex string.
    +static StringgetMD5Checksum(File file) + +
    +          Calculates the MD5 checksum of a specified file.
    +static StringgetSHA1Checksum(File file) + +
    +          Calculates the SHA1 checksum of a specified file.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Checksum

    +
    +public Checksum()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getChecksum

    +
    +public static byte[] getChecksum(String algorithm,
    +                                 File file)
    +                          throws NoSuchAlgorithmException,
    +                                 IOException
    +
    +

    Creates the cryptographic checksum of a given file using the specified + algorithm.

    This algorithm was copied and heavily modified from + Real's How To: http://www.rgagnon.com/javadetails/java-0416.html

    +

    +

    +
    Parameters:
    algorithm - the algorithm to use to calculate the checksum
    file - the file to calculate the checksum for +
    Returns:
    the checksum +
    Throws: +
    IOException - when the file does not exist +
    NoSuchAlgorithmException - when an algorithm is specified that does + not exist
    +
    +
    +
    + +

    +getMD5Checksum

    +
    +public static String getMD5Checksum(File file)
    +                             throws IOException,
    +                                    NoSuchAlgorithmException
    +
    +
    Calculates the MD5 checksum of a specified file. +

    +

    +
    Parameters:
    file - the file to generate the MD5 checksum +
    Returns:
    the hex representation of the MD5 hash +
    Throws: +
    IOException - when the file passed in does not exist +
    NoSuchAlgorithmException - when the MD5 algorithm is not available
    +
    +
    +
    + +

    +getSHA1Checksum

    +
    +public static String getSHA1Checksum(File file)
    +                              throws IOException,
    +                                     NoSuchAlgorithmException
    +
    +
    Calculates the SHA1 checksum of a specified file. +

    +

    +
    Parameters:
    file - the file to generate the MD5 checksum +
    Returns:
    the hex representation of the SHA1 hash +
    Throws: +
    IOException - when the file passed in does not exist +
    NoSuchAlgorithmException - when the SHA1 algorithm is not available
    +
    +
    +
    + +

    +getHex

    +
    +public static String getHex(byte[] raw)
    +
    +

    Converts a byte array into a hex string.

    + +

    This method was copied from http://www.rgagnon.com/javadetails/java-0596.html

    +

    +

    +
    Parameters:
    raw - a byte array +
    Returns:
    the hex representation of the byte array
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html new file mode 100644 index 000000000..248feb4c0 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html @@ -0,0 +1,501 @@ + + + + + + + +DependencyVersion (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class DependencyVersion

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.DependencyVersion
    +
    +
    +
    All Implemented Interfaces:
    Comparable<DependencyVersion>, Iterable
    +
    +
    +
    +
    public class DependencyVersion
    extends Object
    implements Iterable, Comparable<DependencyVersion>
    + + +

    +

    Simple object to track the parts of a version number. The parts are + contained in a List such that version 1.2.3 will be stored as: + versionParts[0] = 1; + versionParts[1] = 2; + versionParts[2] = 3; +

    +

    Note, the parser contained in this class expects the version numbers to be + separated by periods. If a different separator is used the parser will likely + fail.

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + +
    +Constructor Summary
    DependencyVersion() + +
    +          Constructor for a empty DependencyVersion.
    DependencyVersion(String version) + +
    +          Constructor for a DependencyVersion that will parse a version string.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + intcompareTo(DependencyVersion version) + +
    +           
    + booleanequals(Object obj) + +
    +          Compares the equality of this object to the one passed in as a parameter.
    + List<String>getVersionParts() + +
    +          Get the value of versionParts.
    + inthashCode() + +
    +          Calculates the hashCode for this object.
    + Iteratoriterator() + +
    +          Retrieves an iterator for the version parts.
    + booleanmatchesAtLeastThreeLevels(DependencyVersion version) + +
    +          Determines if the three most major major version parts are identical.
    + voidparseVersion(String version) + +
    +          Parses a version string into its sub parts: major, minor, revision, + build, etc.
    + voidsetVersionParts(List<String> versionParts) + +
    +          Set the value of versionParts.
    + StringtoString() + +
    +          Reconstructs the version string from the split version parts.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DependencyVersion

    +
    +public DependencyVersion()
    +
    +
    Constructor for a empty DependencyVersion. +

    +

    +
    + +

    +DependencyVersion

    +
    +public DependencyVersion(String version)
    +
    +
    Constructor for a DependencyVersion that will parse a version string. + Note, this should only be used when the version passed in is + already known to be a well formated version number. Otherwise, + DependencyVersionUtil.parseVersion() should be used instead. +

    +

    +
    Parameters:
    version - the well formated version number to parse
    +
    + + + + + + + + +
    +Method Detail
    + +

    +parseVersion

    +
    +public final void parseVersion(String version)
    +
    +
    Parses a version string into its sub parts: major, minor, revision, + build, etc. Note, this should only be used to parse something that + is already known to be a version number. +

    +

    +
    +
    +
    +
    Parameters:
    version - the version string to parse
    +
    +
    +
    + +

    +getVersionParts

    +
    +public List<String> getVersionParts()
    +
    +
    Get the value of versionParts. +

    +

    +
    +
    +
    + +
    Returns:
    the value of versionParts
    +
    +
    +
    + +

    +setVersionParts

    +
    +public void setVersionParts(List<String> versionParts)
    +
    +
    Set the value of versionParts. +

    +

    +
    +
    +
    +
    Parameters:
    versionParts - new value of versionParts
    +
    +
    +
    + +

    +iterator

    +
    +public Iterator iterator()
    +
    +
    Retrieves an iterator for the version parts. +

    +

    +
    Specified by:
    iterator in interface Iterable
    +
    +
    + +
    Returns:
    an iterator for the version parts
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Reconstructs the version string from the split version parts. +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    a string representing the version.
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    Compares the equality of this object to the one passed in as a parameter. +

    +

    +
    Overrides:
    equals in class Object
    +
    +
    +
    Parameters:
    obj - the object to compare equality +
    Returns:
    returns true only if the two objects are equal, otherwise false
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Calculates the hashCode for this object. +

    +

    +
    Overrides:
    hashCode in class Object
    +
    +
    + +
    Returns:
    the hashCode
    +
    +
    +
    + +

    +matchesAtLeastThreeLevels

    +
    +public boolean matchesAtLeastThreeLevels(DependencyVersion version)
    +
    +
    Determines if the three most major major version parts are identical. For + instances, if version 1.2.3.4 was compared to 1.2.3 this function would + return true. +

    +

    +
    +
    +
    +
    Parameters:
    version - the version number to compare +
    Returns:
    true if the first three major parts of the version are identical
    +
    +
    +
    + +

    +compareTo

    +
    +public int compareTo(DependencyVersion version)
    +
    +
    +
    Specified by:
    compareTo in interface Comparable<DependencyVersion>
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html new file mode 100644 index 000000000..d204dadaa --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html @@ -0,0 +1,240 @@ + + + + + + + +DependencyVersionUtil (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class DependencyVersionUtil

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.DependencyVersionUtil
    +
    +
    +
    +
    public final class DependencyVersionUtil
    extends Object
    + + +

    +

    A utility class to extract version numbers from file names (or other + strings containing version numbers.

    +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + +
    +Method Summary
    +static DependencyVersionparseVersion(String text) + +
    +          A utility class to extract version numbers from file names (or other + strings containing version numbers.
    + Example:
    + Give the file name: library-name-1.4.1r2-release.jar
    + This function would return: 1.4.1.r2
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +parseVersion

    +
    +public static DependencyVersion parseVersion(String text)
    +
    +

    A utility class to extract version numbers from file names (or other + strings containing version numbers.
    + Example:
    + Give the file name: library-name-1.4.1r2-release.jar
    + This function would return: 1.4.1.r2

    +

    +

    +
    Parameters:
    text - the text being analyzed +
    Returns:
    a DependencyVersion containing the version
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html new file mode 100644 index 000000000..721787298 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html @@ -0,0 +1,306 @@ + + + + + + + +DownloadFailedException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class DownloadFailedException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.utils.DownloadFailedException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class DownloadFailedException
    extends IOException
    + + +

    +An exception used when a download fails. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    DownloadFailedException() + +
    +          Creates a new DownloadFailedException.
    DownloadFailedException(String msg) + +
    +          Creates a new DownloadFailedException.
    DownloadFailedException(String msg, + Throwable ex) + +
    +          Creates a new DownloadFailedException.
    DownloadFailedException(Throwable ex) + +
    +          Creates a new DownloadFailedException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +DownloadFailedException

    +
    +public DownloadFailedException()
    +
    +
    Creates a new DownloadFailedException. +

    +

    +
    + +

    +DownloadFailedException

    +
    +public DownloadFailedException(String msg)
    +
    +
    Creates a new DownloadFailedException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +DownloadFailedException

    +
    +public DownloadFailedException(Throwable ex)
    +
    +
    Creates a new DownloadFailedException. +

    +

    +
    Parameters:
    ex - the cause of the download failure.
    +
    +
    + +

    +DownloadFailedException

    +
    +public DownloadFailedException(String msg,
    +                               Throwable ex)
    +
    +
    Creates a new DownloadFailedException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the download failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html new file mode 100644 index 000000000..1d273ead7 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html @@ -0,0 +1,265 @@ + + + + + + + +Downloader (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class Downloader

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.Downloader
    +
    +
    +
    +
    public final class Downloader
    extends Object
    + + +

    +A utility to download files from the Internet. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Method Summary
    +static voidfetchFile(URL url, + File outputPath) + +
    +          Retrieves a file from a given URL and saves it to the outputPath.
    +static longgetLastModified(URL url) + +
    +          Makes an HTTP Head request to retrieve the last modified date of the + given URL.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +fetchFile

    +
    +public static void fetchFile(URL url,
    +                             File outputPath)
    +                      throws DownloadFailedException
    +
    +
    Retrieves a file from a given URL and saves it to the outputPath. +

    +

    +
    Parameters:
    url - the URL of the file to download.
    outputPath - the path to the save the file to. +
    Throws: +
    DownloadFailedException - is thrown if there is an error + downloading the file.
    +
    +
    +
    + +

    +getLastModified

    +
    +public static long getLastModified(URL url)
    +                            throws DownloadFailedException
    +
    +
    Makes an HTTP Head request to retrieve the last modified date of the + given URL. If the file:// protocol is specified, then the lastTimestamp + of the file is returned. +

    +

    +
    Parameters:
    url - the URL to retrieve the timestamp from +
    Returns:
    an epoch timestamp +
    Throws: +
    DownloadFailedException - is thrown if an exception occurs making + the HTTP request
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html new file mode 100644 index 000000000..9be7f74f5 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html @@ -0,0 +1,306 @@ + + + + + + + +ExtractionException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class ExtractionException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.utils.ExtractionException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class ExtractionException
    extends IOException
    + + +

    +An exception used when a file is unable to be un-zipped. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    ExtractionException() + +
    +          Creates a new ExtractionException.
    ExtractionException(String msg) + +
    +          Creates a new ExtractionException.
    ExtractionException(String msg, + Throwable ex) + +
    +          Creates a new ExtractionException.
    ExtractionException(Throwable ex) + +
    +          Creates a new ExtractionException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +ExtractionException

    +
    +public ExtractionException()
    +
    +
    Creates a new ExtractionException. +

    +

    +
    + +

    +ExtractionException

    +
    +public ExtractionException(String msg)
    +
    +
    Creates a new ExtractionException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +ExtractionException

    +
    +public ExtractionException(Throwable ex)
    +
    +
    Creates a new ExtractionException. +

    +

    +
    Parameters:
    ex - the cause of the download failure.
    +
    +
    + +

    +ExtractionException

    +
    +public ExtractionException(String msg,
    +                           Throwable ex)
    +
    +
    Creates a new ExtractionException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the download failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html new file mode 100644 index 000000000..90c751266 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html @@ -0,0 +1,384 @@ + + + + + + + +FileUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class FileUtils

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.FileUtils
    +
    +
    +
    +
    public final class FileUtils
    extends Object
    + + +

    +A collection of utilities for processing information about files. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static voiddelete(File file) + +
    +          Deletes a file.
    +static voidextractFiles(File archive, + File extractTo) + +
    +          Extracts the contents of an archive into the specified directory.
    +static voidextractFiles(File archive, + File extractTo, + Engine engine) + +
    +          Extracts the contents of an archive into the specified directory.
    +static FilegetDataDirectory(String configuredFilePath, + Class clazz) + +
    +          Deprecated. This method should no longer be used. See the implementation + in dependency-check-cli/App.java to see how the data directory should be + set.
    +static StringgetFileExtension(String fileName) + +
    +          Returns the (lowercase) file extension for a specified file.
    +static FilegetPathToJar(Class clazz) + +
    +          Deprecated. this should no longer be used.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getFileExtension

    +
    +public static String getFileExtension(String fileName)
    +
    +
    Returns the (lowercase) file extension for a specified file. +

    +

    +
    Parameters:
    fileName - the file name to retrieve the file extension from. +
    Returns:
    the file extension.
    +
    +
    +
    + +

    +delete

    +
    +public static void delete(File file)
    +                   throws IOException
    +
    +
    Deletes a file. If the File is a directory it will recursively delete the + contents. +

    +

    +
    Parameters:
    file - the File to delete +
    Throws: +
    IOException - is thrown if the file could not be deleted
    +
    +
    +
    + +

    +getDataDirectory

    +
    +@Deprecated
    +public static File getDataDirectory(String configuredFilePath,
    +                                               Class clazz)
    +                             throws IOException
    +
    +
    Deprecated. This method should no longer be used. See the implementation + in dependency-check-cli/App.java to see how the data directory should be + set. +

    +

    Returns the data directory. If a path was specified in + dependencycheck.properties or was specified using the Settings object, + and the path exists, that path will be returned as a File object. If it + does not exist, then a File object will be created based on the file + location of the JAR containing the specified class. +

    +

    +
    Parameters:
    configuredFilePath - the configured relative or absolute path
    clazz - the class whos path will be resolved +
    Returns:
    a File object +
    Throws: +
    IOException - is thrown if the path could not be decoded
    +
    +
    +
    + +

    +getPathToJar

    +
    +@Deprecated
    +public static File getPathToJar(Class clazz)
    +                         throws UnsupportedEncodingException
    +
    +
    Deprecated. this should no longer be used. +

    +

    Retrieves the physical path to the parent directory containing the + provided class. For example, if a JAR file contained a class + org.something.clazz this method would return the parent directory of the + JAR file. +

    +

    +
    Parameters:
    clazz - the class to determine the parent directory of +
    Returns:
    the parent directory of the file containing the specified class. +
    Throws: +
    UnsupportedEncodingException - thrown if UTF-8 is not supported.
    +
    +
    +
    + +

    +extractFiles

    +
    +public static void extractFiles(File archive,
    +                                File extractTo)
    +                         throws ExtractionException
    +
    +
    Extracts the contents of an archive into the specified directory. +

    +

    +
    Parameters:
    archive - an archive file such as a WAR or EAR
    extractTo - a directory to extract the contents to +
    Throws: +
    ExtractionException - thrown if an exception occurs while + extracting the files
    +
    +
    +
    + +

    +extractFiles

    +
    +public static void extractFiles(File archive,
    +                                File extractTo,
    +                                Engine engine)
    +                         throws ExtractionException
    +
    +
    Extracts the contents of an archive into the specified directory. The + files are only extracted if they are supported by the analyzers loaded + into the specified engine. If the engine is specified as null then all + files are extracted. +

    +

    +
    Parameters:
    archive - an archive file such as a WAR or EAR
    extractTo - a directory to extract the contents to
    engine - the scanning engine +
    Throws: +
    ExtractionException - thrown if there is an error extracting the + files
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html new file mode 100644 index 000000000..e01f264b8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html @@ -0,0 +1,291 @@ + + + + + + + +Filter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class Filter<T>

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.Filter<T>
    +
    +
    +
    +
    public abstract class Filter<T>
    extends Object
    + + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    Filter() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + Iterable<T>filter(Iterable<T> iterable) + +
    +           
    + Iterator<T>filter(Iterator<T> iterator) + +
    +           
    +abstract  booleanpasses(T object) + +
    +           
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Filter

    +
    +public Filter()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +passes

    +
    +public abstract boolean passes(T object)
    +
    +
    +
    +
    +
    +
    + +

    +filter

    +
    +public Iterator<T> filter(Iterator<T> iterator)
    +
    +
    +
    +
    +
    +
    + +

    +filter

    +
    +public Iterable<T> filter(Iterable<T> iterable)
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html new file mode 100644 index 000000000..0bc39b63c --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html @@ -0,0 +1,306 @@ + + + + + + + +InvalidSettingException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class InvalidSettingException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.utils.InvalidSettingException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class InvalidSettingException
    extends IOException
    + + +

    +An exception used when an error occurs reading a setting. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    InvalidSettingException() + +
    +          Creates a new InvalidSettingException.
    InvalidSettingException(String msg) + +
    +          Creates a new InvalidSettingException.
    InvalidSettingException(String msg, + Throwable ex) + +
    +          Creates a new InvalidSettingException.
    InvalidSettingException(Throwable ex) + +
    +          Creates a new InvalidSettingException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +InvalidSettingException

    +
    +public InvalidSettingException()
    +
    +
    Creates a new InvalidSettingException. +

    +

    +
    + +

    +InvalidSettingException

    +
    +public InvalidSettingException(String msg)
    +
    +
    Creates a new InvalidSettingException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +InvalidSettingException

    +
    +public InvalidSettingException(Throwable ex)
    +
    +
    Creates a new InvalidSettingException. +

    +

    +
    Parameters:
    ex - the cause of the setting exception.
    +
    +
    + +

    +InvalidSettingException

    +
    +public InvalidSettingException(String msg,
    +                               Throwable ex)
    +
    +
    Creates a new InvalidSettingException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the setting exception.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html new file mode 100644 index 000000000..5d3a02c73 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html @@ -0,0 +1,272 @@ + + + + + + + +LogFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class LogFilter

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.LogFilter
    +
    +
    +
    All Implemented Interfaces:
    Filter
    +
    +
    +
    +
    public class LogFilter
    extends Object
    implements Filter
    + + +

    +A simple log filter to limit the entries written to the verbose log file. The + verbose log file uses the root logger as I couldn't get anything else to + work; as such, this filter limits the log entries to specific classes. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    LogFilter() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + booleanisLoggable(LogRecord record) + +
    +          Determines if the record should be logged.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +LogFilter

    +
    +public LogFilter()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +isLoggable

    +
    +public boolean isLoggable(LogRecord record)
    +
    +
    Determines if the record should be logged. +

    +

    +
    Specified by:
    isLoggable in interface Filter
    +
    +
    +
    Parameters:
    record - a log record to examine +
    Returns:
    true if the record should be logged, otherwise false
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html new file mode 100644 index 000000000..31540785f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html @@ -0,0 +1,254 @@ + + + + + + + +LogUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class LogUtils

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.LogUtils
    +
    +
    +
    +
    public final class LogUtils
    extends Object
    + + +

    +A utility class to aide in the setup of the logging mechanism. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +Method Summary
    +static booleanisVerboseLoggingEnabled() + +
    +          Get the value of verboseLoggingEnabled.
    +static voidprepareLogger(InputStream in, + String verboseLogFile) + +
    +          Configures the logger for use by the application.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +prepareLogger

    +
    +public static void prepareLogger(InputStream in,
    +                                 String verboseLogFile)
    +
    +
    Configures the logger for use by the application. +

    +

    +
    Parameters:
    in - the input stream to read the log settings from
    verboseLogFile - the file path for the verbose log
    +
    +
    +
    + +

    +isVerboseLoggingEnabled

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

    +

    + +
    Returns:
    the value of verboseLoggingEnabled
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html new file mode 100644 index 000000000..e6b22de8e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html @@ -0,0 +1,304 @@ + + + + + + + +NonClosingStream (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class NonClosingStream

    +
    +java.lang.Object
    +  extended by java.io.InputStream
    +      extended by java.io.FilterInputStream
    +          extended by org.owasp.dependencycheck.utils.NonClosingStream
    +
    +
    +
    All Implemented Interfaces:
    Closeable
    +
    +
    +
    +
    public class NonClosingStream
    extends FilterInputStream
    + + +

    +NonClosingStream is a stream filter which prevents another class that + processes the stream from closing it. This is necessary when dealing with + things like JAXB and zipInputStreams. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class java.io.FilterInputStream
    in
    +  + + + + + + + + + + +
    +Constructor Summary
    NonClosingStream(InputStream in) + +
    +          Constructs a new NonClosingStream.
    +  + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Prevents closing of the stream.
    + + + + + + + +
    Methods inherited from class java.io.FilterInputStream
    available, mark, markSupported, read, read, read, reset, skip
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NonClosingStream

    +
    +public NonClosingStream(InputStream in)
    +
    +
    Constructs a new NonClosingStream. +

    +

    +
    Parameters:
    in - an input stream.
    +
    + + + + + + + + +
    +Method Detail
    + +

    +close

    +
    +public void close()
    +
    +
    Prevents closing of the stream. +

    +

    +
    Specified by:
    close in interface Closeable
    Overrides:
    close in class FilterInputStream
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html new file mode 100644 index 000000000..275fadf18 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html @@ -0,0 +1,656 @@ + + + + + + + +Settings.KEYS (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class Settings.KEYS

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.Settings.KEYS
    +
    +
    +
    Enclosing class:
    Settings
    +
    +
    +
    +
    public static final class Settings.KEYS
    extends Object
    + + +

    +The collection of keys used within the properties file. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringAUTO_UPDATE + +
    +          The properties key indicating whether or not the cached data sources + should be updated.
    +static StringBATCH_UPDATE_URL + +
    +          The location of the batch update URL.
    +static StringCONNECTION_TIMEOUT + +
    +          The properties key for the connection timeout.
    +static StringCVE_DATA_DIRECTORY + +
    +          The properties key for the path where the CVE H2 database will be + stored.
    +static StringCVE_META_URL + +
    +          The properties key for the URL to retrieve the "meta" data from about + the CVE entries.
    +static StringCVE_MODIFIED_12_URL + +
    +          The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days) using the 1.2 schema.
    +static StringCVE_MODIFIED_20_URL + +
    +          The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days) using the 2.0 schema.
    +static StringCVE_MODIFIED_VALID_FOR_DAYS + +
    +          The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days).
    +static StringCVE_SCHEMA_1_2 + +
    +          The properties key for the CVE schema version 1.2.
    +static StringCVE_SCHEMA_2_0 + +
    +          The properties key for the CVE schema version 2.0.
    +static StringCVE_START_YEAR + +
    +          The properties key for the telling us how many cvr.url.* URLs exists.
    +static StringDATA_DIRECTORY + +
    +          The base path to use for the data directory.
    +static StringDB_CONNECTION_STRING + +
    +          The database connection string.
    +static StringDB_DRIVER + +
    +          The database driver class name.
    +static StringMAX_DOWNLOAD_THREAD_POOL_SIZE + +
    +          The maximum number of threads to allocate when downloading files.
    +static StringPROXY_PASSWORD + +
    +          The properties key for the proxy password.
    +static StringPROXY_PORT + +
    +          The properties key for the proxy port - this must be an integer + value.
    +static StringPROXY_URL + +
    +          The properties key for the proxy url.
    +static StringPROXY_USERNAME + +
    +          The properties key for the proxy username.
    +static StringSUPPRESSION_FILE + +
    +          The key for a list of suppression files.
    +static StringTEMP_DIRECTORY + +
    +          The location of the temporary directory.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +AUTO_UPDATE

    +
    +public static final String AUTO_UPDATE
    +
    +
    The properties key indicating whether or not the cached data sources + should be updated. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DB_DRIVER

    +
    +public static final String DB_DRIVER
    +
    +
    The database driver class name. If this is not in the properties file + the embedded database is used. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DB_CONNECTION_STRING

    +
    +public static final String DB_CONNECTION_STRING
    +
    +
    The database connection string. If this is not in the properties file + the embedded database is used. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DATA_DIRECTORY

    +
    +public static final String DATA_DIRECTORY
    +
    +
    The base path to use for the data directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +BATCH_UPDATE_URL

    +
    +public static final String BATCH_UPDATE_URL
    +
    +
    The location of the batch update URL. This is a zip file that + contains the contents of the data directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_DATA_DIRECTORY

    +
    +public static final String CVE_DATA_DIRECTORY
    +
    +
    The properties key for the path where the CVE H2 database will be + stored. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_META_URL

    +
    +public static final String CVE_META_URL
    +
    +
    The properties key for the URL to retrieve the "meta" data from about + the CVE entries. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_MODIFIED_20_URL

    +
    +public static final String CVE_MODIFIED_20_URL
    +
    +
    The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days) using the 2.0 schema. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_MODIFIED_12_URL

    +
    +public static final String CVE_MODIFIED_12_URL
    +
    +
    The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days) using the 1.2 schema. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_MODIFIED_VALID_FOR_DAYS

    +
    +public static final String CVE_MODIFIED_VALID_FOR_DAYS
    +
    +
    The properties key for the URL to retrieve the recently modified and + added CVE entries (last 8 days). +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_START_YEAR

    +
    +public static final String CVE_START_YEAR
    +
    +
    The properties key for the telling us how many cvr.url.* URLs exists. + This is used in combination with CVE_BASE_URL to be able to retrieve + the URLs for all of the files that make up the NVD CVE listing. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_SCHEMA_1_2

    +
    +public static final String CVE_SCHEMA_1_2
    +
    +
    The properties key for the CVE schema version 1.2. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE_SCHEMA_2_0

    +
    +public static final String CVE_SCHEMA_2_0
    +
    +
    The properties key for the CVE schema version 2.0. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_URL

    +
    +public static final String PROXY_URL
    +
    +
    The properties key for the proxy url. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_PORT

    +
    +public static final String PROXY_PORT
    +
    +
    The properties key for the proxy port - this must be an integer + value. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +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

    +
    +public static final String CONNECTION_TIMEOUT
    +
    +
    The properties key for the connection timeout. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +TEMP_DIRECTORY

    +
    +public static final String TEMP_DIRECTORY
    +
    +
    The location of the temporary directory. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +MAX_DOWNLOAD_THREAD_POOL_SIZE

    +
    +public static final String MAX_DOWNLOAD_THREAD_POOL_SIZE
    +
    +
    The maximum number of threads to allocate when downloading files. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SUPPRESSION_FILE

    +
    +public static final String SUPPRESSION_FILE
    +
    +
    The key for a list of suppression files. +

    +

    +
    See Also:
    Constant Field Values
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html new file mode 100644 index 000000000..c8276ec56 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html @@ -0,0 +1,629 @@ + + + + + + + +Settings (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class Settings

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.Settings
    +
    +
    +
    +
    public final class Settings
    extends Object
    + + +

    +A simple settings container that wraps the dependencycheck.properties file. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Nested Class Summary
    +static classSettings.KEYS + +
    +          The collection of keys used within the properties file.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static booleangetBoolean(String key) + +
    +          Returns a boolean value from the properties file.
    +static FilegetDataFile(String key) + +
    +          Returns a value from the properties file as a File object.
    +static FilegetFile(String key) + +
    +          Returns a value from the properties file as a File object.
    +static intgetInt(String key) + +
    +          Returns an int value from the properties file.
    +static intgetInt(String key, + int defaultValue) + +
    +          Returns an int value from the properties file.
    +static longgetLong(String key) + +
    +          Returns a long value from the properties file.
    +static StringgetString(String key) + +
    +          Returns a value from the properties file.
    +static StringgetString(String key, + String defaultValue) + +
    +          Returns a value from the properties file.
    +static FilegetTempDirectory() + +
    +          Returns the temporary directory.
    +static voidmergeProperties(File filePath) + +
    +          Merges a new properties file into the current properties.
    +static voidmergeProperties(InputStream stream) + +
    +          Merges a new properties file into the current properties.
    +static voidmergeProperties(String filePath) + +
    +          Merges a new properties file into the current properties.
    +static voidremoveProperty(String key) + +
    +          Removes a property from the local properties collection.
    +static voidsetBoolean(String key, + boolean value) + +
    +          Sets a property value.
    +static voidsetString(String key, + String value) + +
    +          Sets a property value.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +setString

    +
    +public static void setString(String key,
    +                             String value)
    +
    +
    Sets a property value. +

    +

    +
    Parameters:
    key - the key for the property
    value - the value for the property
    +
    +
    +
    + +

    +setBoolean

    +
    +public static void setBoolean(String key,
    +                              boolean value)
    +
    +
    Sets a property value. +

    +

    +
    Parameters:
    key - the key for the property
    value - the value for the property
    +
    +
    +
    + +

    +mergeProperties

    +
    +public static void mergeProperties(File filePath)
    +                            throws FileNotFoundException,
    +                                   IOException
    +
    +
    Merges a new properties file into the current properties. This method + allows for the loading of a user provided properties file.

    + Note: even if using this method - system properties will be loaded before + properties loaded from files. +

    +

    +
    Parameters:
    filePath - the path to the properties file to merge. +
    Throws: +
    FileNotFoundException - is thrown when the filePath points to a + non-existent file +
    IOException - is thrown when there is an exception loading/merging + the properties
    +
    +
    +
    + +

    +mergeProperties

    +
    +public static void mergeProperties(String filePath)
    +                            throws FileNotFoundException,
    +                                   IOException
    +
    +
    Merges a new properties file into the current properties. This method + allows for the loading of a user provided properties file.

    + Note: even if using this method - system properties will be loaded before + properties loaded from files. +

    +

    +
    Parameters:
    filePath - the path to the properties file to merge. +
    Throws: +
    FileNotFoundException - is thrown when the filePath points to a + non-existent file +
    IOException - is thrown when there is an exception loading/merging + the properties
    +
    +
    +
    + +

    +mergeProperties

    +
    +public static void mergeProperties(InputStream stream)
    +                            throws IOException
    +
    +
    Merges a new properties file into the current properties. This method + allows for the loading of a user provided properties file.

    + Note: even if using this method - system properties will be loaded before + properties loaded from files. +

    +

    +
    Parameters:
    stream - an Input Stream pointing at a properties file to merge +
    Throws: +
    IOException - is thrown when there is an exception loading/merging + the properties
    +
    +
    +
    + +

    +getFile

    +
    +public static File getFile(String key)
    +
    +
    Returns a value from the properties file as a File object. If the value + was specified as a system property or passed in via the -Dprop=value + argument - this method will return the value from the system properties + before the values in the contained configuration file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file +
    Returns:
    the property from the properties file converted to a File object
    +
    +
    +
    + +

    +getDataFile

    +
    +public static File getDataFile(String key)
    +
    +
    Returns a value from the properties file as a File object. If the value + was specified as a system property or passed in via the -Dprop=value + argument - this method will return the value from the system properties + before the values in the contained configuration file. + + This method will check the configured base directory and will use this as + the base of the file path. Additionally, if the base directory begins + with a leading "[JAR]\" sequence with the path to the folder containing + the JAR file containing this class. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file +
    Returns:
    the property from the properties file converted to a File object
    +
    +
    +
    + +

    +getString

    +
    +public static String getString(String key,
    +                               String defaultValue)
    +
    +
    Returns a value from the properties file. If the value was specified as a + system property or passed in via the -Dprop=value argument - this method + will return the value from the system properties before the values in the + contained configuration file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file
    defaultValue - the default value for the requested property +
    Returns:
    the property from the properties file
    +
    +
    +
    + +

    +getTempDirectory

    +
    +public static File getTempDirectory()
    +
    +
    Returns the temporary directory. +

    +

    + +
    Returns:
    the temporary directory
    +
    +
    +
    + +

    +getString

    +
    +public static String getString(String key)
    +
    +
    Returns a value from the properties file. If the value was specified as a + system property or passed in via the -Dprop=value argument - this method + will return the value from the system properties before the values in the + contained configuration file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file +
    Returns:
    the property from the properties file
    +
    +
    +
    + +

    +removeProperty

    +
    +public static void removeProperty(String key)
    +
    +
    Removes a property from the local properties collection. This is mainly + used in test cases. +

    +

    +
    Parameters:
    key - the property key to remove
    +
    +
    +
    + +

    +getInt

    +
    +public static int getInt(String key)
    +                  throws InvalidSettingException
    +
    +
    Returns an int value from the properties file. If the value was specified + as a system property or passed in via the -Dprop=value argument - this + method will return the value from the system properties before the values + in the contained configuration file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file +
    Returns:
    the property from the properties file +
    Throws: +
    InvalidSettingException - is thrown if there is an error retrieving + the setting
    +
    +
    +
    + +

    +getInt

    +
    +public static int getInt(String key,
    +                         int defaultValue)
    +
    +
    Returns an int value from the properties file. If the value was specified + as a system property or passed in via the -Dprop=value argument - this + method will return the value from the system properties before the values + in the contained configuration file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file
    defaultValue - the default value to return +
    Returns:
    the property from the properties file or the defaultValue if the + property does not exist or cannot be converted to an integer
    +
    +
    +
    + +

    +getLong

    +
    +public static long getLong(String key)
    +                    throws InvalidSettingException
    +
    +
    Returns a long value from the properties file. If the value was specified + as a system property or passed in via the -Dprop=value argument - this + method will return the value from the system properties before the values + in the contained configuration file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file +
    Returns:
    the property from the properties file +
    Throws: +
    InvalidSettingException - is thrown if there is an error retrieving + the setting
    +
    +
    +
    + +

    +getBoolean

    +
    +public static boolean getBoolean(String key)
    +                          throws InvalidSettingException
    +
    +
    Returns a boolean value from the properties file. If the value was + specified as a system property or passed in via the + -Dprop=value argument this method will return the value from + the system properties before the values in the contained configuration + file. +

    +

    +
    Parameters:
    key - the key to lookup within the properties file +
    Returns:
    the property from the properties file +
    Throws: +
    InvalidSettingException - is thrown if there is an error retrieving + the setting
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html new file mode 100644 index 000000000..5aa279c26 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html @@ -0,0 +1,281 @@ + + + + + + + +UrlStringUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.utils +
    +Class UrlStringUtils

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.utils.UrlStringUtils
    +
    +
    +
    +
    public final class UrlStringUtils
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static booleancontainsUrl(String text) + +
    +          Tests if the text provided contains a URL.
    +static List<String>extractImportantUrlData(String text) + +
    +          Takes a URL, in String format, and adds the important parts of the URL + to a list of strings.
    +static booleanisUrl(String text) + +
    +          Tests if the given text is url.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +containsUrl

    +
    +public static boolean containsUrl(String text)
    +
    +
    Tests if the text provided contains a URL. This is somewhat limited + search in that it only looks for (ftp|http|https):// +

    +

    +
    Parameters:
    text - the text to search +
    Returns:
    true if the text contains a url, otherwise false
    +
    +
    +
    + +

    +isUrl

    +
    +public static boolean isUrl(String text)
    +
    +
    Tests if the given text is url. +

    +

    +
    Parameters:
    text - the string to test +
    Returns:
    returns true if the text is a url, otherwise false
    +
    +
    +
    + +

    +extractImportantUrlData

    +
    +public static List<String> extractImportantUrlData(String text)
    +                                            throws MalformedURLException
    +
    +

    Takes a URL, in String format, and adds the important parts of the URL + to a list of strings.

    +

    Example, given the following input:

    + "https://www.somedomain.com/path1/path2/file.php?id=439" +

    The function would return:

    + {"somedomain", "path1", "path2", "file"} +

    +

    +
    Parameters:
    text - a URL +
    Returns:
    importantParts a list of the important parts of the URL +
    Throws: +
    MalformedURLException - thrown if the URL is malformed
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html new file mode 100644 index 000000000..f44e6c8cb --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.Checksum (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.Checksum

    +
    +No usage of org.owasp.dependencycheck.utils.Checksum +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html new file mode 100644 index 000000000..193154f00 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html @@ -0,0 +1,249 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.DependencyVersion (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.DependencyVersion

    +
    + + + + + + + + + + + + + +
    +Packages that use DependencyVersion
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + +
    +Uses of DependencyVersion in org.owasp.dependencycheck.dependency
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.dependency with parameters of type DependencyVersion
    + booleanEvidenceCollection.containsUsedVersion(DependencyVersion version) + +
    +          Used to determine if a given version was used (aka read) from the + EvidenceCollection.
    +  +

    + + + + + +
    +Uses of DependencyVersion in org.owasp.dependencycheck.utils
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.utils that return DependencyVersion
    +static DependencyVersionDependencyVersionUtil.parseVersion(String text) + +
    +          A utility class to extract version numbers from file names (or other + strings containing version numbers.
    + Example:
    + Give the file name: library-name-1.4.1r2-release.jar
    + This function would return: 1.4.1.r2
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.utils with parameters of type DependencyVersion
    + intDependencyVersion.compareTo(DependencyVersion version) + +
    +           
    + booleanDependencyVersion.matchesAtLeastThreeLevels(DependencyVersion version) + +
    +          Determines if the three most major major version parts are identical.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html new file mode 100644 index 000000000..b67810d22 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.DependencyVersionUtil (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.DependencyVersionUtil

    +
    +No usage of org.owasp.dependencycheck.utils.DependencyVersionUtil +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html new file mode 100644 index 000000000..0eca85158 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html @@ -0,0 +1,300 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.DownloadFailedException

    +
    + + + + + + + + + + + + + +
    +Packages that use DownloadFailedException
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + +
    +Uses of DownloadFailedException in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that throw DownloadFailedException
    + voidUpdateable.add(String id, + String url, + String oldUrl) + +
    +          Adds a new entry of updateable information to the contained collection.
    + voidUpdateable.add(String id, + String url, + String oldUrl, + boolean needsUpdate) + +
    +          Adds a new entry of updateable information to the contained collection.
    +static UpdateTaskUpdateTaskFactory.getUpdateTask() + +
    +          Constructs the appropriate update task based on configuration.
    +protected  UpdateableStandardUpdateTask.updatesNeeded() + +
    +          Determines if the index needs to be updated.
    + UpdateableBatchUpdateTask.updatesNeeded() + +
    +          Deprecated. Determines if the index needs to be updated.
    +protected abstract  UpdateableAbstractUpdateTask.updatesNeeded() + +
    +          Determines if the index needs to be updated.
    +  +

    + + + + + + + + + + + + + + +
    Constructors in org.owasp.dependencycheck.data.update that throw DownloadFailedException
    AbstractUpdateTask(DataStoreMetaInfo properties) + +
    +          Initializes the AbstractUpdateTask.
    BatchUpdateTask(DataStoreMetaInfo properties) + +
    +          Deprecated. Constructs a new BatchUpdateTask.
    StandardUpdateTask(DataStoreMetaInfo properties) + +
    +          Constructs a new Standard Update Task.
    +  +

    + + + + + +
    +Uses of DownloadFailedException in org.owasp.dependencycheck.utils
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.utils that throw DownloadFailedException
    +static voidDownloader.fetchFile(URL url, + File outputPath) + +
    +          Retrieves a file from a given URL and saves it to the outputPath.
    +static longDownloader.getLastModified(URL url) + +
    +          Makes an HTTP Head request to retrieve the last modified date of the + given URL.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html new file mode 100644 index 000000000..06c031f7f --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.Downloader (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.Downloader

    +
    +No usage of org.owasp.dependencycheck.utils.Downloader +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html new file mode 100644 index 000000000..d4adc4e2e --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html @@ -0,0 +1,197 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.ExtractionException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.ExtractionException

    +
    + + + + + + + + + +
    +Packages that use ExtractionException
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + +
    +Uses of ExtractionException in org.owasp.dependencycheck.utils
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.utils that throw ExtractionException
    +static voidFileUtils.extractFiles(File archive, + File extractTo) + +
    +          Extracts the contents of an archive into the specified directory.
    +static voidFileUtils.extractFiles(File archive, + File extractTo, + Engine engine) + +
    +          Extracts the contents of an archive into the specified directory.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html new file mode 100644 index 000000000..b696c3219 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.FileUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.FileUtils

    +
    +No usage of org.owasp.dependencycheck.utils.FileUtils +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html new file mode 100644 index 000000000..277236b39 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.Filter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.Filter

    +
    +No usage of org.owasp.dependencycheck.utils.Filter +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html new file mode 100644 index 000000000..28fdc4ec1 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html @@ -0,0 +1,202 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.InvalidSettingException

    +
    + + + + + + + + + +
    +Packages that use InvalidSettingException
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + +
    +Uses of InvalidSettingException in org.owasp.dependencycheck.utils
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.utils that throw InvalidSettingException
    +static booleanSettings.getBoolean(String key) + +
    +          Returns a boolean value from the properties file.
    +static intSettings.getInt(String key) + +
    +          Returns an int value from the properties file.
    +static longSettings.getLong(String key) + +
    +          Returns a long value from the properties file.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html new file mode 100644 index 000000000..165a6a9bd --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.LogFilter (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.LogFilter

    +
    +No usage of org.owasp.dependencycheck.utils.LogFilter +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html new file mode 100644 index 000000000..193f15b19 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.LogUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.LogUtils

    +
    +No usage of org.owasp.dependencycheck.utils.LogUtils +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html new file mode 100644 index 000000000..af0a1d490 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.NonClosingStream (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.NonClosingStream

    +
    +No usage of org.owasp.dependencycheck.utils.NonClosingStream +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html new file mode 100644 index 000000000..da2fd619a --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.Settings.KEYS (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.Settings.KEYS

    +
    +No usage of org.owasp.dependencycheck.utils.Settings.KEYS +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html new file mode 100644 index 000000000..edca9f0e8 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.Settings (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.Settings

    +
    +No usage of org.owasp.dependencycheck.utils.Settings +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html new file mode 100644 index 000000000..65390eaf6 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.UrlStringUtils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.UrlStringUtils

    +
    +No usage of org.owasp.dependencycheck.utils.UrlStringUtils +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html new file mode 100644 index 000000000..55c126dfe --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html @@ -0,0 +1,70 @@ + + + + + + + +org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.utils + + + + +
    +Classes  + +
    +Checksum +
    +DependencyVersion +
    +DependencyVersionUtil +
    +Downloader +
    +FileUtils +
    +Filter +
    +LogFilter +
    +LogUtils +
    +NonClosingStream +
    +Settings +
    +Settings.KEYS +
    +UrlStringUtils
    + + + + + + +
    +Exceptions  + +
    +DownloadFailedException +
    +ExtractionException +
    +InvalidSettingException
    + + + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html new file mode 100644 index 000000000..ecfbc8b67 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html @@ -0,0 +1,253 @@ + + + + + + + +org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.utils +

    + + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    ChecksumIncludes methods to generate the MD5 and SHA1 checksum.
    DependencyVersionSimple object to track the parts of a version number.
    DependencyVersionUtilA utility class to extract version numbers from file names (or other + strings containing version numbers.
    DownloaderA utility to download files from the Internet.
    FileUtilsA collection of utilities for processing information about files.
    Filter<T> 
    LogFilterA simple log filter to limit the entries written to the verbose log file.
    LogUtilsA utility class to aide in the setup of the logging mechanism.
    NonClosingStreamNonClosingStream is a stream filter which prevents another class that + processes the stream from closing it.
    SettingsA simple settings container that wraps the dependencycheck.properties file.
    Settings.KEYSThe collection of keys used within the properties file.
    UrlStringUtils 
    +  + +

    + + + + + + + + + + + + + + + + + +
    +Exception Summary
    DownloadFailedExceptionAn exception used when a download fails.
    ExtractionExceptionAn exception used when a file is unable to be un-zipped.
    InvalidSettingExceptionAn exception used when an error occurs reading a setting.
    +  + +

    +

    +Package org.owasp.dependencycheck.utils Description +

    + +

    + + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html new file mode 100644 index 000000000..8bbb9983b --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html @@ -0,0 +1,168 @@ + + + + + + + +org.owasp.dependencycheck.utils Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.utils +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html new file mode 100644 index 000000000..dc3549526 --- /dev/null +++ b/css/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html @@ -0,0 +1,241 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.utils

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.utils
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.utils used by org.owasp.dependencycheck.data.update
    DownloadFailedException + +
    +          An exception used when a download fails.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.utils used by org.owasp.dependencycheck.dependency
    DependencyVersion + +
    +          Simple object to track the parts of a version number.
    +  +

    + + + + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.utils used by org.owasp.dependencycheck.utils
    DependencyVersion + +
    +          Simple object to track the parts of a version number.
    DownloadFailedException + +
    +          An exception used when a download fails.
    ExtractionException + +
    +          An exception used when a file is unable to be un-zipped.
    InvalidSettingException + +
    +          An exception used when an error occurs reading a setting.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/overview-frame.html b/css/dependency-check-core/apidocs/overview-frame.html new file mode 100644 index 000000000..51a35f24e --- /dev/null +++ b/css/dependency-check-core/apidocs/overview-frame.html @@ -0,0 +1,71 @@ + + + + + + + +Overview List (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + + + + +
    +
    + + + + + +
    All Classes +

    + +Packages +
    +org.owasp.dependencycheck +
    +org.owasp.dependencycheck.analyzer +
    +org.owasp.dependencycheck.concurrency +
    +org.owasp.dependencycheck.data +
    +org.owasp.dependencycheck.data.cpe +
    +org.owasp.dependencycheck.data.cwe +
    +org.owasp.dependencycheck.data.lucene +
    +org.owasp.dependencycheck.data.nvdcve +
    +org.owasp.dependencycheck.data.update +
    +org.owasp.dependencycheck.dependency +
    +org.owasp.dependencycheck.jaxb.pom +
    +org.owasp.dependencycheck.jaxb.pom.generated +
    +org.owasp.dependencycheck.reporting +
    +org.owasp.dependencycheck.suppression +
    +org.owasp.dependencycheck.utils +
    +

    + +

    +  + + diff --git a/css/dependency-check-core/apidocs/overview-summary.html b/css/dependency-check-core/apidocs/overview-summary.html new file mode 100644 index 000000000..7d68d4a4f --- /dev/null +++ b/css/dependency-check-core/apidocs/overview-summary.html @@ -0,0 +1,283 @@ + + + + + + + +Overview (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Dependency-Check Core 1.0.6 API +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages
    org.owasp.dependencycheck + + org.owasp.dependencycheck + + + Includes the main entry point (i.e.
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies.
    org.owasp.dependencycheck.concurrency + + org.owasp.dependencycheck.concurrency + + + Contains classes used to create shared and exclusive locks on directories.
    org.owasp.dependencycheck.data + + org.owasp.dependencycheck.data + + + Contains classes used to work with the data sources.
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index.
    org.owasp.dependencycheck.data.cwe + + org.owasp.dependencycheck.data.cwe + + + Contains classes for working with the CWE Database.
    org.owasp.dependencycheck.data.lucene + + org.owasp.dependencycheck.data.lucene + + + Contains classes used to work with the Lucene Indexes.
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data.
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +
    org.owasp.dependencycheck.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation.
    org.owasp.dependencycheck.jaxb.pom + + org.owasp.dependencycheck.analyzer.pom + + + This package contains utility classes used to parse pom.xml files.
    org.owasp.dependencycheck.jaxb.pom.generated 
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports.
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings.
    org.owasp.dependencycheck.utils + + org.owasp.dependencycheck.utils + + + Includes various utility classes such as a Settings wrapper, a Checksum utility, etc.
    + +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/overview-tree.html b/css/dependency-check-core/apidocs/overview-tree.html new file mode 100644 index 000000000..984ad073a --- /dev/null +++ b/css/dependency-check-core/apidocs/overview-tree.html @@ -0,0 +1,245 @@ + + + + + + + +Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    org.owasp.dependencycheck, org.owasp.dependencycheck.analyzer, org.owasp.dependencycheck.concurrency, org.owasp.dependencycheck.data, org.owasp.dependencycheck.data.cpe, org.owasp.dependencycheck.data.cwe, org.owasp.dependencycheck.data.lucene, org.owasp.dependencycheck.data.nvdcve, org.owasp.dependencycheck.data.update, org.owasp.dependencycheck.dependency, org.owasp.dependencycheck.jaxb.pom, org.owasp.dependencycheck.jaxb.pom.generated, org.owasp.dependencycheck.reporting, org.owasp.dependencycheck.suppression, org.owasp.dependencycheck.utils
    +
    +

    +Class Hierarchy +

    + +

    +Interface Hierarchy +

    + +

    +Enum Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/package-list b/css/dependency-check-core/apidocs/package-list new file mode 100644 index 000000000..410059f16 --- /dev/null +++ b/css/dependency-check-core/apidocs/package-list @@ -0,0 +1,15 @@ +org.owasp.dependencycheck +org.owasp.dependencycheck.analyzer +org.owasp.dependencycheck.concurrency +org.owasp.dependencycheck.data +org.owasp.dependencycheck.data.cpe +org.owasp.dependencycheck.data.cwe +org.owasp.dependencycheck.data.lucene +org.owasp.dependencycheck.data.nvdcve +org.owasp.dependencycheck.data.update +org.owasp.dependencycheck.dependency +org.owasp.dependencycheck.jaxb.pom +org.owasp.dependencycheck.jaxb.pom.generated +org.owasp.dependencycheck.reporting +org.owasp.dependencycheck.suppression +org.owasp.dependencycheck.utils diff --git a/css/dependency-check-core/apidocs/resources/inherit.gif b/css/dependency-check-core/apidocs/resources/inherit.gif new file mode 100644 index 0000000000000000000000000000000000000000..c814867a13deb0ca7ea2156c6ca1d5a03372af7e GIT binary patch literal 57 zcmZ?wbhEHbIIT!9-C*e{wE9>Kx3D)-;0v)C; KYxQGgum%9JOA&7X literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/apidocs/serialized-form.html b/css/dependency-check-core/apidocs/serialized-form.html new file mode 100644 index 000000000..d70a8cd37 --- /dev/null +++ b/css/dependency-check-core/apidocs/serialized-form.html @@ -0,0 +1,753 @@ + + + + + + + +Serialized Form (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Serialized Form

    +
    +
    + + + + + +
    +Package org.owasp.dependencycheck.analyzer
    + +

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

    +serialVersionUID: 1L + +

    + +

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

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.concurrency
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.concurrency.DirectoryLockException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L + +

    + +

    + + + + + +
    +Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.data
    + +

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

    +serialVersionUID: 1L + +

    + +

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

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.data.cpe
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.data.cpe.IndexEntry extends Object implements Serializable
    + +

    +serialVersionUID: 8011924485946326934L + +

    + + + + + +
    +Serialized Fields
    + +

    +vendor

    +
    +String vendor
    +
    +
    The vendor name. +

    +

    +
    +
    +
    +

    +documentId

    +
    +String documentId
    +
    +
    The documentId. +

    +

    +
    +
    +
    +

    +product

    +
    +String product
    +
    +
    The product name. +

    +

    +
    +
    +
    +

    +searchScore

    +
    +float searchScore
    +
    +
    The search score. +

    +

    +
    +
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.data.cpe.IndexException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.data.nvdcve
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.data.nvdcve.DatabaseException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L + +

    + +

    + + + + + +
    +Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.dependency
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.dependency.Reference extends Object implements Serializable
    + +

    +serialVersionUID: -3444464824563008021L + +

    + + + + + +
    +Serialized Fields
    + +

    +name

    +
    +String name
    +
    +
    The name of the reference. +

    +

    +
    +
    +
    +

    +url

    +
    +String url
    +
    +
    the url for the reference. +

    +

    +
    +
    +
    +

    +source

    +
    +String source
    +
    +
    the source of the reference. +

    +

    +
    +
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.dependency.Vulnerability extends Object implements Serializable
    + +

    +serialVersionUID: 307319490326651052L + +

    + + + + + +
    +Serialized Fields
    + +

    +name

    +
    +String name
    +
    +
    The name of the vulnerability. +

    +

    +
    +
    +
    +

    +description

    +
    +String description
    +
    +
    the description of the vulnerability. +

    +

    +
    +
    +
    +

    +references

    +
    +SortedSet<E> references
    +
    +
    References for this vulnerability. +

    +

    +
    +
    +
    +

    +vulnerableSoftware

    +
    +SortedSet<E> vulnerableSoftware
    +
    +
    A set of vulnerable software. +

    +

    +
    +
    +
    +

    +cwe

    +
    +String cwe
    +
    +
    The CWE for the vulnerability. +

    +

    +
    +
    +
    +

    +cvssScore

    +
    +float cvssScore
    +
    +
    CVSS Score. +

    +

    +
    +
    +
    +

    +cvssAccessVector

    +
    +String cvssAccessVector
    +
    +
    CVSS Access Vector. +

    +

    +
    +
    +
    +

    +cvssAccessComplexity

    +
    +String cvssAccessComplexity
    +
    +
    CVSS Access Complexity. +

    +

    +
    +
    +
    +

    +cvssAuthentication

    +
    +String cvssAuthentication
    +
    +
    CVSS Authentication. +

    +

    +
    +
    +
    +

    +cvssConfidentialityImpact

    +
    +String cvssConfidentialityImpact
    +
    +
    CVSS Confidentiality Impact. +

    +

    +
    +
    +
    +

    +cvssIntegrityImpact

    +
    +String cvssIntegrityImpact
    +
    +
    CVSS Integrity Impact. +

    +

    +
    +
    +
    +

    +cvssAvailabilityImpact

    +
    +String cvssAvailabilityImpact
    +
    +
    CVSS Availability Impact. +

    +

    +
    +
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.dependency.VulnerabilityComparator extends Object implements Serializable
    + +

    +serialVersionUID: 1L + +

    + +

    + + + + + +
    +Class org.owasp.dependencycheck.dependency.VulnerableSoftware extends IndexEntry implements Serializable
    + +

    +serialVersionUID: 307319490326651052L + +

    + + + + + +
    +Serialized Fields
    + +

    +previousVersion

    +
    +String previousVersion
    +
    +
    If present, indicates that previous version are vulnerable. +

    +

    +
    +
    +
    +

    +name

    +
    +String name
    +
    +
    The name of the cpe. +

    +

    +
    +
    +
    +

    +version

    +
    +String version
    +
    +
    The product version number. +

    +

    +
    +
    +
    +

    +revision

    +
    +String revision
    +
    +
    The product revision version. +

    +

    +
    +
    +
    +

    +edition

    +
    +String edition
    +
    +
    The product edition. +

    +

    +
    +
    +
    + + + + + +
    +Package org.owasp.dependencycheck.suppression
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.suppression.SuppressionParseException extends IOException implements Serializable
    + +

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.utils
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.utils.DownloadFailedException extends IOException implements Serializable
    + +

    +serialVersionUID: 1L + +

    + +

    + + + + + +
    +Class org.owasp.dependencycheck.utils.ExtractionException extends IOException implements Serializable
    + +

    +serialVersionUID: 1L + +

    + +

    + + + + + +
    +Class org.owasp.dependencycheck.utils.InvalidSettingException extends IOException implements Serializable
    + +

    +serialVersionUID: 1L + +

    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/css/dependency-check-core/apidocs/stylesheet.css b/css/dependency-check-core/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/css/dependency-check-core/apidocs/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF; color:#000000 } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */ +.TableRowColor { background: #FFFFFF; color:#000000 } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} + diff --git a/css/dependency-check-core/checkstyle.html b/css/dependency-check-core/checkstyle.html new file mode 100644 index 000000000..31112ddb4 --- /dev/null +++ b/css/dependency-check-core/checkstyle.html @@ -0,0 +1,279 @@ + + + + + + + + + dependency-check-core - Checkstyle Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Checkstyle Results

    +

    The following document contains the results of Checkstylerss feed

    +
    +

    Summary

    + + + + + + + + + + +
    FilesInfos InfosWarnings WarningsErrors Errors
    162001
    +
    +

    Files

    + + + + + + + + + + +
    FilesInfosWarningsErrors
    org/owasp/dependencycheck/dependency/VulnerableSoftware.java001
    +
    +

    Details

    +
    +

    org/owasp/dependencycheck/dependency/VulnerableSoftware.java

    + + + + + + + + +
    ViolationMessageLine
    ErrorsNested if-else depth is 5 (max allowed is 4).82
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/checkstyle.rss b/css/dependency-check-core/checkstyle.rss new file mode 100644 index 000000000..b807685f4 --- /dev/null +++ b/css/dependency-check-core/checkstyle.rss @@ -0,0 +1,2305 @@ + + + + + Dependency-Check Core - Checkstyle report + https://github.com/jeremylong/DependencyCheck.git/dependency-check-core + Dependency-Check Core - Checkstyle report + en-us + ©2012 - 2013 OWASP + + File: 162, + Errors: 1, + Warnings: 0, + Infos: 0 + + https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html + +

    Click here for the full Checkstyle report.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    FilesIWE
    + org/owasp/dependencycheck/data/lucene/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/HintAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/JarAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Plugin.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/DependencyVersion.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/FileUtils.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Dependency.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/Dependency.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/src/main/resources/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/LogUtils.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/CPEAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/AbstractUpdateTask.java + + 0 + + 0 + + 0 +
    + dependency-check-core/src/test/resources/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/Settings.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/ArchiveExtractionException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/CallableDownloadTask.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/CachedWebDataSource.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Parent.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/EvidenceCollection.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Model.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/test-classes/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/NonClosingStream.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/DownloadFailedException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cwe/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/InvalidDataException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.java + + 0 + + 0 + + 0 +
    + dependency-check-core/src/test/resources/test.properties + + 0 + + 0 + + 0 +
    + dependency-check-core/target/data/data.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/reporting/ReportGenerator.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Site.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Build.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Relocation.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Developer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/VulnerableSoftware.java + + 0 + + 0 + + 1 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Notifier.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/reporting/package-info.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/maven-archiver/pom.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/PropertyType.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/DependencySimilarity.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/Analyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/Fields.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Repository.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/VersionAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/VulnerabilityComparator.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/SuppressionParser.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/UrlStringUtils.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/Identifier.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.java + + 0 + + 0 + + 0 +
    + dependency-check-core/src/main/resources/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/DatabaseException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Reporting.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/Checksum.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/concurrency/DirectoryLockException.java + + 0 + + 0 + + 0 +
    + dependency-check-core/src/test/resources/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/FieldAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Contributor.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/AbstractAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Scm.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/UpdateException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/FileNameAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/UpdateTask.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/InvalidSettingException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/Downloader.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/DependencyVersionUtil.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/Evidence.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/test-classes/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/package-info.java + + 0 + + 0 + + 0 +
    + dependency-check-cli/src/main/resources/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/Reference.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/LogFilter.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/src/main/resources/taskdefs.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/Engine.java + + 0 + + 0 + + 0 +
    + dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/LuceneUtils.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cwe/CweHandler.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/IndexException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/SuppressionRule.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/concurrency/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/UpdateService.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/Filter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cwe/CweDB.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/UpdateTaskFactory.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/concurrency/DirectorySpinLock.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/IndexEntry.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/DataStoreMetaInfo.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/SuppressionHandler.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Extension.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/CveDB.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/StandardUpdateTask.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/License.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Profile.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/src/main/resources/task.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Organization.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/BatchUpdateTask.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/generated-classes/cobertura/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/SuppressionParseException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/generated-classes/cobertura/cobertura.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/NoDataException.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/src/main/resources/mojo.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/NvdCveInfo.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/test-classes/test.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/AnalyzerService.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/Vulnerability.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/Updateable.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/AnalysisException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/MailingList.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/AnalysisPhase.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/ExtractionException.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/src/main/resources/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/suppression/SuppressionErrorHandler.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/classes/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Resource.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/concurrency/InvalidDirectoryException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/BaseDB.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/update/DatabaseUpdater.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Activation.java + + 0 + + 0 + + 0 +
    + +
    +
    +
    +
    + diff --git a/css/dependency-check-core/cobertura/css/help.css b/css/dependency-check-core/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/css/dependency-check-core/cobertura/css/help.css @@ -0,0 +1,22 @@ +dl { + float: left; + width: 100%; +} + +dt { + border-top: 1px solid #808080; + float: left; + font-weight: bold; + margin: 0; + padding: 1em; + width: 20%; +} + +dd { + border-top: 1px solid #808080; + float: left; + font-style: italic; + margin: 0; + padding: 1em; + width: 60%; +} diff --git a/css/dependency-check-core/cobertura/css/main.css b/css/dependency-check-core/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/css/dependency-check-core/cobertura/css/main.css @@ -0,0 +1,131 @@ +@import url("help.css"); +@import url("source-viewer.css"); +@import url("tooltip.css"); + +.hidden { + display: none; +} + +a.dfn { + border-bottom: 1px dotted #00aa00; + cursor: help; +} + +a.dfn:active, a.dfn:link, a.dfn:visited { + color: #000000; + text-decoration: none; +} + +a.dfn:hover { + color: #0000ff; + text-decoration: none; +} + +body { + font-family: verdana, arial, helvetica; +} + +h1, h2, h3, h4, h5, h6 { + margin-bottom: 0.5em; +} + +h5 { + margin-top: 0.5em; +} + +div.footer { + font-size: 68%; + margin-top: 1.5em; +} + +div.percentgraph +{ + background-color: #f02020; + border: #808080 1px solid; + height: 1.3em; + margin: 0px; + padding: 0px; + width: 100px; +} + +div.percentgraph div.greenbar +{ + background-color: #00f000; + height: 1.3em; + margin: 0px; + padding: 0px; +} + +div.percentgraph div.na +{ + background-color: #eaeaea; + height: 1.3em; + margin: 0px; + padding: 0px; +} + +div.percentgraph span.text +{ + display: block; + position: absolute; + text-align: center; + width: 100px; +} + +div.separator { + height: 10px; +} + +table tr td, table tr th { + font-size: 68%; +} + +td.value table tr td { + font-size: 11px; +} + +table.percentgraph { + border: 0px; + font-size: 130%; + margin: 0px; + margin-left: auto; + margin-right: 0px; + padding: 0px; +} + +table.percentgraph tr.percentgraph { + border: 0px; + margin: 0px; + padding: 0px; +} + +table.percentgraph td.percentgraph { + border: 0px; + margin: 0px; + padding: 0px; + padding-left: 4px; +} + +table.report { + border-collapse: collapse; + width: 100%; +} + +table.report td { + border: #d0d0d0 1px solid; +} + +table.report td.heading { + background: #dcecff; + font-weight: bold; + text-align: center; +} + +table.report td.heading:hover { + background: #c0ffc0; + cursor: pointer; +} + +table.report td.value { + text-align: right; +} diff --git a/css/dependency-check-core/cobertura/css/sortabletable.css b/css/dependency-check-core/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/css/dependency-check-core/cobertura/css/sortabletable.css @@ -0,0 +1,50 @@ +.sort-table { + font: Icon; + border: 1px Solid ThreeDShadow; + background: Window; + color: WindowText; +} + +.sort-table thead { + background: ButtonFace; +} + +.sort-table td { + padding: 2px 5px; +} + +.sort-table thead td { + border: 1px solid; + border-color: ButtonHighlight ButtonShadow + ButtonShadow ButtonHighlight; + cursor: default; +} + +.sort-table thead td:active { + border-color: ButtonShadow ButtonHighlight + ButtonHighlight ButtonShadow; + padding: 3px 4px 1px 6px; +} + +.sort-table thead td[_sortType=None]:active { + border-color: ButtonHighlight ButtonShadow + ButtonShadow ButtonHighlight; + padding: 2px 5px; +} + +.sort-arrow { + width: 11px; + height: 11px; + background-position: center center; + background-repeat: no-repeat; + margin: 0 2px; +} + +.sort-arrow.descending { + background-image: url("../images/downsimple.png"); + +} + +.sort-arrow.ascending { + background-image: url("../images/upsimple.png"); +} \ No newline at end of file diff --git a/css/dependency-check-core/cobertura/css/source-viewer.css b/css/dependency-check-core/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/css/dependency-check-core/cobertura/css/source-viewer.css @@ -0,0 +1,73 @@ +pre.src { + background: #ffffff; + margin-top: 0px; + margin-bottom: 0px; +} + +table.src { + border: #dcdcdc 1px solid; + font-size: 16px; +} + +td.numLine { + background: #f0f0f0; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.numLineCover { + background: #80ff80; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHits { + background: #f0f0f0; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHitsCovered { + background: #80ff80; + border-right: #dcdcdc 1px solid; + padding-right: 3px; + text-align: right; +} + +td.nbHitsUncovered { + background: #ff9090; + border-right: #dcdcdc 1px solid; + font-weight: bold; + padding-right: 3px; + text-align: right; +} + +td.src { + width: 100%; +} + +span.comment { + color: #b22222; + font-style: italic; +} + +span.keyword { + color: #2020bf; + font-weight: bold; +} + +span.srcUncovered { + background: #ff9090; +} + +span.string { + color: #2a00ff; +} + +span.text_italic { + font-size: 12px; + font-style: italic; +} diff --git a/css/dependency-check-core/cobertura/css/tooltip.css b/css/dependency-check-core/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/css/dependency-check-core/cobertura/css/tooltip.css @@ -0,0 +1,49 @@ +a.hastooltip { + border-bottom: 1px dotted #00aa00; + color: #000000; + cursor: help; + font-style: normal; + position: relative; /* This is the key */ + text-decoration: none; + z-index: 24; /* What does this do? */ +} + +a.hastooltip:active { + color: #000000; + text-decoration: none; +} + +a.hastooltip:link { + color: #000000; + text-decoration: none; +} + +a.hastooltip:hover { + background-color: #a0b8ff; + color: #000000; + text-decoration: none; + z-index: 25; +} + +a.hastooltip:visited { + color: #000000; + text-decoration: none; +} + +a.hastooltip span { + display: none; +} + +a.hastooltip:hover span { + background-color: #eeeeee; + border: 1px solid #000000; + color: #000000; + display: block; + padding: 5px; + left: -15.2em; + position: absolute; + text-align: center; + text-decoration: none; + top: 2em; + width: 20em; +} diff --git a/css/dependency-check-core/cobertura/frame-packages.html b/css/dependency-check-core/cobertura/frame-packages.html new file mode 100644 index 000000000..ff5316f5f --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-packages.html @@ -0,0 +1,62 @@ + + + + +Coverage Report + + + +
    Packages
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    All
    org.owasp.dependencycheck
    org.owasp.dependencycheck.analyzer
    org.owasp.dependencycheck.concurrency
    org.owasp.dependencycheck.data
    org.owasp.dependencycheck.data.cpe
    org.owasp.dependencycheck.data.cwe
    org.owasp.dependencycheck.data.lucene
    org.owasp.dependencycheck.data.nvdcve
    org.owasp.dependencycheck.data.update
    org.owasp.dependencycheck.dependency
    org.owasp.dependencycheck.jaxb.pom
    org.owasp.dependencycheck.jaxb.pom.generated
    org.owasp.dependencycheck.reporting
    org.owasp.dependencycheck.suppression
    org.owasp.dependencycheck.utils
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html new file mode 100644 index 000000000..0cda173f2 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html @@ -0,0 +1,74 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.analyzer +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractAnalyzer (100%)
    AbstractSuppressionAnalyzer (47%)
    AnalysisException (0%)
    AnalysisPhase (100%)
    Analyzer (N/A)
    AnalyzerService (100%)
    ArchiveAnalyzer (65%)
    ArchiveExtractionException (0%)
    CPEAnalyzer (80%)
    CpeSuppressionAnalyzer (66%)
    DependencyBundlingAnalyzer (33%)
    FalsePositiveAnalyzer (69%)
    FileNameAnalyzer (100%)
    HintAnalyzer (93%)
    JarAnalyzer (80%)
    JavaScriptAnalyzer (0%)
    NvdCveAnalyzer (74%)
    VulnerabilitySuppressionAnalyzer (66%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.concurrency.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.concurrency.html new file mode 100644 index 000000000..c532d2a1a --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.concurrency.html @@ -0,0 +1,29 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.concurrency +
    +
     
    +
    Classes
    + + + + + + + + + + + + +
    DirectoryLockException (25%)
    DirectorySpinLock (65%)
    InvalidDirectoryException (0%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html new file mode 100644 index 000000000..4f8990e90 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html @@ -0,0 +1,32 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.cpe +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + +
    CpeMemoryIndex (72%)
    Fields (0%)
    IndexEntry (63%)
    IndexException (0%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html new file mode 100644 index 000000000..fe192fe7b --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.cwe +
    +
     
    +
    Classes
    + + + + + + + + + +
    CweDB (47%)
    CweHandler (0%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html new file mode 100644 index 000000000..1c7662d3b --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html @@ -0,0 +1,35 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + +
    BaseDB (45%)
    CachedWebDataSource (N/A)
    NoDataException (0%)
    UpdateException (0%)
    UpdateService (0%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html new file mode 100644 index 000000000..716800395 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html @@ -0,0 +1,53 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.lucene +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractTokenizingFilter (100%)
    AlphaNumericTokenizer (60%)
    DependencySimilarity (0%)
    FieldAnalyzer (100%)
    LuceneUtils (88%)
    SearchFieldAnalyzer (100%)
    SearchVersionAnalyzer (0%)
    TokenPairConcatenatingFilter (100%)
    UrlTokenizingFilter (80%)
    VersionAnalyzer (0%)
    VersionTokenizingFilter (0%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html new file mode 100644 index 000000000..3edcbc5fb --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html @@ -0,0 +1,38 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.nvdcve +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + +
    CorruptDatabaseException (0%)
    CveDB (47%)
    DatabaseException (0%)
    InvalidDataException (0%)
    NvdCve12Handler (93%)
    NvdCve20Handler (82%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.update.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.update.html new file mode 100644 index 000000000..099e287ce --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.update.html @@ -0,0 +1,50 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.update +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractUpdateTask (47%)
    BatchUpdateTask (28%)
    CallableDownloadTask (0%)
    DataStoreMetaInfo (65%)
    DatabaseUpdater (0%)
    NvdCveInfo (100%)
    StandardUpdateTask (0%)
    UpdateTask (N/A)
    UpdateTaskFactory (0%)
    Updateable (93%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html new file mode 100644 index 000000000..331f53e1e --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html @@ -0,0 +1,44 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.dependency +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Dependency (60%)
    Evidence (53%)
    EvidenceCollection (73%)
    Identifier (41%)
    Reference (41%)
    Vulnerability (70%)
    VulnerabilityComparator (100%)
    VulnerableSoftware (76%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html new file mode 100644 index 000000000..728242878 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck +
    +
     
    +
    Classes
    + + + + + + +
    Engine (58%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html new file mode 100644 index 000000000..24075ef11 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html @@ -0,0 +1,134 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.jaxb.pom.generated +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Activation (6%)
    ActivationFile (0%)
    ActivationOS (0%)
    ActivationProperty (14%)
    Build (9%)
    BuildBase (7%)
    CiManagement (0%)
    Contributor (5%)
    Dependency (9%)
    DependencyManagement (0%)
    DeploymentRepository (6%)
    Developer (5%)
    DistributionManagement (5%)
    Exclusion (14%)
    Extension (0%)
    IssueManagement (14%)
    License (23%)
    MailingList (0%)
    Model (13%)
    Notifier (0%)
    ObjectFactory (0%)
    Organization (0%)
    Parent (7%)
    Plugin (8%)
    PluginExecution (16%)
    PluginManagement (0%)
    Prerequisites (0%)
    Profile (4%)
    Relocation (0%)
    ReportPlugin (14%)
    ReportSet (13%)
    Reporting (20%)
    Repository (5%)
    RepositoryPolicy (10%)
    Resource (16%)
    Scm (7%)
    Site (10%)
    package-info (N/A)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html new file mode 100644 index 000000000..d02f1047e --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.jaxb.pom +
    +
     
    +
    Classes
    + + + + + + +
    MavenNamespaceFilter (100%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html new file mode 100644 index 000000000..eb6100d99 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.reporting +
    +
     
    +
    Classes
    + + + + + + + + + +
    ReportGenerator (51%)
    VelocityLoggerRedirect (57%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html new file mode 100644 index 000000000..84e86033d --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html @@ -0,0 +1,38 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.suppression +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + +
    PropertyType (70%)
    SuppressionErrorHandler (6%)
    SuppressionHandler (97%)
    SuppressionParseException (0%)
    SuppressionParser (58%)
    SuppressionRule (95%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html new file mode 100644 index 000000000..1560b2c64 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html @@ -0,0 +1,62 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.utils +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Checksum (84%)
    DependencyVersion (92%)
    DependencyVersionUtil (92%)
    DownloadFailedException (0%)
    Downloader (7%)
    ExtractionException (0%)
    FileUtils (52%)
    Filter (92%)
    InvalidSettingException (0%)
    LogFilter (0%)
    LogUtils (8%)
    NonClosingStream (100%)
    Settings (59%)
    UrlStringUtils (82%)
    + + diff --git a/css/dependency-check-core/cobertura/frame-sourcefiles.html b/css/dependency-check-core/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..d0a979fa4 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-sourcefiles.html @@ -0,0 +1,407 @@ + + + + +Coverage Report Classes + + + +
    +All Packages +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractAnalyzer (100%)
    AbstractSuppressionAnalyzer (47%)
    AbstractTokenizingFilter (100%)
    AbstractUpdateTask (47%)
    Activation (6%)
    ActivationFile (0%)
    ActivationOS (0%)
    ActivationProperty (14%)
    AlphaNumericTokenizer (60%)
    AnalysisException (0%)
    AnalysisPhase (100%)
    Analyzer (N/A)
    AnalyzerService (100%)
    ArchiveAnalyzer (65%)
    ArchiveExtractionException (0%)
    BaseDB (45%)
    BatchUpdateTask (28%)
    Build (9%)
    BuildBase (7%)
    CPEAnalyzer (80%)
    CachedWebDataSource (N/A)
    CallableDownloadTask (0%)
    Checksum (84%)
    CiManagement (0%)
    Contributor (5%)
    CorruptDatabaseException (0%)
    CpeMemoryIndex (72%)
    CpeSuppressionAnalyzer (66%)
    CveDB (47%)
    CweDB (47%)
    CweHandler (0%)
    DataStoreMetaInfo (65%)
    DatabaseException (0%)
    DatabaseUpdater (0%)
    Dependency (60%)
    Dependency (9%)
    DependencyBundlingAnalyzer (33%)
    DependencyManagement (0%)
    DependencySimilarity (0%)
    DependencyVersion (92%)
    DependencyVersionUtil (92%)
    DeploymentRepository (6%)
    Developer (5%)
    DirectoryLockException (25%)
    DirectorySpinLock (65%)
    DistributionManagement (5%)
    DownloadFailedException (0%)
    Downloader (7%)
    Engine (58%)
    Evidence (53%)
    EvidenceCollection (73%)
    Exclusion (14%)
    Extension (0%)
    ExtractionException (0%)
    FalsePositiveAnalyzer (69%)
    FieldAnalyzer (100%)
    Fields (0%)
    FileNameAnalyzer (100%)
    FileUtils (52%)
    Filter (92%)
    HintAnalyzer (93%)
    Identifier (41%)
    IndexEntry (63%)
    IndexException (0%)
    InvalidDataException (0%)
    InvalidDirectoryException (0%)
    InvalidSettingException (0%)
    IssueManagement (14%)
    JarAnalyzer (80%)
    JavaScriptAnalyzer (0%)
    License (23%)
    LogFilter (0%)
    LogUtils (8%)
    LuceneUtils (88%)
    MailingList (0%)
    MavenNamespaceFilter (100%)
    Model (13%)
    NoDataException (0%)
    NonClosingStream (100%)
    Notifier (0%)
    NvdCve12Handler (93%)
    NvdCve20Handler (82%)
    NvdCveAnalyzer (74%)
    NvdCveInfo (100%)
    ObjectFactory (0%)
    Organization (0%)
    Parent (7%)
    Plugin (8%)
    PluginExecution (16%)
    PluginManagement (0%)
    Prerequisites (0%)
    Profile (4%)
    PropertyType (70%)
    Reference (41%)
    Relocation (0%)
    ReportGenerator (51%)
    ReportPlugin (14%)
    ReportSet (13%)
    Reporting (20%)
    Repository (5%)
    RepositoryPolicy (10%)
    Resource (16%)
    Scm (7%)
    SearchFieldAnalyzer (100%)
    SearchVersionAnalyzer (0%)
    Settings (59%)
    Site (10%)
    StandardUpdateTask (0%)
    SuppressionErrorHandler (6%)
    SuppressionHandler (97%)
    SuppressionParseException (0%)
    SuppressionParser (58%)
    SuppressionRule (95%)
    TokenPairConcatenatingFilter (100%)
    UpdateException (0%)
    UpdateService (0%)
    UpdateTask (N/A)
    UpdateTaskFactory (0%)
    Updateable (93%)
    UrlStringUtils (82%)
    UrlTokenizingFilter (80%)
    VelocityLoggerRedirect (57%)
    VersionAnalyzer (0%)
    VersionTokenizingFilter (0%)
    Vulnerability (70%)
    VulnerabilityComparator (100%)
    VulnerabilitySuppressionAnalyzer (66%)
    VulnerableSoftware (76%)
    package-info (N/A)
    + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html new file mode 100644 index 000000000..05aa7b609 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html @@ -0,0 +1,79 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.analyzer21
    71%
    864/1209
    59%
    431/726
    4.007
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    AbstractAnalyzer
    100%
    6/6
    N/A
    1
    AbstractSuppressionAnalyzer
    47%
    10/21
    50%
    1/2
    1.5
    AnalysisException
    0%
    0/8
    N/A
    1
    AnalysisPhase
    100%
    10/10
    N/A
    0
    Analyzer
    N/A
    N/A
    1
    AnalyzerService
    100%
    7/7
    100%
    2/2
    1.333
    ArchiveAnalyzer
    65%
    98/150
    69%
    43/62
    6.273
    ArchiveExtractionException
    0%
    0/8
    N/A
    1
    CPEAnalyzer
    88%
    172/195
    84%
    103/122
    4.267
    CPEAnalyzer$IdentifierConfidence
    100%
    3/3
    N/A
    4.267
    CPEAnalyzer$IdentifierMatch
    38%
    15/39
    16%
    4/24
    4.267
    CpeSuppressionAnalyzer
    66%
    6/9
    16%
    1/6
    2.333
    DependencyBundlingAnalyzer
    33%
    37/112
    26%
    25/96
    6.9
    FalsePositiveAnalyzer
    69%
    80/115
    46%
    52/112
    6.455
    FileNameAnalyzer
    100%
    22/22
    83%
    5/6
    1.6
    HintAnalyzer
    93%
    31/33
    92%
    13/14
    2.4
    JarAnalyzer
    80%
    324/403
    66%
    169/256
    6.241
    JarAnalyzer$ClassNameInformation
    80%
    17/21
    90%
    9/10
    6.241
    JavaScriptAnalyzer
    0%
    0/11
    N/A
    1
    NvdCveAnalyzer
    74%
    20/27
    37%
    3/8
    1.5
    VulnerabilitySuppressionAnalyzer
    66%
    6/9
    16%
    1/6
    2.333
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html new file mode 100644 index 000000000..3ec059df7 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html @@ -0,0 +1,46 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.concurrency
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.concurrency3
    56%
    53/94
    66%
    16/24
    2.611
    + +
     
    + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    DirectoryLockException
    25%
    2/8
    N/A
    1
    DirectorySpinLock
    65%
    51/78
    66%
    16/24
    3.9
    InvalidDirectoryException
    0%
    0/8
    N/A
    1
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html new file mode 100644 index 000000000..f6ec7093c --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html @@ -0,0 +1,48 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.cpe4
    65%
    93/141
    41%
    24/58
    2.567
    + +
     
    + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CpeMemoryIndex
    72%
    70/96
    50%
    13/26
    3.071
    Fields
    0%
    0/1
    N/A
    0
    IndexEntry
    63%
    23/36
    34%
    11/32
    2.5
    IndexException
    0%
    0/8
    N/A
    1
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html new file mode 100644 index 000000000..ddec495dd --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html @@ -0,0 +1,44 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cwe
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    + +
     
    + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CweDB
    47%
    11/23
    50%
    2/4
    3.333
    CweHandler
    0%
    0/8
    0%
    0/4
    2
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html new file mode 100644 index 000000000..28f65edb4 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html @@ -0,0 +1,55 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data
    +
     
    + + + + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data5
    35%
    34/97
    45%
    10/22
    1.864
    org.owasp.dependencycheck.data.cpe4
    65%
    93/141
    41%
    24/58
    2.567
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    org.owasp.dependencycheck.data.lucene11
    67%
    97/144
    52%
    35/67
    2.5
    org.owasp.dependencycheck.data.nvdcve8
    62%
    295/474
    78%
    150/190
    3.333
    org.owasp.dependencycheck.data.update10
    30%
    150/484
    19%
    29/150
    2.945
    + +
     
    + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    BaseDB
    45%
    34/74
    50%
    10/20
    2.8
    CachedWebDataSource
    N/A
    N/A
    1
    NoDataException
    0%
    0/8
    N/A
    1
    UpdateException
    0%
    0/8
    N/A
    1
    UpdateService
    0%
    0/7
    0%
    0/2
    1.333
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html new file mode 100644 index 000000000..3c2b980cc --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html @@ -0,0 +1,62 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.lucene11
    67%
    97/144
    52%
    35/67
    2.5
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    AbstractTokenizingFilter
    100%
    12/12
    100%
    4/4
    1.25
    AlphaNumericTokenizer
    60%
    3/5
    100%
    4/4
    1.333
    DependencySimilarity
    0%
    0/2
    N/A
    1
    FieldAnalyzer
    100%
    9/9
    N/A
    1
    LuceneUtils
    88%
    16/18
    33%
    9/27
    9
    SearchFieldAnalyzer
    100%
    15/15
    50%
    1/2
    1.333
    SearchVersionAnalyzer
    0%
    0/8
    N/A
    1
    TokenPairConcatenatingFilter
    100%
    26/26
    100%
    8/8
    2.2
    UrlTokenizingFilter
    80%
    16/20
    90%
    9/10
    4
    VersionAnalyzer
    0%
    0/7
    N/A
    1
    VersionTokenizingFilter
    0%
    0/22
    0%
    0/12
    3
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html new file mode 100644 index 000000000..71b5b843d --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html @@ -0,0 +1,54 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.nvdcve8
    62%
    295/474
    78%
    150/190
    3.333
    + +
     
    + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CorruptDatabaseException
    0%
    0/4
    N/A
    1
    CveDB
    47%
    124/260
    64%
    49/76
    6.778
    DatabaseException
    0%
    0/6
    N/A
    1
    InvalidDataException
    0%
    0/4
    N/A
    1
    NvdCve12Handler
    95%
    47/49
    86%
    26/30
    2.6
    NvdCve12Handler$Element
    77%
    7/9
    N/A
    2.6
    NvdCve20Handler
    80%
    99/123
    89%
    75/84
    3.04
    NvdCve20Handler$Element
    94%
    18/19
    N/A
    3.04
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html new file mode 100644 index 000000000..f06c91c21 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html @@ -0,0 +1,60 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.update10
    30%
    150/484
    19%
    29/150
    2.945
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    AbstractUpdateTask
    47%
    28/59
    87%
    7/8
    1.857
    BatchUpdateTask
    28%
    30/106
    17%
    8/46
    7.167
    CallableDownloadTask
    0%
    0/41
    0%
    0/22
    2
    DataStoreMetaInfo
    65%
    48/73
    62%
    10/16
    3.111
    DatabaseUpdater
    0%
    0/25
    0%
    0/8
    4.5
    NvdCveInfo
    100%
    17/17
    N/A
    1
    StandardUpdateTask
    0%
    0/129
    0%
    0/46
    14.25
    UpdateTask
    N/A
    N/A
    1
    UpdateTaskFactory
    0%
    0/5
    N/A
    1
    Updateable
    93%
    27/29
    100%
    4/4
    1.25
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html new file mode 100644 index 000000000..bd0f116a6 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html @@ -0,0 +1,62 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.dependency14
    63%
    338/529
    36%
    136/376
    2.439
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Dependency
    60%
    85/140
    13%
    17/124
    2.78
    Evidence
    48%
    24/49
    25%
    10/40
    2.294
    Evidence$Confidence
    100%
    5/5
    N/A
    2.294
    EvidenceCollection
    70%
    64/91
    53%
    31/58
    2.783
    EvidenceCollection$1
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$2
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$3
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$4
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$5
    100%
    2/2
    N/A
    2.783
    Identifier
    41%
    16/39
    13%
    3/22
    2
    Reference
    41%
    14/34
    8%
    3/34
    3.444
    Vulnerability
    70%
    48/68
    25%
    4/16
    1.312
    VulnerabilityComparator
    100%
    2/2
    N/A
    1
    VulnerableSoftware
    76%
    70/91
    81%
    60/74
    3.278
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html new file mode 100644 index 000000000..bcbd588d9 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html @@ -0,0 +1,56 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck
    +
     
    + + + + + + + + + + + + + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck1
    58%
    97/167
    71%
    47/66
    4.056
    org.owasp.dependencycheck.analyzer21
    71%
    864/1209
    59%
    431/726
    4.007
    org.owasp.dependencycheck.concurrency3
    56%
    53/94
    66%
    16/24
    2.611
    org.owasp.dependencycheck.data5
    35%
    34/97
    45%
    10/22
    1.864
    org.owasp.dependencycheck.data.cpe4
    65%
    93/141
    41%
    24/58
    2.567
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    org.owasp.dependencycheck.data.lucene11
    67%
    97/144
    52%
    35/67
    2.5
    org.owasp.dependencycheck.data.nvdcve8
    62%
    295/474
    78%
    150/190
    3.333
    org.owasp.dependencycheck.data.update10
    30%
    150/484
    19%
    29/150
    2.945
    org.owasp.dependencycheck.dependency14
    63%
    338/529
    36%
    136/376
    2.439
    org.owasp.dependencycheck.jaxb.pom1
    100%
    13/13
    50%
    1/2
    1.25
    org.owasp.dependencycheck.jaxb.pom.generated87
    7%
    74/945
    1%
    1/98
    1.091
    org.owasp.dependencycheck.reporting3
    52%
    53/101
    18%
    8/44
    4.273
    org.owasp.dependencycheck.suppression6
    77%
    179/231
    74%
    98/132
    2.812
    org.owasp.dependencycheck.utils18
    54%
    268/492
    58%
    116/198
    3.128
    + +
     
    + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Engine
    58%
    97/167
    71%
    47/66
    4.056
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html new file mode 100644 index 000000000..278d19939 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html @@ -0,0 +1,165 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.jaxb.pom.generated87
    7%
    74/945
    1%
    1/98
    1.091
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Activation
    6%
    1/16
    N/A
    1
    ActivationFile
    0%
    0/7
    N/A
    1
    ActivationOS
    0%
    0/13
    N/A
    1
    ActivationProperty
    14%
    1/7
    N/A
    1
    Build
    4%
    2/44
    N/A
    1.152
    Build$Extensions
    0%
    0/4
    0%
    0/2
    1.152
    Build$Filters
    25%
    1/4
    0%
    0/2
    1.152
    Build$Plugins
    25%
    1/4
    0%
    0/2
    1.152
    Build$Resources
    25%
    1/4
    0%
    0/2
    1.152
    Build$TestResources
    25%
    1/4
    0%
    0/2
    1.152
    BuildBase
    7%
    2/26
    N/A
    1.2
    BuildBase$Filters
    0%
    0/4
    0%
    0/2
    1.2
    BuildBase$Plugins
    25%
    1/4
    0%
    0/2
    1.2
    BuildBase$Resources
    0%
    0/4
    0%
    0/2
    1.2
    BuildBase$TestResources
    0%
    0/4
    0%
    0/2
    1.2
    CiManagement
    0%
    0/11
    N/A
    1.143
    CiManagement$Notifiers
    0%
    0/4
    0%
    0/2
    1.143
    Contributor
    7%
    2/26
    N/A
    1.111
    Contributor$Properties
    0%
    0/4
    0%
    0/2
    1.111
    Contributor$Roles
    0%
    0/4
    0%
    0/2
    1.111
    Dependency
    6%
    2/29
    N/A
    1.053
    Dependency$Exclusions
    25%
    1/4
    0%
    0/2
    1.053
    DependencyManagement
    0%
    0/5
    N/A
    1.333
    DependencyManagement$Dependencies
    0%
    0/4
    0%
    0/2
    1.333
    DeploymentRepository
    6%
    1/16
    N/A
    1
    Developer
    6%
    2/29
    N/A
    1.1
    Developer$Properties
    0%
    0/4
    0%
    0/2
    1.1
    Developer$Roles
    0%
    0/4
    0%
    0/2
    1.1
    DistributionManagement
    5%
    1/19
    N/A
    1
    Exclusion
    14%
    1/7
    N/A
    1
    Extension
    0%
    0/10
    N/A
    1
    IssueManagement
    14%
    1/7
    N/A
    1
    License
    23%
    3/13
    N/A
    1
    MailingList
    0%
    0/20
    N/A
    1.077
    MailingList$OtherArchives
    0%
    0/4
    0%
    0/2
    1.077
    Model
    9%
    9/92
    N/A
    1.155
    Model$Contributors
    25%
    1/4
    0%
    0/2
    1.155
    Model$Dependencies
    25%
    1/4
    0%
    0/2
    1.155
    Model$Developers
    25%
    1/4
    0%
    0/2
    1.155
    Model$Licenses
    75%
    3/4
    50%
    1/2
    1.155
    Model$MailingLists
    0%
    0/4
    0%
    0/2
    1.155
    Model$Modules
    0%
    0/4
    0%
    0/2
    1.155
    Model$PluginRepositories
    25%
    1/4
    0%
    0/2
    1.155
    Model$Profiles
    25%
    1/4
    0%
    0/2
    1.155
    Model$Properties
    25%
    1/4
    0%
    0/2
    1.155
    Model$Reports
    0%
    0/4
    0%
    0/2
    1.155
    Model$Repositories
    25%
    1/4
    0%
    0/2
    1.155
    Notifier
    0%
    0/23
    N/A
    1.067
    Notifier$Configuration
    0%
    0/4
    0%
    0/2
    1.067
    ObjectFactory
    0%
    0/89
    N/A
    1
    Organization
    0%
    0/7
    N/A
    1
    Parent
    7%
    1/13
    N/A
    1
    Plugin
    6%
    2/29
    N/A
    1.182
    Plugin$Configuration
    25%
    1/4
    0%
    0/2
    1.182
    Plugin$Dependencies
    0%
    0/4
    0%
    0/2
    1.182
    Plugin$Executions
    25%
    1/4
    0%
    0/2
    1.182
    Plugin$Goals
    0%
    0/4
    0%
    0/2
    1.182
    PluginExecution
    11%
    2/17
    N/A
    1.167
    PluginExecution$Configuration
    25%
    1/4
    0%
    0/2
    1.167
    PluginExecution$Goals
    25%
    1/4
    0%
    0/2
    1.167
    PluginManagement
    0%
    0/5
    N/A
    1.333
    PluginManagement$Plugins
    0%
    0/4
    0%
    0/2
    1.333
    Prerequisites
    0%
    0/4
    N/A
    1
    Profile
    5%
    2/38
    N/A
    1.2
    Profile$Dependencies
    25%
    1/4
    0%
    0/2
    1.2
    Profile$Modules
    0%
    0/4
    0%
    0/2
    1.2
    Profile$PluginRepositories
    0%
    0/4
    0%
    0/2
    1.2
    Profile$Properties
    0%
    0/4
    0%
    0/2
    1.2
    Profile$Reports
    0%
    0/4
    0%
    0/2
    1.2
    Profile$Repositories
    0%
    0/4
    0%
    0/2
    1.2
    Relocation
    0%
    0/13
    N/A
    1
    ReportPlugin
    10%
    2/20
    N/A
    1.143
    ReportPlugin$Configuration
    25%
    1/4
    0%
    0/2
    1.143
    ReportPlugin$ReportSets
    25%
    1/4
    0%
    0/2
    1.143
    ReportSet
    14%
    2/14
    N/A
    1.2
    ReportSet$Configuration
    0%
    0/4
    0%
    0/2
    1.2
    ReportSet$Reports
    25%
    1/4
    0%
    0/2
    1.2
    Reporting
    18%
    2/11
    N/A
    1.143
    Reporting$Plugins
    25%
    1/4
    0%
    0/2
    1.143
    Repository
    5%
    1/19
    N/A
    1
    RepositoryPolicy
    10%
    1/10
    N/A
    1
    Resource
    11%
    2/17
    N/A
    1.167
    Resource$Excludes
    25%
    1/4
    0%
    0/2
    1.167
    Resource$Includes
    25%
    1/4
    0%
    0/2
    1.167
    Scm
    7%
    1/13
    N/A
    1
    Site
    10%
    1/10
    N/A
    1
    package-info
    N/A
    N/A
    0
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html new file mode 100644 index 000000000..38f01d5b6 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html @@ -0,0 +1,43 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom
    +
     
    + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.jaxb.pom1
    100%
    13/13
    50%
    1/2
    1.25
    org.owasp.dependencycheck.jaxb.pom.generated87
    7%
    74/945
    1%
    1/98
    1.091
    + +
     
    + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    MavenNamespaceFilter
    100%
    13/13
    50%
    1/2
    1.25
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html new file mode 100644 index 000000000..d674b2add --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html @@ -0,0 +1,45 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.reporting
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.reporting3
    52%
    53/101
    18%
    8/44
    4.273
    + +
     
    + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    ReportGenerator
    54%
    45/82
    15%
    6/38
    5.333
    ReportGenerator$Format
    0%
    0/5
    N/A
    5.333
    VelocityLoggerRedirect
    57%
    8/14
    33%
    2/6
    3
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html new file mode 100644 index 000000000..e94be51b5 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html @@ -0,0 +1,52 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.suppression6
    77%
    179/231
    74%
    98/132
    2.812
    + +
     
    + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    PropertyType
    70%
    28/40
    46%
    13/28
    3.1
    SuppressionErrorHandler
    6%
    1/16
    0%
    0/8
    2.5
    SuppressionHandler
    97%
    40/41
    84%
    22/26
    3.6
    SuppressionParseException
    0%
    0/8
    N/A
    1
    SuppressionParser
    58%
    17/29
    N/A
    10
    SuppressionRule
    95%
    93/97
    90%
    63/70
    2.583
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html new file mode 100644 index 000000000..565ca953c --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html @@ -0,0 +1,72 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.utils
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.utils18
    54%
    268/492
    58%
    116/198
    3.128
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Checksum
    84%
    21/25
    90%
    9/10
    2.75
    DependencyVersion
    92%
    76/82
    80%
    50/62
    5.091
    DependencyVersionUtil
    92%
    24/26
    100%
    14/14
    7
    DownloadFailedException
    0%
    0/8
    N/A
    1
    Downloader
    7%
    7/88
    3%
    1/28
    6.6
    Downloader$1
    0%
    0/4
    0%
    0/2
    6.6
    ExtractionException
    0%
    0/8
    N/A
    1
    FileUtils
    52%
    40/76
    56%
    18/32
    5.286
    Filter
    100%
    4/4
    N/A
    1.667
    Filter$1
    100%
    2/2
    N/A
    1.667
    Filter$FilterIterator
    90%
    18/20
    80%
    8/10
    1.667
    InvalidSettingException
    0%
    0/8
    N/A
    1
    LogFilter
    0%
    0/3
    0%
    0/6
    3
    LogUtils
    8%
    2/25
    0%
    0/6
    3
    NonClosingStream
    100%
    3/3
    N/A
    1
    Settings
    61%
    52/85
    43%
    7/16
    2.333
    Settings$KEYS
    0%
    0/2
    N/A
    2.333
    UrlStringUtils
    82%
    19/23
    75%
    9/12
    2.5
    + + + + diff --git a/css/dependency-check-core/cobertura/frame-summary.html b/css/dependency-check-core/cobertura/frame-summary.html new file mode 100644 index 000000000..75b4eacb1 --- /dev/null +++ b/css/dependency-check-core/cobertura/frame-summary.html @@ -0,0 +1,44 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - All Packages
    +
     
    + + + + + + + + + + + + + + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages194
    50%
    2619/5152
    51%
    1104/2161
    2.2
    org.owasp.dependencycheck1
    58%
    97/167
    71%
    47/66
    4.056
    org.owasp.dependencycheck.analyzer21
    71%
    864/1209
    59%
    431/726
    4.007
    org.owasp.dependencycheck.concurrency3
    56%
    53/94
    66%
    16/24
    2.611
    org.owasp.dependencycheck.data5
    35%
    34/97
    45%
    10/22
    1.864
    org.owasp.dependencycheck.data.cpe4
    65%
    93/141
    41%
    24/58
    2.567
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    org.owasp.dependencycheck.data.lucene11
    67%
    97/144
    52%
    35/67
    2.5
    org.owasp.dependencycheck.data.nvdcve8
    62%
    295/474
    78%
    150/190
    3.333
    org.owasp.dependencycheck.data.update10
    30%
    150/484
    19%
    29/150
    2.945
    org.owasp.dependencycheck.dependency14
    63%
    338/529
    36%
    136/376
    2.439
    org.owasp.dependencycheck.jaxb.pom1
    100%
    13/13
    50%
    1/2
    1.25
    org.owasp.dependencycheck.jaxb.pom.generated87
    7%
    74/945
    1%
    1/98
    1.091
    org.owasp.dependencycheck.reporting3
    52%
    53/101
    18%
    8/44
    4.273
    org.owasp.dependencycheck.suppression6
    77%
    179/231
    74%
    98/132
    2.812
    org.owasp.dependencycheck.utils18
    54%
    268/492
    58%
    116/198
    3.128
    + + + + diff --git a/css/dependency-check-core/cobertura/help.html b/css/dependency-check-core/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/css/dependency-check-core/cobertura/help.html @@ -0,0 +1,31 @@ + + + + + + +Coverage Report - Help + + + + +
    + +
    Line Coverage
    +
    The percent of lines executed by this test run.
    + +
    Branch Coverage
    +
    The percent of branches executed by this test run.
    + +
    Complexity
    +
    Average McCabe's cyclomatic code complexity for all methods. This is basically a count of the number of different code paths in a method (incremented by 1 for each if statement, while loop, etc.)
    + +
    N/A
    +
    Line coverage and branch coverage will appear as "Not Applicable" when Cobertura can not find line number information in the .class file. This happens for stub and skeleton classes, interfaces, or when the class was not compiled with "debug=true."
    + +
    + + + + diff --git a/css/dependency-check-core/cobertura/images/blank.png b/css/dependency-check-core/cobertura/images/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..cee9cd37a10ebe8d7fe6a6ed0d8d74a2889f6e9f GIT binary patch literal 144 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*$P6UUaa~gcQtTz3zOL*Scz7A*wL3%Pb^(Pr z3p^r=85p=efH0%e8j~47LAC&&5LY1m|NsA`H|O64vY1MO{DS{8Jl$^K1?2I2x;TbZ j+)DoO|34!$s|3ToYTbu_uiJV9r5HS2{an^LB{Ts5Dp4nx literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/cobertura/images/downsimple.png b/css/dependency-check-core/cobertura/images/downsimple.png new file mode 100644 index 0000000000000000000000000000000000000000..4accf927bed9f998040ada65a35695bb758c78f1 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^96-#@!3-ps+W+JLDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5XI0Jk_T>t<7-_p_onv&0MrCXRCq913h|0^A-< nECO>F1soiX9N|!6VB%rmQep^;zw7l7Xas|&tDnm{r-UW|t_U_c literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/cobertura/images/upsimple.png b/css/dependency-check-core/cobertura/images/upsimple.png new file mode 100644 index 0000000000000000000000000000000000000000..c82b76ffe2c9d41a2f38a1c1115013cc0852f522 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^96-#@!3-ps+W+JLDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5XI0Jk_Tw7XN{{R0EFVdQ&MBb@01yl}4*&oF literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/cobertura/index.html b/css/dependency-check-core/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/css/dependency-check-core/cobertura/index.html @@ -0,0 +1,25 @@ + + + + + +Coverage Report + + + + + + + + + + + <body> + <p>This document is designed to be viewed using the frames feature. If you see this message, you are using a frame-incapable web client.</p> + <p><a href="frame-summary.html">Click here to view a non-frame version.</a></p> + </body> + + + + diff --git a/css/dependency-check-core/cobertura/js/customsorttypes.js b/css/dependency-check-core/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/css/dependency-check-core/cobertura/js/customsorttypes.js @@ -0,0 +1,65 @@ +/* + * Cobertura - http://cobertura.sourceforge.net/ + * + * Copyright (C) 2005 Mark Doliner + * Copyright (C) 2005 Olivier Parent + * + * Cobertura is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, + * or (at your option) any later version. + * + * Cobertura is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Cobertura; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +function percentageSortType( s ) +{ + var ret; + var i = s.indexOf( "%" ); + + if (i != -1) { + s = s.substr( 0, i ); + } + ret = parseFloat(s); + if (isNaN(ret)) { + ret = -1; + } + + return ret; +} + +SortableTable.prototype.addSortType( "Percentage", percentageSortType ); + + + +// This is needed for correctly sorting numbers in different +// locales. The stock number converter only expects to sort +// numbers which use a period as a separator instead of a +// comma (like French). +function formattedNumberSortType( s ) +{ + var ret; + var i = s.indexOf(';'); + + if (i != -1) { + s = s.substring(0, i); + } + ret = parseFloat(s); + if (isNaN(ret)) { + return -1; + } + + return ret; +} + +SortableTable.prototype.addSortType( "FormattedNumber", formattedNumberSortType ); diff --git a/css/dependency-check-core/cobertura/js/popup.js b/css/dependency-check-core/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/css/dependency-check-core/cobertura/js/popup.js @@ -0,0 +1,8 @@ +var newwindow; +function popupwindow(url) +{ + newwindow=window.open(url,'name','height=500,width=500,resizable=yes,scrollbars=yes'); + if (window.focus) { + newwindow.focus() + } +} diff --git a/css/dependency-check-core/cobertura/js/sortabletable.js b/css/dependency-check-core/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/css/dependency-check-core/cobertura/js/sortabletable.js @@ -0,0 +1,455 @@ + +/*----------------------------------------------------------------------------\ +| Sortable Table 1.12 | +|-----------------------------------------------------------------------------| +| Created by Erik Arvidsson | +| (http://webfx.eae.net/contact.html#erik) | +| For WebFX (http://webfx.eae.net/) | +|-----------------------------------------------------------------------------| +| A DOM 1 based script that allows an ordinary HTML table to be sortable. | +|-----------------------------------------------------------------------------| +| Copyright (c) 1998 - 2004 Erik Arvidsson | +|-----------------------------------------------------------------------------| +| This software is provided "as is", without warranty of any kind, express or | +| implied, including but not limited to the warranties of merchantability, | +| fitness for a particular purpose and noninfringement. In no event shall the | +| authors or copyright holders be liable for any claim, damages or other | +| liability, whether in an action of contract, tort or otherwise, arising | +| from, out of or in connection with the software or the use or other | +| dealings in the software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| This software is available under the three different licenses mentioned | +| below. To use this software you must chose, and qualify, for one of those. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Non-Commercial License http://webfx.eae.net/license.html | +| Permits anyone the right to use the software in a non-commercial context | +| free of charge. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Commercial license http://webfx.eae.net/commercial.html | +| Permits the license holder the right to use the software in a commercial | +| context. Such license must be specifically obtained, however it's valid for | +| any number of implementations of the licensed software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| GPL - The GNU General Public License http://www.gnu.org/licenses/gpl.txt | +| Permits anyone the right to use and modify the software without limitations | +| as long as proper credits are given and the original and modified source | +| code are included. Requires that the final product, software derivate from | +| the original source or any software utilizing a GPL component, such as | +| this, is also licensed under the GPL license. | +|-----------------------------------------------------------------------------| +| 2003-01-10 | First version | +| 2003-01-19 | Minor changes to the date parsing | +| 2003-01-28 | JScript 5.0 fixes (no support for 'in' operator) | +| 2003-02-01 | Sloppy typo like error fixed in getInnerText | +| 2003-07-04 | Added workaround for IE cellIndex bug. | +| 2003-11-09 | The bDescending argument to sort was not correctly working | +| | Using onclick DOM0 event if no support for addEventListener | +| | or attachEvent | +| 2004-01-13 | Adding addSortType and removeSortType which makes it a lot | +| | easier to add new, custom sort types. | +| 2004-01-27 | Switch to use descending = false as the default sort order. | +| | Change defaultDescending to suit your needs. | +| 2004-03-14 | Improved sort type None look and feel a bit | +| 2004-08-26 | Made the handling of tBody and tHead more flexible. Now you | +| | can use another tHead or no tHead, and you can chose some | +| | other tBody. | +|-----------------------------------------------------------------------------| +| Created 2003-01-10 | All changes are in the log above. | Updated 2004-08-26 | +\----------------------------------------------------------------------------*/ + + +function SortableTable(oTable, oSortTypes) { + + this.sortTypes = oSortTypes || []; + + this.sortColumn = null; + this.descending = null; + + var oThis = this; + this._headerOnclick = function (e) { + oThis.headerOnclick(e); + }; + + if (oTable) { + this.setTable( oTable ); + this.document = oTable.ownerDocument || oTable.document; + } + else { + this.document = document; + } + + + // only IE needs this + var win = this.document.defaultView || this.document.parentWindow; + this._onunload = function () { + oThis.destroy(); + }; + if (win && typeof win.attachEvent != "undefined") { + win.attachEvent("onunload", this._onunload); + } +} + +SortableTable.gecko = navigator.product == "Gecko"; +SortableTable.msie = /msie/i.test(navigator.userAgent); +// Mozilla is faster when doing the DOM manipulations on +// an orphaned element. MSIE is not +SortableTable.removeBeforeSort = SortableTable.gecko; + +SortableTable.prototype.onsort = function () {}; + +// default sort order. true -> descending, false -> ascending +SortableTable.prototype.defaultDescending = false; + +// shared between all instances. This is intentional to allow external files +// to modify the prototype +SortableTable.prototype._sortTypeInfo = {}; + +SortableTable.prototype.setTable = function (oTable) { + if ( this.tHead ) + this.uninitHeader(); + this.element = oTable; + this.setTHead( oTable.tHead ); + this.setTBody( oTable.tBodies[0] ); +}; + +SortableTable.prototype.setTHead = function (oTHead) { + if (this.tHead && this.tHead != oTHead ) + this.uninitHeader(); + this.tHead = oTHead; + this.initHeader( this.sortTypes ); +}; + +SortableTable.prototype.setTBody = function (oTBody) { + this.tBody = oTBody; +}; + +SortableTable.prototype.setSortTypes = function ( oSortTypes ) { + if ( this.tHead ) + this.uninitHeader(); + this.sortTypes = oSortTypes || []; + if ( this.tHead ) + this.initHeader( this.sortTypes ); +}; + +// adds arrow containers and events +// also binds sort type to the header cells so that reordering columns does +// not break the sort types +SortableTable.prototype.initHeader = function (oSortTypes) { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var doc = this.tHead.ownerDocument || this.tHead.document; + this.sortTypes = oSortTypes || []; + var l = cells.length; + var img, c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (this.sortTypes[i] != null && this.sortTypes[i] != "None") { + img = doc.createElement("IMG"); + img.src = "images/blank.png"; + c.appendChild(img); + if (this.sortTypes[i] != null) + c._sortType = this.sortTypes[i]; + if (typeof c.addEventListener != "undefined") + c.addEventListener("click", this._headerOnclick, false); + else if (typeof c.attachEvent != "undefined") + c.attachEvent("onclick", this._headerOnclick); + else + c.onclick = this._headerOnclick; + } + else + { + c.setAttribute( "_sortType", oSortTypes[i] ); + c._sortType = "None"; + } + } + this.updateHeaderArrows(); +}; + +// remove arrows and events +SortableTable.prototype.uninitHeader = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (c._sortType != null && c._sortType != "None") { + c.removeChild(c.lastChild); + if (typeof c.removeEventListener != "undefined") + c.removeEventListener("click", this._headerOnclick, false); + else if (typeof c.detachEvent != "undefined") + c.detachEvent("onclick", this._headerOnclick); + c._sortType = null; + c.removeAttribute( "_sortType" ); + } + } +}; + +SortableTable.prototype.updateHeaderArrows = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var img; + for (var i = 0; i < l; i++) { + if (cells[i]._sortType != null && cells[i]._sortType != "None") { + img = cells[i].lastChild; + if (i == this.sortColumn) + img.className = "sort-arrow " + (this.descending ? "descending" : "ascending"); + else + img.className = "sort-arrow"; + } + } +}; + +SortableTable.prototype.headerOnclick = function (e) { + // find TD element + var el = e.target || e.srcElement; + while (el.tagName != "TD") + el = el.parentNode; + + this.sort(SortableTable.msie ? SortableTable.getCellIndex(el) : el.cellIndex); +}; + +// IE returns wrong cellIndex when columns are hidden +SortableTable.getCellIndex = function (oTd) { + var cells = oTd.parentNode.childNodes + var l = cells.length; + var i; + for (i = 0; cells[i] != oTd && i < l; i++) + ; + return i; +}; + +SortableTable.prototype.getSortType = function (nColumn) { + return this.sortTypes[nColumn] || "String"; +}; + +// only nColumn is required +// if bDescending is left out the old value is taken into account +// if sSortType is left out the sort type is found from the sortTypes array + +SortableTable.prototype.sort = function (nColumn, bDescending, sSortType) { + if (!this.tBody) return; + if (sSortType == null) + sSortType = this.getSortType(nColumn); + + // exit if None + if (sSortType == "None") + return; + + if (bDescending == null) { + if (this.sortColumn != nColumn) + this.descending = this.defaultDescending; + else + this.descending = !this.descending; + } + else + this.descending = bDescending; + + this.sortColumn = nColumn; + + if (typeof this.onbeforesort == "function") + this.onbeforesort(); + + var f = this.getSortFunction(sSortType, nColumn); + var a = this.getCache(sSortType, nColumn); + var tBody = this.tBody; + + a.sort(f); + + if (this.descending) + a.reverse(); + + if (SortableTable.removeBeforeSort) { + // remove from doc + var nextSibling = tBody.nextSibling; + var p = tBody.parentNode; + p.removeChild(tBody); + } + + // insert in the new order + var l = a.length; + for (var i = 0; i < l; i++) + tBody.appendChild(a[i].element); + + if (SortableTable.removeBeforeSort) { + // insert into doc + p.insertBefore(tBody, nextSibling); + } + + this.updateHeaderArrows(); + + this.destroyCache(a); + + if (typeof this.onsort == "function") + this.onsort(); +}; + +SortableTable.prototype.asyncSort = function (nColumn, bDescending, sSortType) { + var oThis = this; + this._asyncsort = function () { + oThis.sort(nColumn, bDescending, sSortType); + }; + window.setTimeout(this._asyncsort, 1); +}; + +SortableTable.prototype.getCache = function (sType, nColumn) { + if (!this.tBody) return []; + var rows = this.tBody.rows; + var l = rows.length; + var a = new Array(l); + var r; + for (var i = 0; i < l; i++) { + r = rows[i]; + a[i] = { + value: this.getRowValue(r, sType, nColumn), + element: r + }; + }; + return a; +}; + +SortableTable.prototype.destroyCache = function (oArray) { + var l = oArray.length; + for (var i = 0; i < l; i++) { + oArray[i].value = null; + oArray[i].element = null; + oArray[i] = null; + } +}; + +SortableTable.prototype.getRowValue = function (oRow, sType, nColumn) { + // if we have defined a custom getRowValue use that + if (this._sortTypeInfo[sType] && this._sortTypeInfo[sType].getRowValue) + return this._sortTypeInfo[sType].getRowValue(oRow, nColumn); + + var s; + var c = oRow.cells[nColumn]; + if (typeof c.innerText != "undefined") + s = c.innerText; + else + s = SortableTable.getInnerText(c); + return this.getValueFromString(s, sType); +}; + +SortableTable.getInnerText = function (oNode) { + var s = ""; + var cs = oNode.childNodes; + var l = cs.length; + for (var i = 0; i < l; i++) { + switch (cs[i].nodeType) { + case 1: //ELEMENT_NODE + s += SortableTable.getInnerText(cs[i]); + break; + case 3: //TEXT_NODE + s += cs[i].nodeValue; + break; + } + } + return s; +}; + +SortableTable.prototype.getValueFromString = function (sText, sType) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].getValueFromString( sText ); + return sText; + /* + switch (sType) { + case "Number": + return Number(sText); + case "CaseInsensitiveString": + return sText.toUpperCase(); + case "Date": + var parts = sText.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); + } + return sText; + */ + }; + +SortableTable.prototype.getSortFunction = function (sType, nColumn) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].compare; + return SortableTable.basicCompare; +}; + +SortableTable.prototype.destroy = function () { + this.uninitHeader(); + var win = this.document.parentWindow; + if (win && typeof win.detachEvent != "undefined") { // only IE needs this + win.detachEvent("onunload", this._onunload); + } + this._onunload = null; + this.element = null; + this.tHead = null; + this.tBody = null; + this.document = null; + this._headerOnclick = null; + this.sortTypes = null; + this._asyncsort = null; + this.onsort = null; +}; + +// Adds a sort type to all instance of SortableTable +// sType : String - the identifier of the sort type +// fGetValueFromString : function ( s : string ) : T - A function that takes a +// string and casts it to a desired format. If left out the string is just +// returned +// fCompareFunction : function ( n1 : T, n2 : T ) : Number - A normal JS sort +// compare function. Takes two values and compares them. If left out less than, +// <, compare is used +// fGetRowValue : function( oRow : HTMLTRElement, nColumn : int ) : T - A function +// that takes the row and the column index and returns the value used to compare. +// If left out then the innerText is first taken for the cell and then the +// fGetValueFromString is used to convert that string the desired value and type + +SortableTable.prototype.addSortType = function (sType, fGetValueFromString, fCompareFunction, fGetRowValue) { + this._sortTypeInfo[sType] = { + type: sType, + getValueFromString: fGetValueFromString || SortableTable.idFunction, + compare: fCompareFunction || SortableTable.basicCompare, + getRowValue: fGetRowValue + }; +}; + +// this removes the sort type from all instances of SortableTable +SortableTable.prototype.removeSortType = function (sType) { + delete this._sortTypeInfo[sType]; +}; + +SortableTable.basicCompare = function compare(n1, n2) { + if (n1.value < n2.value) + return -1; + if (n2.value < n1.value) + return 1; + return 0; +}; + +SortableTable.idFunction = function (x) { + return x; +}; + +SortableTable.toUpperCase = function (s) { + return s.toUpperCase(); +}; + +SortableTable.toDate = function (s) { + var parts = s.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); +}; + + +// add sort types +SortableTable.prototype.addSortType("Number", Number); +SortableTable.prototype.addSortType("CaseInsensitiveString", SortableTable.toUpperCase); +SortableTable.prototype.addSortType("Date", SortableTable.toDate); +SortableTable.prototype.addSortType("String"); +// None is a special case diff --git a/css/dependency-check-core/cobertura/js/stringbuilder.js b/css/dependency-check-core/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/css/dependency-check-core/cobertura/js/stringbuilder.js @@ -0,0 +1,79 @@ +/*----------------------------------------------------------------------------\ +| String Builder 1.02 | +|-----------------------------------------------------------------------------| +| Created by Erik Arvidsson | +| (http://webfx.eae.net/contact.html#erik) | +| For WebFX (http://webfx.eae.net/) | +|-----------------------------------------------------------------------------| +| A class that allows more efficient building of strings than concatenation. | +|-----------------------------------------------------------------------------| +| Copyright (c) 1999 - 2002 Erik Arvidsson | +|-----------------------------------------------------------------------------| +| This software is provided "as is", without warranty of any kind, express or | +| implied, including but not limited to the warranties of merchantability, | +| fitness for a particular purpose and noninfringement. In no event shall the | +| authors or copyright holders be liable for any claim, damages or other | +| liability, whether in an action of contract, tort or otherwise, arising | +| from, out of or in connection with the software or the use or other | +| dealings in the software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| This software is available under the three different licenses mentioned | +| below. To use this software you must chose, and qualify, for one of those. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Non-Commercial License http://webfx.eae.net/license.html | +| Permits anyone the right to use the software in a non-commercial context | +| free of charge. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| The WebFX Commercial license http://webfx.eae.net/commercial.html | +| Permits the license holder the right to use the software in a commercial | +| context. Such license must be specifically obtained, however it's valid for | +| any number of implementations of the licensed software. | +| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | +| GPL - The GNU General Public License http://www.gnu.org/licenses/gpl.txt | +| Permits anyone the right to use and modify the software without limitations | +| as long as proper credits are given and the original and modified source | +| code are included. Requires that the final product, software derivate from | +| the original source or any software utilizing a GPL component, such as | +| this, is also licensed under the GPL license. | +|-----------------------------------------------------------------------------| +| 2000-10-02 | First version | +| 2000-10-05 | Added a cache of the string so that it does not need to be | +| | regenerated every time in toString | +| 2002-10-03 | Added minor improvement in the toString method | +|-----------------------------------------------------------------------------| +| Created 2000-10-02 | All changes are in the log above. | Updated 2002-10-03 | +\----------------------------------------------------------------------------*/ function StringBuilder(sString) { + + // public + this.length = 0; + + this.append = function (sString) { + // append argument + this.length += (this._parts[this._current++] = String(sString)).length; + + // reset cache + this._string = null; + return this; + }; + + this.toString = function () { + if (this._string != null) + return this._string; + + var s = this._parts.join(""); + this._parts = [s]; + this._current = 1; + this.length = s.length; + + return this._string = s; + }; + + // private + this._current = 0; + this._parts = []; + this._string = null; // used to cache the string + + // init + if (sString != null) + this.append(sString); +} diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html new file mode 100644 index 000000000..5f8627c2e --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html @@ -0,0 +1,753 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.Engine
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Engine
    58%
    97/167
    71%
    47/66
    4.056
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck;
     20  
     
     21  
     import java.util.EnumMap;
     22  
     import java.io.File;
     23  
     import java.io.IOException;
     24  
     import java.sql.SQLException;
     25  
     import java.util.ArrayList;
     26  
     import java.util.HashSet;
     27  
     import java.util.Iterator;
     28  
     import java.util.List;
     29  
     import java.util.Set;
     30  
     import java.util.logging.Level;
     31  
     import java.util.logging.Logger;
     32  
     import org.owasp.dependencycheck.analyzer.AnalysisException;
     33  
     import org.owasp.dependencycheck.analyzer.AnalysisPhase;
     34  
     import org.owasp.dependencycheck.analyzer.Analyzer;
     35  
     import org.owasp.dependencycheck.analyzer.AnalyzerService;
     36  
     import org.owasp.dependencycheck.data.CachedWebDataSource;
     37  
     import org.owasp.dependencycheck.data.NoDataException;
     38  
     import org.owasp.dependencycheck.data.UpdateException;
     39  
     import org.owasp.dependencycheck.data.UpdateService;
     40  
     import org.owasp.dependencycheck.data.cpe.CpeMemoryIndex;
     41  
     import org.owasp.dependencycheck.data.cpe.IndexException;
     42  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     43  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     44  
     import org.owasp.dependencycheck.dependency.Dependency;
     45  
     import org.owasp.dependencycheck.utils.FileUtils;
     46  
     import org.owasp.dependencycheck.utils.InvalidSettingException;
     47  
     import org.owasp.dependencycheck.utils.Settings;
     48  
     
     49  
     /**
     50  
      * Scans files, directories, etc. for Dependencies. Analyzers are loaded and
     51  
      * used to process the files found by the scan, if a file is encountered and an
     52  
      * Analyzer is associated with the file type then the file is turned into a
     53  
      * dependency.
     54  
      *
     55  
      * @author Jeremy Long (jeremy.long@owasp.org)
     56  
      */
     57  
     public class Engine {
     58  
     
     59  
         /**
     60  
          * The list of dependencies.
     61  
          */
     62  6
         private final List<Dependency> dependencies = new ArrayList<Dependency>();
     63  
         /**
     64  
          * A Map of analyzers grouped by Analysis phase.
     65  
          */
     66  6
         private final EnumMap<AnalysisPhase, List<Analyzer>> analyzers =
     67  
                 new EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.class);
     68  
         /**
     69  
          * A set of extensions supported by the analyzers.
     70  
          */
     71  6
         private final Set<String> extensions = new HashSet<String>();
     72  
     
     73  
         /**
     74  
          * Creates a new Engine.
     75  
          */
     76  6
         public Engine() {
     77  6
             boolean autoUpdate = true;
     78  
             try {
     79  6
                 autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE);
     80  0
             } catch (InvalidSettingException ex) {
     81  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, "Invalid setting for auto-update; using true.");
     82  6
             }
     83  6
             if (autoUpdate) {
     84  0
                 doUpdates();
     85  
             }
     86  6
             loadAnalyzers();
     87  6
         }
     88  
     
     89  
         /**
     90  
          * Creates a new Engine.
     91  
          *
     92  
          * @param autoUpdate indicates whether or not data should be updated from
     93  
          * the Internet
     94  
          * @deprecated This function should no longer be used; the autoupdate flag
     95  
          * should be set using:
     96  
          * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code>
     97  
          */
     98  
         @Deprecated
     99  0
         public Engine(boolean autoUpdate) {
     100  0
             if (autoUpdate) {
     101  0
                 doUpdates();
     102  
             }
     103  0
             loadAnalyzers();
     104  0
         }
     105  
     
     106  
         /**
     107  
          * Loads the analyzers specified in the configuration file (or system
     108  
          * properties).
     109  
          */
     110  
         private void loadAnalyzers() {
     111  
     
     112  60
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     113  54
                 analyzers.put(phase, new ArrayList<Analyzer>());
     114  
             }
     115  
     
     116  6
             final AnalyzerService service = AnalyzerService.getInstance();
     117  6
             final Iterator<Analyzer> iterator = service.getAnalyzers();
     118  66
             while (iterator.hasNext()) {
     119  60
                 final Analyzer a = iterator.next();
     120  60
                 analyzers.get(a.getAnalysisPhase()).add(a);
     121  60
                 if (a.getSupportedExtensions() != null) {
     122  12
                     extensions.addAll(a.getSupportedExtensions());
     123  
                 }
     124  60
             }
     125  6
         }
     126  
     
     127  
         /**
     128  
          * Get the List of the analyzers for a specific phase of analysis.
     129  
          *
     130  
          * @param phase the phase to get the configured analyzers.
     131  
          * @return the analyzers loaded
     132  
          */
     133  
         public List<Analyzer> getAnalyzers(AnalysisPhase phase) {
     134  0
             return analyzers.get(phase);
     135  
         }
     136  
     
     137  
         /**
     138  
          * Get the dependencies identified.
     139  
          *
     140  
          * @return the dependencies identified
     141  
          */
     142  
         public List<Dependency> getDependencies() {
     143  38
             return dependencies;
     144  
         }
     145  
     
     146  
         /**
     147  
          * Scans an array of files or directories. If a directory is specified, it
     148  
          * will be scanned recursively. Any dependencies identified are added to the
     149  
          * dependency collection.
     150  
          *
     151  
          * @since v0.3.2.5
     152  
          *
     153  
          * @param paths an array of paths to files or directories to be analyzed.
     154  
          */
     155  
         public void scan(String[] paths) {
     156  0
             for (String path : paths) {
     157  0
                 final File file = new File(path);
     158  0
                 scan(file);
     159  
             }
     160  0
         }
     161  
     
     162  
         /**
     163  
          * Scans a given file or directory. If a directory is specified, it will be
     164  
          * scanned recursively. Any dependencies identified are added to the
     165  
          * dependency collection.
     166  
          *
     167  
          * @param path the path to a file or directory to be analyzed.
     168  
          */
     169  
         public void scan(String path) {
     170  0
             final File file = new File(path);
     171  0
             scan(file);
     172  0
         }
     173  
     
     174  
         /**
     175  
          * Scans an array of files or directories. If a directory is specified, it
     176  
          * will be scanned recursively. Any dependencies identified are added to the
     177  
          * dependency collection.
     178  
          *
     179  
          * @since v0.3.2.5
     180  
          *
     181  
          * @param files an array of paths to files or directories to be analyzed.
     182  
          */
     183  
         public void scan(File[] files) {
     184  0
             for (File file : files) {
     185  0
                 scan(file);
     186  
             }
     187  0
         }
     188  
     
     189  
         /**
     190  
          * Scans a list of files or directories. If a directory is specified, it
     191  
          * will be scanned recursively. Any dependencies identified are added to the
     192  
          * dependency collection.
     193  
          *
     194  
          * @since v0.3.2.5
     195  
          *
     196  
          * @param files a set of paths to files or directories to be analyzed.
     197  
          */
     198  
         public void scan(Set<File> files) {
     199  0
             for (File file : files) {
     200  0
                 scan(file);
     201  
             }
     202  0
         }
     203  
     
     204  
         /**
     205  
          * Scans a list of files or directories. If a directory is specified, it
     206  
          * will be scanned recursively. Any dependencies identified are added to the
     207  
          * dependency collection.
     208  
          *
     209  
          * @since v0.3.2.5
     210  
          *
     211  
          * @param files a set of paths to files or directories to be analyzed.
     212  
          */
     213  
         public void scan(List<File> files) {
     214  0
             for (File file : files) {
     215  0
                 scan(file);
     216  
             }
     217  0
         }
     218  
     
     219  
         /**
     220  
          * Scans a given file or directory. If a directory is specified, it will be
     221  
          * scanned recursively. Any dependencies identified are added to the
     222  
          * dependency collection.
     223  
          *
     224  
          * @since v0.3.2.4
     225  
          *
     226  
          * @param file the path to a file or directory to be analyzed.
     227  
          */
     228  
         public void scan(File file) {
     229  13
             if (file.exists()) {
     230  13
                 if (file.isDirectory()) {
     231  8
                     scanDirectory(file);
     232  
                 } else {
     233  5
                     scanFile(file);
     234  
                 }
     235  
             }
     236  13
         }
     237  
     
     238  
         /**
     239  
          * Recursively scans files and directories. Any dependencies identified are
     240  
          * added to the dependency collection.
     241  
          *
     242  
          * @param dir the directory to scan.
     243  
          */
     244  
         protected void scanDirectory(File dir) {
     245  33
             final File[] files = dir.listFiles();
     246  33
             if (files != null) {
     247  68
                 for (File f : files) {
     248  35
                     if (f.isDirectory()) {
     249  25
                         scanDirectory(f);
     250  
                     } else {
     251  10
                         scanFile(f);
     252  
                     }
     253  
                 }
     254  
             }
     255  33
         }
     256  
     
     257  
         /**
     258  
          * Scans a specified file. If a dependency is identified it is added to the
     259  
          * dependency collection.
     260  
          *
     261  
          * @param file The file to scan.
     262  
          */
     263  
         protected void scanFile(File file) {
     264  15
             if (!file.isFile()) {
     265  0
                 final String msg = String.format("Path passed to scanFile(File) is not a file: %s. Skipping the file.", file.toString());
     266  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
     267  0
                 return;
     268  
             }
     269  15
             final String fileName = file.getName();
     270  15
             final String extension = FileUtils.getFileExtension(fileName);
     271  15
             if (extension != null) {
     272  15
                 if (extensions.contains(extension)) {
     273  15
                     final Dependency dependency = new Dependency(file);
     274  15
                     dependencies.add(dependency);
     275  15
                 }
     276  
             } else {
     277  0
                 final String msg = String.format("No file extension found on file '%s'. The file was not analyzed.",
     278  
                         file.toString());
     279  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, msg);
     280  
             }
     281  15
         }
     282  
     
     283  
         /**
     284  
          * Runs the analyzers against all of the dependencies.
     285  
          */
     286  
         public void analyzeDependencies() {
     287  
             //need to ensure that data exists
     288  
             try {
     289  3
                 ensureDataExists();
     290  0
             } catch (NoDataException ex) {
     291  0
                 final String msg = String.format("%n%n%s%n%nUnable to continue dependency-check analysis.", ex.getMessage());
     292  0
                 Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg);
     293  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, null, ex);
     294  0
                 return;
     295  3
             }
     296  
     
     297  
             //phase one initialize
     298  30
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     299  27
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     300  27
                 for (Analyzer a : analyzerList) {
     301  
                     try {
     302  30
                         final String msg = String.format("Initializing %s", a.getName());
     303  30
                         Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
     304  30
                         a.initialize();
     305  0
                     } catch (Exception ex) {
     306  0
                         final String msg = String.format("Exception occurred initializing %s.", a.getName());
     307  0
                         Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg);
     308  0
                         Logger.getLogger(Engine.class.getName()).log(Level.INFO, null, ex);
     309  
                         try {
     310  0
                             a.close();
     311  0
                         } catch (Exception ex1) {
     312  0
                             Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex1);
     313  0
                         }
     314  60
                     }
     315  
                 }
     316  
             }
     317  
     
     318  
             // analysis phases
     319  30
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     320  27
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     321  
     
     322  27
                 for (Analyzer a : analyzerList) {
     323  
                     /* need to create a copy of the collection because some of the
     324  
                      * analyzers may modify it. This prevents ConcurrentModificationExceptions.
     325  
                      * This is okay for adds/deletes because it happens per analyzer.
     326  
                      */
     327  30
                     final String msg = String.format("Begin Analyzer '%s'", a.getName());
     328  30
                     Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
     329  30
                     final Set<Dependency> dependencySet = new HashSet<Dependency>();
     330  30
                     dependencySet.addAll(dependencies);
     331  30
                     for (Dependency d : dependencySet) {
     332  86
                         final String msgFile = String.format("Begin Analysis of '%s'", d.getActualFilePath());
     333  86
                         Logger.getLogger(Engine.class.getName()).log(Level.FINE, msgFile);
     334  86
                         if (a.supportsExtension(d.getFileExtension())) {
     335  
                             try {
     336  79
                                 a.analyze(d, this);
     337  0
                             } catch (AnalysisException ex) {
     338  0
                                 d.addAnalysisException(ex);
     339  79
                             }
     340  
                         }
     341  86
                     }
     342  30
                 }
     343  
             }
     344  
     
     345  
             //close/cleanup
     346  30
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     347  27
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     348  27
                 for (Analyzer a : analyzerList) {
     349  30
                     final String msg = String.format("Closing Analyzer '%s'", a.getName());
     350  30
                     Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
     351  
                     try {
     352  30
                         a.close();
     353  0
                     } catch (Exception ex) {
     354  0
                         Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex);
     355  30
                     }
     356  30
                 }
     357  
             }
     358  3
         }
     359  
     
     360  
         /**
     361  
          * Cycles through the cached web data sources and calls update on all of
     362  
          * them.
     363  
          */
     364  
         private void doUpdates() {
     365  0
             final UpdateService service = UpdateService.getInstance();
     366  0
             final Iterator<CachedWebDataSource> iterator = service.getDataSources();
     367  0
             while (iterator.hasNext()) {
     368  0
                 final CachedWebDataSource source = iterator.next();
     369  
                 try {
     370  0
                     source.update();
     371  0
                 } catch (UpdateException ex) {
     372  0
                     Logger.getLogger(Engine.class.getName()).log(Level.WARNING,
     373  
                             "Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities.");
     374  0
                     Logger.getLogger(Engine.class.getName()).log(Level.FINE,
     375  
                             String.format("Unable to update details for %s", source.getClass().getName()), ex);
     376  0
                 }
     377  0
             }
     378  0
         }
     379  
     
     380  
         /**
     381  
          * Returns a full list of all of the analyzers. This is useful for reporting
     382  
          * which analyzers where used.
     383  
          *
     384  
          * @return a list of Analyzers
     385  
          */
     386  
         public List<Analyzer> getAnalyzers() {
     387  1
             final List<Analyzer> ret = new ArrayList<Analyzer>();
     388  10
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     389  9
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     390  9
                 ret.addAll(analyzerList);
     391  
             }
     392  1
             return ret;
     393  
         }
     394  
     
     395  
         /**
     396  
          * Checks all analyzers to see if an extension is supported.
     397  
          *
     398  
          * @param ext a file extension
     399  
          * @return true or false depending on whether or not the file extension is
     400  
          * supported
     401  
          */
     402  
         public boolean supportsExtension(String ext) {
     403  143
             if (ext == null) {
     404  8
                 return false;
     405  
             }
     406  1267
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     407  1142
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     408  1142
                 for (Analyzer a : analyzerList) {
     409  1274
                     if (a.getSupportedExtensions() != null && a.supportsExtension(ext)) {
     410  10
                         return true;
     411  
                     }
     412  
                 }
     413  
             }
     414  125
             return false;
     415  
         }
     416  
     
     417  
         /**
     418  
          * Checks the CPE Index to ensure documents exists. If none exist a
     419  
          * NoDataException is thrown.
     420  
          *
     421  
          * @throws NoDataException thrown if no data exists in the CPE Index
     422  
          */
     423  
         private void ensureDataExists() throws NoDataException {
     424  3
             final CpeMemoryIndex cpe = CpeMemoryIndex.getInstance();
     425  3
             final CveDB cve = new CveDB();
     426  
     
     427  
             try {
     428  3
                 cve.open();
     429  3
                 cpe.open(cve);
     430  0
             } catch (IndexException ex) {
     431  0
                 throw new NoDataException(ex);
     432  0
             } catch (IOException ex) {
     433  0
                 throw new NoDataException(ex);
     434  0
             } catch (SQLException ex) {
     435  0
                 throw new NoDataException(ex);
     436  0
             } catch (DatabaseException ex) {
     437  0
                 throw new NoDataException(ex);
     438  0
             } catch (ClassNotFoundException ex) {
     439  0
                 throw new NoDataException(ex);
     440  
             } finally {
     441  3
                 cve.close();
     442  3
             }
     443  3
             if (cpe.numDocs() <= 0) {
     444  0
                 cpe.close();
     445  0
                 throw new NoDataException();
     446  
             }
     447  3
         }
     448  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html new file mode 100644 index 000000000..d2e798a30 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AbstractAnalyzer
    100%
    6/6
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.util.Collections;
     22  
     import java.util.HashSet;
     23  
     import java.util.Set;
     24  
     
     25  
     /**
     26  
      *
     27  
      * @author Jeremy Long (jeremy.long@owasp.org)
     28  
      */
     29  56
     public abstract class AbstractAnalyzer implements Analyzer {
     30  
     
     31  
         /**
     32  
          * Utility method to help in the creation of the extensions set. This
     33  
          * constructs a new Set that can be used in a final static
     34  
          * declaration.<br/><br/>
     35  
          *
     36  
          * This implementation was copied from
     37  
          * http://stackoverflow.com/questions/2041778/initialize-java-hashset-values-by-construction
     38  
          *
     39  
          * @param strings a list of strings to add to the set.
     40  
          * @return a Set of strings.
     41  
          */
     42  
         protected static Set<String> newHashSet(String... strings) {
     43  5
             final Set<String> set = new HashSet<String>();
     44  
     
     45  5
             Collections.addAll(set, strings);
     46  5
             return set;
     47  
         }
     48  
     
     49  
         /**
     50  
          * The initialize method does nothing for this Analyzer.
     51  
          *
     52  
          * @throws Exception thrown if there is an exception
     53  
          */
     54  
         @Override
     55  
         public void initialize() throws Exception {
     56  
             //do nothing
     57  19
         }
     58  
     
     59  
         /**
     60  
          * The close method does nothing for this Analyzer.
     61  
          *
     62  
          * @throws Exception thrown if there is an exception
     63  
          */
     64  
         @Override
     65  
         public void close() throws Exception {
     66  
             //do nothing
     67  19
         }
     68  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..36876ffca --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html @@ -0,0 +1,233 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AbstractSuppressionAnalyzer
    47%
    10/21
    50%
    1/2
    1.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.File;
     22  
     import java.util.List;
     23  
     import java.util.Set;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.Logger;
     26  
     import org.owasp.dependencycheck.suppression.SuppressionParseException;
     27  
     import org.owasp.dependencycheck.suppression.SuppressionParser;
     28  
     import org.owasp.dependencycheck.suppression.SuppressionRule;
     29  
     import org.owasp.dependencycheck.utils.Settings;
     30  
     
     31  
     /**
     32  
      * Abstract base suppression analyzer that contains methods for parsing the
     33  
      * suppression xml file.
     34  
      *
     35  
      * @author Jeremy Long (jeremy.long@owasp.org)
     36  
      */
     37  2
     public abstract class AbstractSuppressionAnalyzer extends AbstractAnalyzer {
     38  
     
     39  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     40  
         /**
     41  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     42  
          *
     43  
          * @return a list of file EXTENSIONS supported by this analyzer.
     44  
          */
     45  
         public Set<String> getSupportedExtensions() {
     46  264
             return null;
     47  
         }
     48  
     
     49  
         /**
     50  
          * Returns whether or not this analyzer can process the given extension.
     51  
          *
     52  
          * @param extension the file extension to test for support.
     53  
          * @return whether or not the specified file extension is supported by this
     54  
          * analyzer.
     55  
          */
     56  
         @Override
     57  
         public boolean supportsExtension(String extension) {
     58  18
             return true;
     59  
         }
     60  
     
     61  
         //</editor-fold>
     62  
         /**
     63  
          * The initialize method loads the suppression XML file.
     64  
          *
     65  
          * @throws Exception thrown if there is an exception
     66  
          */
     67  
         @Override
     68  
         public void initialize() throws Exception {
     69  6
             super.initialize();
     70  6
             loadSuppressionData();
     71  6
         }
     72  
         /**
     73  
          * The list of suppression rules
     74  
          */
     75  
         private List<SuppressionRule> rules;
     76  
     
     77  
         /**
     78  
          * Get the value of rules.
     79  
          *
     80  
          * @return the value of rules
     81  
          */
     82  
         public List<SuppressionRule> getRules() {
     83  18
             return rules;
     84  
         }
     85  
     
     86  
         /**
     87  
          * Set the value of rules.
     88  
          *
     89  
          * @param rules new value of rules
     90  
          */
     91  
         public void setRules(List<SuppressionRule> rules) {
     92  0
             this.rules = rules;
     93  0
         }
     94  
     
     95  
         /**
     96  
          * Loads the suppression rules file.
     97  
          *
     98  
          * @throws SuppressionParseException thrown if the XML cannot be parsed.
     99  
          */
     100  
         private void loadSuppressionData() throws SuppressionParseException {
     101  6
             final File file = Settings.getFile(Settings.KEYS.SUPPRESSION_FILE);
     102  6
             if (file != null) {
     103  0
                 final SuppressionParser parser = new SuppressionParser();
     104  
                 try {
     105  0
                     rules = parser.parseSuppressionRules(file);
     106  0
                 } catch (SuppressionParseException ex) {
     107  0
                     final String msg = String.format("Unable to parse suppression xml file '%s'", file.getPath());
     108  0
                     Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, msg);
     109  0
                     Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, ex.getMessage());
     110  0
                     Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.FINE, null, ex);
     111  0
                     throw ex;
     112  0
                 }
     113  
             }
     114  6
         }
     115  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html new file mode 100644 index 000000000..d590a1165 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html @@ -0,0 +1,150 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.AnalysisException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AnalysisException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     /**
     22  
      * An exception thrown when the analysis of a dependency fails.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class AnalysisException extends Exception {
     27  
     
     28  
         /**
     29  
          * The serial version UID for serialization.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Creates a new AnalysisException.
     35  
          */
     36  
         public AnalysisException() {
     37  0
             super();
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Creates a new AnalysisException.
     42  
          *
     43  
          * @param msg a message for the exception.
     44  
          */
     45  
         public AnalysisException(String msg) {
     46  0
             super(msg);
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Creates a new AnalysisException.
     51  
          *
     52  
          * @param ex the cause of the failure.
     53  
          */
     54  
         public AnalysisException(Throwable ex) {
     55  0
             super(ex);
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Creates a new AnalysisException.
     60  
          *
     61  
          * @param msg a message for the exception.
     62  
          * @param ex the cause of the failure.
     63  
          */
     64  
         public AnalysisException(String msg, Throwable ex) {
     65  0
             super(msg, ex);
     66  0
         }
     67  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html new file mode 100644 index 000000000..6a8fab6f0 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html @@ -0,0 +1,142 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.AnalysisPhase
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AnalysisPhase
    100%
    10/10
    N/A
    0
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     /**
     22  
      * An enumeration defining the phases of analysis.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  162
     public enum AnalysisPhase {
     27  
     
     28  
         /**
     29  
          * Initialization phase.
     30  
          */
     31  1
         INITIAL,
     32  
         /**
     33  
          * Information collection phase.
     34  
          */
     35  1
         INFORMATION_COLLECTION,
     36  
         /**
     37  
          * Pre identifier analysis phase.
     38  
          */
     39  1
         PRE_IDENTIFIER_ANALYSIS,
     40  
         /**
     41  
          * Identifier analysis phase.
     42  
          */
     43  1
         IDENTIFIER_ANALYSIS,
     44  
         /**
     45  
          * Post identifier analysis phase.
     46  
          */
     47  1
         POST_IDENTIFIER_ANALYSIS,
     48  
         /**
     49  
          * Pre finding analysis phase.
     50  
          */
     51  1
         PRE_FINDING_ANALYSIS,
     52  
         /**
     53  
          * Finding analysis phase.
     54  
          */
     55  1
         FINDING_ANALYSIS,
     56  
         /**
     57  
          * Post analysis phase.
     58  
          */
     59  1
         POST_FINDING_ANALYSIS,
     60  
         /**
     61  
          * The final analysis phase.
     62  
          */
     63  1
         FINAL
     64  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html new file mode 100644 index 000000000..c0a3f03e9 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html @@ -0,0 +1,228 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.Analyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Analyzer
    N/A
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.util.Set;
     22  
     import org.owasp.dependencycheck.Engine;
     23  
     import org.owasp.dependencycheck.dependency.Dependency;
     24  
     
     25  
     /**
     26  
      * An interface that defines an Analyzer that is used to identify Dependencies.
     27  
      * An analyzer will collect information about the dependency in the form of
     28  
      * Evidence.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  
     public interface Analyzer {
     33  
     
     34  
         /**
     35  
          * Analyzes the given dependency. The analysis could be anything from
     36  
          * identifying an Identifier for the dependency, to finding vulnerabilities,
     37  
          * etc. Additionally, if the analyzer collects enough information to add a
     38  
          * description or license information for the dependency it should be added.
     39  
          *
     40  
          * @param dependency a dependency to analyze.
     41  
          * @param engine the engine that is scanning the dependencies - this is
     42  
          * useful if we need to check other dependencies
     43  
          * @throws AnalysisException is thrown if there is an error analyzing the
     44  
          * dependency file
     45  
          */
     46  
         void analyze(Dependency dependency, Engine engine) throws AnalysisException;
     47  
     
     48  
         /**
     49  
          * <p>Returns a list of supported file extensions. An example would be an
     50  
          * analyzer that inspected java jar files. The getSupportedExtensions
     51  
          * function would return a set with a single element "jar".</p>
     52  
          *
     53  
          * <p><b>Note:</b> when implementing this the extensions returned MUST be
     54  
          * lowercase.</p>
     55  
          *
     56  
          * @return The file extensions supported by this analyzer.
     57  
          *
     58  
          * <p>If the analyzer returns null it will not cause additional files to be
     59  
          * analyzed but will be executed against every file loaded</p>
     60  
          */
     61  
         Set<String> getSupportedExtensions();
     62  
     
     63  
         /**
     64  
          * Returns the name of the analyzer.
     65  
          *
     66  
          * @return the name of the analyzer.
     67  
          */
     68  
         String getName();
     69  
     
     70  
         /**
     71  
          * Returns whether or not this analyzer can process the given extension.
     72  
          *
     73  
          * @param extension the file extension to test for support.
     74  
          * @return whether or not the specified file extension is supported by this
     75  
          * analyzer.
     76  
          */
     77  
         boolean supportsExtension(String extension);
     78  
     
     79  
         /**
     80  
          * Returns the phase that the analyzer is intended to run in.
     81  
          *
     82  
          * @return the phase that the analyzer is intended to run in.
     83  
          */
     84  
         AnalysisPhase getAnalysisPhase();
     85  
     
     86  
         /**
     87  
          * The initialize method is called (once) prior to the analyze method being
     88  
          * called on all of the dependencies.
     89  
          *
     90  
          * @throws Exception is thrown if an exception occurs initializing the
     91  
          * analyzer.
     92  
          */
     93  
         void initialize() throws Exception;
     94  
     
     95  
         /**
     96  
          * The close method is called after all of the dependencies have been
     97  
          * analyzed.
     98  
          *
     99  
          * @throws Exception is thrown if an exception occurs closing the analyzer.
     100  
          */
     101  
         void close() throws Exception;
     102  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html new file mode 100644 index 000000000..995e716ad --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html @@ -0,0 +1,149 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.AnalyzerService
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AnalyzerService
    100%
    7/7
    100%
    2/2
    1.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.util.Iterator;
     22  
     import java.util.ServiceLoader;
     23  
     
     24  
     /**
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public final class AnalyzerService {
     29  
     
     30  
         /**
     31  
          * The analyzer service singleton.
     32  
          */
     33  
         private static AnalyzerService service;
     34  
         /**
     35  
          * The service loader for analyzers.
     36  
          */
     37  
         private final ServiceLoader<Analyzer> loader;
     38  
     
     39  
         /**
     40  
          * Creates a new instance of AnalyzerService.
     41  
          */
     42  1
         private AnalyzerService() {
     43  1
             loader = ServiceLoader.load(Analyzer.class);
     44  1
         }
     45  
     
     46  
         /**
     47  
          * Retrieve the singleton instance of AnalyzerService.
     48  
          *
     49  
          * @return a singleton AnalyzerService.
     50  
          */
     51  
         public static synchronized AnalyzerService getInstance() {
     52  7
             if (service == null) {
     53  1
                 service = new AnalyzerService();
     54  
             }
     55  7
             return service;
     56  
         }
     57  
     
     58  
         /**
     59  
          * Returns an Iterator for all instances of the Analyzer interface.
     60  
          *
     61  
          * @return an iterator of Analyzers.
     62  
          */
     63  
         public Iterator<Analyzer> getAnalyzers() {
     64  7
             return loader.iterator();
     65  
         }
     66  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html new file mode 100644 index 000000000..30e36d56b --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html @@ -0,0 +1,666 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.ArchiveAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ArchiveAnalyzer
    65%
    98/150
    69%
    43/62
    6.273
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.BufferedInputStream;
     22  
     import java.io.BufferedOutputStream;
     23  
     import java.io.File;
     24  
     import java.io.FileInputStream;
     25  
     import java.io.FileNotFoundException;
     26  
     import java.io.FileOutputStream;
     27  
     import java.io.IOException;
     28  
     import java.util.ArrayList;
     29  
     import java.util.Collections;
     30  
     import java.util.HashSet;
     31  
     import java.util.List;
     32  
     import java.util.Set;
     33  
     import java.util.logging.Level;
     34  
     import java.util.logging.Logger;
     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  11
     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  1
         private static int dirCount = 0;
     64  
         /**
     65  
          * The parent directory for the individual directories per archive.
     66  
          */
     67  11
         private File tempFileLocation = null;
     68  
         /**
     69  
          * The max scan depth that the analyzer will recursively extract nested
     70  
          * archives.
     71  
          */
     72  1
         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  11
         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  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL;
     86  
         /**
     87  
          * The set of file extensions supported by this analyzer.
     88  
          */
     89  1
         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  149
             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  10
             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  154
             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  7
             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  9
             final File baseDir = Settings.getTempDirectory();
     139  9
             if (!baseDir.exists()) {
     140  0
                 if (!baseDir.mkdirs()) {
     141  0
                     final String msg = String.format("Unable to make a temporary folder '%s'", baseDir.getPath());
     142  0
                     throw new AnalysisException(msg);
     143  
                 }
     144  
             }
     145  9
             tempFileLocation = File.createTempFile("check", "tmp", baseDir);
     146  9
             if (!tempFileLocation.delete()) {
     147  0
                 final String msg = String.format("Unable to delete temporary file '%s'.", tempFileLocation.getAbsolutePath());
     148  0
                 throw new AnalysisException(msg);
     149  
             }
     150  9
             if (!tempFileLocation.mkdirs()) {
     151  0
                 final String msg = String.format("Unable to create directory '%s'.", tempFileLocation.getAbsolutePath());
     152  0
                 throw new AnalysisException(msg);
     153  
             }
     154  9
         }
     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  9
             if (tempFileLocation != null && tempFileLocation.exists()) {
     165  9
                 FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), true);
     166  
             }
     167  9
         }
     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  8
             final File f = new File(dependency.getActualFilePath());
     181  8
             final File tmpDir = getNextTempDirectory();
     182  8
             extractFiles(f, tmpDir, engine);
     183  
     
     184  
             //make a copy
     185  8
             final List<Dependency> dependencies = new ArrayList<Dependency>(engine.getDependencies());
     186  8
             engine.scan(tmpDir);
     187  8
             final List<Dependency> newDependencies = engine.getDependencies();
     188  8
             if (dependencies.size() != newDependencies.size()) {
     189  
                 //get the new dependencies
     190  6
                 final Set<Dependency> dependencySet = new HashSet<Dependency>();
     191  6
                 dependencySet.addAll(newDependencies);
     192  6
                 dependencySet.removeAll(dependencies);
     193  
     
     194  6
                 for (Dependency d : dependencySet) {
     195  
                     //fix the dependency's display name and path
     196  10
                     final String displayPath = String.format("%s%s",
     197  
                             dependency.getFilePath(),
     198  
                             d.getActualFilePath().substring(tmpDir.getAbsolutePath().length()));
     199  10
                     final String displayName = String.format("%s%s%s",
     200  
                             dependency.getFileName(),
     201  
                             File.separator,
     202  
                             d.getFileName());
     203  10
                     d.setFilePath(displayPath);
     204  10
                     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  10
                     if (this.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) {
     210  3
                         scanDepth += 1;
     211  3
                         analyze(d, engine);
     212  3
                         scanDepth -= 1;
     213  
                     }
     214  10
                 }
     215  
             }
     216  8
             Collections.sort(engine.getDependencies());
     217  8
         }
     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  8
             dirCount += 1;
     227  8
             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  8
             if (directory.exists()) {
     230  0
                 return getNextTempDirectory();
     231  
             }
     232  8
             if (!directory.mkdirs()) {
     233  0
                 final String msg = String.format("Unable to create temp directory '%s'.", directory.getAbsolutePath());
     234  0
                 throw new AnalysisException(msg);
     235  
             }
     236  8
             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  8
             if (archive == null || destination == null) {
     249  0
                 return;
     250  
             }
     251  
     
     252  8
             FileInputStream fis = null;
     253  
             try {
     254  8
                 fis = new FileInputStream(archive);
     255  0
             } catch (FileNotFoundException ex) {
     256  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.INFO, null, ex);
     257  0
                 throw new AnalysisException("Archive file was not found.", ex);
     258  8
             }
     259  8
             final String archiveExt = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(archive.getName()).toLowerCase();
     260  
             try {
     261  8
                 if ("zip".equals(archiveExt) || "war".equals(archiveExt) || "ear".equals(archiveExt)) {
     262  3
                     extractArchive(new ZipArchiveInputStream(new BufferedInputStream(fis)), destination, engine);
     263  5
                 } else if ("tar".equals(archiveExt)) {
     264  3
                     extractArchive(new TarArchiveInputStream(new BufferedInputStream(fis)), destination, engine);
     265  2
                 } else if ("gz".equals(archiveExt) || "tgz".equals(archiveExt)) {
     266  2
                     final String uncompressedName = GzipUtils.getUncompressedFilename(archive.getName());
     267  2
                     final String uncompressedExt = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(uncompressedName).toLowerCase();
     268  2
                     if (engine.supportsExtension(uncompressedExt)) {
     269  2
                         decompressFile(new GzipCompressorInputStream(new BufferedInputStream(fis)), new File(destination, uncompressedName));
     270  
                     }
     271  
                 }
     272  0
             } catch (ArchiveExtractionException ex) {
     273  0
                 final String msg = String.format("Exception extracting archive '%s'.", archive.getName());
     274  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, msg);
     275  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
     276  0
             } catch (IOException ex) {
     277  0
                 final String msg = String.format("Exception reading archive '%s'.", archive.getName());
     278  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, msg);
     279  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
     280  
             } finally {
     281  0
                 try {
     282  8
                     fis.close();
     283  0
                 } catch (IOException ex) {
     284  0
                     Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     285  8
                 }
     286  0
             }
     287  8
         }
     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  172
                 while ((entry = input.getNextEntry()) != null) {
     302  166
                     if (entry.isDirectory()) {
     303  25
                         final File d = new File(destination, entry.getName());
     304  25
                         if (!d.exists()) {
     305  25
                             if (!d.mkdirs()) {
     306  0
                                 final String msg = String.format("Unable to create '%s'.", d.getAbsolutePath());
     307  0
                                 throw new AnalysisException(msg);
     308  
                             }
     309  
                         }
     310  25
                     } else {
     311  141
                         final File file = new File(destination, entry.getName());
     312  141
                         final String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName());
     313  141
                         if (engine.supportsExtension(ext)) {
     314  8
                             BufferedOutputStream bos = null;
     315  
                             FileOutputStream fos;
     316  
                             try {
     317  8
                                 fos = new FileOutputStream(file);
     318  8
                                 bos = new BufferedOutputStream(fos, BUFFER_SIZE);
     319  
                                 int count;
     320  8
                                 final byte data[] = new byte[BUFFER_SIZE];
     321  1709
                                 while ((count = input.read(data, 0, BUFFER_SIZE)) != -1) {
     322  1701
                                     bos.write(data, 0, count);
     323  
                                 }
     324  8
                                 bos.flush();
     325  0
                             } catch (FileNotFoundException ex) {
     326  0
                                 Logger.getLogger(ArchiveAnalyzer.class
     327  
                                         .getName()).log(Level.FINE, null, ex);
     328  0
                                 final String msg = String.format("Unable to find file '%s'.", file.getName());
     329  0
                                 throw new AnalysisException(msg, ex);
     330  0
                             } catch (IOException ex) {
     331  0
                                 Logger.getLogger(ArchiveAnalyzer.class
     332  
                                         .getName()).log(Level.FINE, null, ex);
     333  0
                                 final String msg = String.format("IO Exception while parsing file '%s'.", file.getName());
     334  0
                                 throw new AnalysisException(msg, ex);
     335  
                             } finally {
     336  8
                                 if (bos != null) {
     337  
                                     try {
     338  8
                                         bos.close();
     339  0
                                     } catch (IOException ex) {
     340  0
                                         Logger.getLogger(ArchiveAnalyzer.class
     341  
                                                 .getName()).log(Level.FINEST, null, ex);
     342  8
                                     }
     343  
                                 }
     344  
                             }
     345  
                         }
     346  141
                     }
     347  
                 }
     348  0
             } catch (IOException ex) {
     349  0
                 throw new ArchiveExtractionException(ex);
     350  0
             } catch (Throwable ex) {
     351  0
                 throw new ArchiveExtractionException(ex);
     352  
             } finally {
     353  6
                 if (input != null) {
     354  
                     try {
     355  6
                         input.close();
     356  0
                     } catch (IOException ex) {
     357  0
                         Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     358  6
                     }
     359  
                 }
     360  
             }
     361  6
         }
     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  2
             FileOutputStream out = null;
     373  
             try {
     374  2
                 out = new FileOutputStream(outputFile);
     375  2
                 final byte[] buffer = new byte[BUFFER_SIZE];
     376  2
                 int n = 0;
     377  272
                 while (-1 != (n = inputStream.read(buffer))) {
     378  270
                     out.write(buffer, 0, n);
     379  
                 }
     380  0
             } catch (FileNotFoundException ex) {
     381  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
     382  0
                 throw new ArchiveExtractionException(ex);
     383  0
             } catch (IOException ex) {
     384  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
     385  0
                 throw new ArchiveExtractionException(ex);
     386  
             } finally {
     387  2
                 if (out != null) {
     388  
                     try {
     389  2
                         out.close();
     390  0
                     } catch (IOException ex) {
     391  0
                         Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     392  2
                     }
     393  
                 }
     394  
             }
     395  2
         }
     396  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html new file mode 100644 index 000000000..480bdae0a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html @@ -0,0 +1,150 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.ArchiveExtractionException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ArchiveExtractionException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     /**
     22  
      * An exception thrown when files in an archive cannot be extracted.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class ArchiveExtractionException extends Exception {
     27  
     
     28  
         /**
     29  
          * The serial version UID for serialization.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Creates a new ArchiveExtractionException.
     35  
          */
     36  
         public ArchiveExtractionException() {
     37  0
             super();
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Creates a new ArchiveExtractionException.
     42  
          *
     43  
          * @param msg a message for the exception.
     44  
          */
     45  
         public ArchiveExtractionException(String msg) {
     46  0
             super(msg);
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Creates a new ArchiveExtractionException.
     51  
          *
     52  
          * @param ex the cause of the failure.
     53  
          */
     54  
         public ArchiveExtractionException(Throwable ex) {
     55  0
             super(ex);
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Creates a new ArchiveExtractionException.
     60  
          *
     61  
          * @param msg a message for the exception.
     62  
          * @param ex the cause of the failure.
     63  
          */
     64  
         public ArchiveExtractionException(String msg, Throwable ex) {
     65  0
             super(msg, ex);
     66  0
         }
     67  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html new file mode 100644 index 000000000..e89da7f3a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html @@ -0,0 +1,1364 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.CPEAnalyzer
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CPEAnalyzer
    88%
    172/195
    84%
    103/122
    4.267
    CPEAnalyzer$IdentifierConfidence
    100%
    3/3
    N/A
    4.267
    CPEAnalyzer$IdentifierMatch
    38%
    15/39
    16%
    4/24
    4.267
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.io.UnsupportedEncodingException;
     23  
     import java.net.URLEncoder;
     24  
     import java.sql.SQLException;
     25  
     import java.util.ArrayList;
     26  
     import java.util.Collections;
     27  
     import java.util.List;
     28  
     import java.util.Set;
     29  
     import java.util.StringTokenizer;
     30  
     import java.util.logging.Level;
     31  
     import java.util.logging.Logger;
     32  
     import org.apache.lucene.document.Document;
     33  
     import org.apache.lucene.index.CorruptIndexException;
     34  
     import org.apache.lucene.queryparser.classic.ParseException;
     35  
     import org.apache.lucene.search.ScoreDoc;
     36  
     import org.apache.lucene.search.TopDocs;
     37  
     import org.owasp.dependencycheck.Engine;
     38  
     import org.owasp.dependencycheck.data.lucene.LuceneUtils;
     39  
     import org.owasp.dependencycheck.dependency.Dependency;
     40  
     import org.owasp.dependencycheck.dependency.Evidence;
     41  
     import org.owasp.dependencycheck.dependency.Evidence.Confidence;
     42  
     import org.owasp.dependencycheck.dependency.EvidenceCollection;
     43  
     import org.owasp.dependencycheck.data.cpe.CpeMemoryIndex;
     44  
     import org.owasp.dependencycheck.data.cpe.Fields;
     45  
     import org.owasp.dependencycheck.data.cpe.IndexEntry;
     46  
     import org.owasp.dependencycheck.data.cpe.IndexException;
     47  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     48  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     49  
     import org.owasp.dependencycheck.dependency.Identifier;
     50  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     51  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     52  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     53  
     
     54  
     /**
     55  
      * CPEAnalyzer is a utility class that takes a project dependency and attempts
     56  
      * to discern if there is an associated CPE. It uses the evidence contained
     57  
      * within the dependency to search the Lucene index.
     58  
      *
     59  
      * @author Jeremy Long (jeremy.long@owasp.org)
     60  
      */
     61  10
     public class CPEAnalyzer implements Analyzer {
     62  
     
     63  
         /**
     64  
          * The maximum number of query results to return.
     65  
          */
     66  
         static final int MAX_QUERY_RESULTS = 25;
     67  
         /**
     68  
          * The weighting boost to give terms when constructing the Lucene query.
     69  
          */
     70  
         static final String WEIGHTING_BOOST = "^5";
     71  
         /**
     72  
          * A string representation of a regular expression defining characters
     73  
          * utilized within the CPE Names.
     74  
          */
     75  
         static final String CLEANSE_CHARACTER_RX = "[^A-Za-z0-9 ._-]";
     76  
         /**
     77  
          * A string representation of a regular expression used to remove all but
     78  
          * alpha characters.
     79  
          */
     80  
         static final String CLEANSE_NONALPHA_RX = "[^A-Za-z]*";
     81  
         /**
     82  
          * The additional size to add to a new StringBuilder to account for extra
     83  
          * data that will be written into the string.
     84  
          */
     85  
         static final int STRING_BUILDER_BUFFER = 20;
     86  
         /**
     87  
          * The CPE in memory index.
     88  
          */
     89  
         private CpeMemoryIndex cpe;
     90  
         /**
     91  
          * The CVE Database.
     92  
          */
     93  
         private CveDB cve;
     94  
     
     95  
         /**
     96  
          * Opens the data source.
     97  
          *
     98  
          * @throws IOException when the Lucene directory to be queried does not
     99  
          * exist or is corrupt.
     100  
          * @throws DatabaseException when the database throws an exception. This
     101  
          * usually occurs when the database is in use by another process.
     102  
          */
     103  
         public void open() throws IOException, DatabaseException {
     104  11
             cve = new CveDB();
     105  
             try {
     106  11
                 cve.open();
     107  0
             } catch (SQLException ex) {
     108  0
                 Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
     109  0
                 throw new DatabaseException("Unable to open the cve db", ex);
     110  0
             } catch (ClassNotFoundException ex) {
     111  0
                 Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
     112  0
                 throw new DatabaseException("Unable to open the cve db", ex);
     113  11
             }
     114  11
             cpe = CpeMemoryIndex.getInstance();
     115  
             try {
     116  11
                 cpe.open(cve);
     117  0
             } catch (IndexException ex) {
     118  0
                 Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.SEVERE, null, ex);
     119  0
                 throw new DatabaseException(ex);
     120  11
             }
     121  11
         }
     122  
     
     123  
         /**
     124  
          * Closes the data sources.
     125  
          */
     126  
         @Override
     127  
         public void close() {
     128  11
             if (cpe != null) {
     129  11
                 cpe.close();
     130  
             }
     131  11
             if (cve != null) {
     132  11
                 cve.close();
     133  
             }
     134  11
         }
     135  
     
     136  
         /**
     137  
          * Searches the data store of CPE entries, trying to identify the CPE for
     138  
          * the given dependency based on the evidence contained within. The
     139  
          * dependency passed in is updated with any identified CPE values.
     140  
          *
     141  
          * @param dependency the dependency to search for CPE entries on.
     142  
          * @throws CorruptIndexException is thrown when the Lucene index is corrupt.
     143  
          * @throws IOException is thrown when an IOException occurs.
     144  
          * @throws ParseException is thrown when the Lucene query cannot be parsed.
     145  
          */
     146  
         protected void determineCPE(Dependency dependency) throws CorruptIndexException, IOException, ParseException {
     147  19
             Confidence vendorConf = Confidence.HIGHEST;
     148  19
             Confidence productConf = Confidence.HIGHEST;
     149  
     
     150  19
             String vendors = addEvidenceWithoutDuplicateTerms("", dependency.getVendorEvidence(), vendorConf);
     151  19
             String products = addEvidenceWithoutDuplicateTerms("", dependency.getProductEvidence(), productConf);
     152  
     
     153  19
             int ctr = 0;
     154  
             do {
     155  76
                 if (!vendors.isEmpty() && !products.isEmpty()) {
     156  72
                     final List<IndexEntry> entries = searchCPE(vendors, products, dependency.getProductEvidence().getWeighting(),
     157  
                             dependency.getVendorEvidence().getWeighting());
     158  
     
     159  72
                     for (IndexEntry e : entries) {
     160  724
                         if (verifyEntry(e, dependency)) {
     161  71
                             final String vendor = e.getVendor();
     162  71
                             final String product = e.getProduct();
     163  71
                             determineIdentifiers(dependency, vendor, product);
     164  724
                         }
     165  
                     }
     166  
                 }
     167  76
                 vendorConf = reduceConfidence(vendorConf);
     168  76
                 if (dependency.getVendorEvidence().contains(vendorConf)) {
     169  61
                     vendors = addEvidenceWithoutDuplicateTerms(vendors, dependency.getVendorEvidence(), vendorConf);
     170  
                 }
     171  76
                 productConf = reduceConfidence(productConf);
     172  76
                 if (dependency.getProductEvidence().contains(productConf)) {
     173  64
                     products = addEvidenceWithoutDuplicateTerms(products, dependency.getProductEvidence(), productConf);
     174  
                 }
     175  76
             } while ((++ctr) < 4);
     176  19
         }
     177  
     
     178  
         /**
     179  
          * Returns the text created by concatenating the text and the values from
     180  
          * the EvidenceCollection (filtered for a specific confidence). This
     181  
          * attempts to prevent duplicate terms from being added.<br/<br/> Note, if
     182  
          * the evidence is longer then 200 characters it will be truncated.
     183  
          *
     184  
          * @param text the base text.
     185  
          * @param ec an EvidenceCollection
     186  
          * @param confidenceFilter a Confidence level to filter the evidence by.
     187  
          * @return the new evidence text
     188  
          */
     189  
         private String addEvidenceWithoutDuplicateTerms(final String text, final EvidenceCollection ec, Confidence confidenceFilter) {
     190  163
             final String txt = (text == null) ? "" : text;
     191  163
             final StringBuilder sb = new StringBuilder(txt.length() + (20 * ec.size()));
     192  163
             sb.append(' ').append(txt).append(' ');
     193  163
             for (Evidence e : ec.iterator(confidenceFilter)) {
     194  355
                 String value = e.getValue();
     195  
     
     196  
                 //hack to get around the fact that lucene does a really good job of recognizing domains and not
     197  
                 // splitting them. TODO - put together a better lucene analyzer specific to the domain.
     198  355
                 if (value.startsWith("http://")) {
     199  32
                     value = value.substring(7).replaceAll("\\.", " ");
     200  
                 }
     201  355
                 if (value.startsWith("https://")) {
     202  0
                     value = value.substring(8).replaceAll("\\.", " ");
     203  
                 }
     204  355
                 if (sb.indexOf(" " + value + " ") < 0) {
     205  222
                     sb.append(value).append(' ');
     206  
                 }
     207  355
             }
     208  163
             return sb.toString().trim();
     209  
         }
     210  
     
     211  
         /**
     212  
          * Reduces the given confidence by one level. This returns LOW if the
     213  
          * confidence passed in is not HIGH.
     214  
          *
     215  
          * @param c the confidence to reduce.
     216  
          * @return One less then the confidence passed in.
     217  
          */
     218  
         private Confidence reduceConfidence(final Confidence c) {
     219  152
             if (c == Confidence.HIGHEST) {
     220  38
                 return Confidence.HIGH;
     221  114
             } else if (c == Confidence.HIGH) {
     222  38
                 return Confidence.MEDIUM;
     223  
             } else {
     224  76
                 return Confidence.LOW;
     225  
             }
     226  
         }
     227  
     
     228  
         /**
     229  
          * <p>Searches the Lucene CPE index to identify possible CPE entries
     230  
          * associated with the supplied vendor, product, and version.</p>
     231  
          *
     232  
          * <p>If either the vendorWeightings or productWeightings lists have been
     233  
          * populated this data is used to add weighting factors to the search.</p>
     234  
          *
     235  
          * @param vendor the text used to search the vendor field
     236  
          * @param product the text used to search the product field
     237  
          * @param vendorWeightings a list of strings to use to add weighting factors
     238  
          * to the vendor field
     239  
          * @param productWeightings Adds a list of strings that will be used to add
     240  
          * weighting factors to the product search
     241  
          * @return a list of possible CPE values
     242  
          * @throws CorruptIndexException when the Lucene index is corrupt
     243  
          * @throws IOException when the Lucene index is not found
     244  
          * @throws ParseException when the generated query is not valid
     245  
          */
     246  
         protected List<IndexEntry> searchCPE(String vendor, String product,
     247  
                 Set<String> vendorWeightings, Set<String> productWeightings)
     248  
                 throws CorruptIndexException, IOException, ParseException {
     249  73
             final ArrayList<IndexEntry> ret = new ArrayList<IndexEntry>(MAX_QUERY_RESULTS);
     250  
     
     251  73
             final String searchString = buildSearch(vendor, product, vendorWeightings, productWeightings);
     252  73
             if (searchString == null) {
     253  0
                 return ret;
     254  
             }
     255  
     
     256  73
             final TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);
     257  1214
             for (ScoreDoc d : docs.scoreDocs) {
     258  1141
                 if (d.score >= 0.08) {
     259  745
                     final Document doc = cpe.getDocument(d.doc);
     260  745
                     final IndexEntry entry = new IndexEntry();
     261  745
                     entry.setVendor(doc.get(Fields.VENDOR));
     262  745
                     entry.setProduct(doc.get(Fields.PRODUCT));
     263  
     //                if (d.score < 0.08) {
     264  
     //                    System.out.print(entry.getVendor());
     265  
     //                    System.out.print(":");
     266  
     //                    System.out.print(entry.getProduct());
     267  
     //                    System.out.print(":");
     268  
     //                    System.out.println(d.score);
     269  
     //                }
     270  745
                     entry.setSearchScore(d.score);
     271  745
                     if (!ret.contains(entry)) {
     272  745
                         ret.add(entry);
     273  
                     }
     274  
                 }
     275  
             }
     276  73
             return ret;
     277  
         }
     278  
     
     279  
         /**
     280  
          * <p>Builds a Lucene search string by properly escaping data and
     281  
          * constructing a valid search query.</p>
     282  
          *
     283  
          * <p>If either the possibleVendor or possibleProducts lists have been
     284  
          * populated this data is used to add weighting factors to the search string
     285  
          * generated.</p>
     286  
          *
     287  
          * @param vendor text to search the vendor field
     288  
          * @param product text to search the product field
     289  
          * @param vendorWeighting a list of strings to apply to the vendor to boost
     290  
          * the terms weight
     291  
          * @param productWeightings a list of strings to apply to the product to
     292  
          * boost the terms weight
     293  
          * @return the Lucene query
     294  
          */
     295  
         protected String buildSearch(String vendor, String product,
     296  
                 Set<String> vendorWeighting, Set<String> productWeightings) {
     297  77
             final String v = vendor; //.replaceAll("[^\\w\\d]", " ");
     298  77
             final String p = product; //.replaceAll("[^\\w\\d]", " ");
     299  77
             final StringBuilder sb = new StringBuilder(v.length() + p.length()
     300  
                     + Fields.PRODUCT.length() + Fields.VENDOR.length() + STRING_BUILDER_BUFFER);
     301  
     
     302  77
             if (!appendWeightedSearch(sb, Fields.PRODUCT, p, productWeightings)) {
     303  0
                 return null;
     304  
             }
     305  77
             sb.append(" AND ");
     306  77
             if (!appendWeightedSearch(sb, Fields.VENDOR, v, vendorWeighting)) {
     307  0
                 return null;
     308  
             }
     309  77
             return sb.toString();
     310  
         }
     311  
     
     312  
         /**
     313  
          * This method constructs a Lucene query for a given field. The searchText
     314  
          * is split into separate words and if the word is within the list of
     315  
          * weighted words then an additional weighting is applied to the term as it
     316  
          * is appended into the query.
     317  
          *
     318  
          * @param sb a StringBuilder that the query text will be appended to.
     319  
          * @param field the field within the Lucene index that the query is
     320  
          * searching.
     321  
          * @param searchText text used to construct the query.
     322  
          * @param weightedText a list of terms that will be considered higher
     323  
          * importance when searching.
     324  
          * @return if the append was successful.
     325  
          */
     326  
         private boolean appendWeightedSearch(StringBuilder sb, String field, String searchText, Set<String> weightedText) {
     327  154
             sb.append(" ").append(field).append(":( ");
     328  
     
     329  154
             final String cleanText = cleanseText(searchText);
     330  
     
     331  154
             if ("".equals(cleanText)) {
     332  0
                 return false;
     333  
             }
     334  
     
     335  154
             if (weightedText == null || weightedText.isEmpty()) {
     336  40
                 LuceneUtils.appendEscapedLuceneQuery(sb, cleanText);
     337  
             } else {
     338  114
                 final StringTokenizer tokens = new StringTokenizer(cleanText);
     339  1211
                 while (tokens.hasMoreElements()) {
     340  1097
                     final String word = tokens.nextToken();
     341  1097
                     String temp = null;
     342  1097
                     for (String weighted : weightedText) {
     343  2202
                         final String weightedStr = cleanseText(weighted);
     344  2202
                         if (equalsIgnoreCaseAndNonAlpha(word, weightedStr)) {
     345  251
                             temp = LuceneUtils.escapeLuceneQuery(word) + WEIGHTING_BOOST;
     346  251
                             if (!word.equalsIgnoreCase(weightedStr)) {
     347  18
                                 temp += " " + LuceneUtils.escapeLuceneQuery(weightedStr) + WEIGHTING_BOOST;
     348  
                             }
     349  
                         }
     350  2202
                     }
     351  1097
                     if (temp == null) {
     352  846
                         temp = LuceneUtils.escapeLuceneQuery(word);
     353  
                     }
     354  1097
                     sb.append(" ").append(temp);
     355  1097
                 }
     356  
             }
     357  154
             sb.append(" ) ");
     358  154
             return true;
     359  
         }
     360  
     
     361  
         /**
     362  
          * Removes characters from the input text that are not used within the CPE
     363  
          * index.
     364  
          *
     365  
          * @param text is the text to remove the characters from.
     366  
          * @return the text having removed some characters.
     367  
          */
     368  
         private String cleanseText(String text) {
     369  2356
             return text.replaceAll(CLEANSE_CHARACTER_RX, " ");
     370  
         }
     371  
     
     372  
         /**
     373  
          * Compares two strings after lower casing them and removing the non-alpha
     374  
          * characters.
     375  
          *
     376  
          * @param l string one to compare.
     377  
          * @param r string two to compare.
     378  
          * @return whether or not the two strings are similar.
     379  
          */
     380  
         private boolean equalsIgnoreCaseAndNonAlpha(String l, String r) {
     381  2202
             if (l == null || r == null) {
     382  0
                 return false;
     383  
             }
     384  
     
     385  2202
             final String left = l.replaceAll(CLEANSE_NONALPHA_RX, "");
     386  2202
             final String right = r.replaceAll(CLEANSE_NONALPHA_RX, "");
     387  2202
             return left.equalsIgnoreCase(right);
     388  
         }
     389  
     
     390  
         /**
     391  
          * Ensures that the CPE Identified matches the dependency. This validates
     392  
          * that the product, vendor, and version information for the CPE are
     393  
          * contained within the dependencies evidence.
     394  
          *
     395  
          * @param entry a CPE entry.
     396  
          * @param dependency the dependency that the CPE entries could be for.
     397  
          * @return whether or not the entry is valid.
     398  
          */
     399  
         private boolean verifyEntry(final IndexEntry entry, final Dependency dependency) {
     400  724
             boolean isValid = false;
     401  
     
     402  724
             if (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())
     403  
                     && collectionContainsString(dependency.getVendorEvidence(), entry.getVendor())) {
     404  
                 //&& collectionContainsVersion(dependency.getVersionEvidence(), entry.getVersion())
     405  71
                 isValid = true;
     406  
             }
     407  724
             return isValid;
     408  
         }
     409  
     
     410  
         /**
     411  
          * Used to determine if the EvidenceCollection contains a specific string.
     412  
          *
     413  
          * @param ec an EvidenceCollection
     414  
          * @param text the text to search for
     415  
          * @return whether or not the EvidenceCollection contains the string
     416  
          */
     417  
         private boolean collectionContainsString(EvidenceCollection ec, String text) {
     418  
     
     419  
             //<editor-fold defaultstate="collapsed" desc="This code fold contains an old version of the code, delete once more testing is done">
     420  
             //        String[] splitText = text.split("[\\s_-]");
     421  
             //
     422  
             //        for (String search : splitText) {
     423  
             //            //final String search = text.replaceAll("[\\s_-]", "").toLowerCase();
     424  
             //            if (ec.containsUsedString(search)) {
     425  
             //                return true;
     426  
             //            }
     427  
             //        }
     428  
             //</editor-fold>
     429  
     
     430  
             //TODO - likely need to change the split... not sure if this will work for CPE with special chars
     431  801
             if (text == null) {
     432  0
                 return false;
     433  
             }
     434  801
             final String[] words = text.split("[\\s_-]");
     435  801
             final List<String> list = new ArrayList<String>();
     436  801
             String tempWord = null;
     437  2255
             for (String word : words) {
     438  
                 //single letter words should be concatonated with the next word.
     439  
                 // so { "m", "core", "sample" } -> { "mcore", "sample" }
     440  1454
                 if (tempWord != null) {
     441  17
                     list.add(tempWord + word);
     442  17
                     tempWord = null;
     443  1437
                 } else if (word.length() <= 2) {
     444  40
                     tempWord = word;
     445  
                 } else {
     446  1397
                     list.add(word);
     447  
                 }
     448  
             }
     449  801
             if (tempWord != null && !list.isEmpty()) {
     450  19
                 final String tmp = list.get(list.size() - 1) + tempWord;
     451  19
                 list.add(tmp);
     452  
             }
     453  801
             boolean contains = true;
     454  801
             for (String word : list) {
     455  1433
                 contains &= ec.containsUsedString(word);
     456  
             }
     457  801
             return contains;
     458  
         }
     459  
     
     460  
         /**
     461  
          * Analyzes a dependency and attempts to determine if there are any CPE
     462  
          * identifiers for this dependency.
     463  
          *
     464  
          * @param dependency The Dependency to analyze.
     465  
          * @param engine The analysis engine
     466  
          * @throws AnalysisException is thrown if there is an issue analyzing the
     467  
          * dependency.
     468  
          */
     469  
         @Override
     470  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     471  
             try {
     472  15
                 determineCPE(dependency);
     473  0
             } catch (CorruptIndexException ex) {
     474  0
                 throw new AnalysisException("CPE Index is corrupt.", ex);
     475  0
             } catch (IOException ex) {
     476  0
                 throw new AnalysisException("Failure opening the CPE Index.", ex);
     477  0
             } catch (ParseException ex) {
     478  0
                 throw new AnalysisException("Unable to parse the generated Lucene query for this dependency.", ex);
     479  15
             }
     480  15
         }
     481  
     
     482  
         /**
     483  
          * Returns true because this analyzer supports all dependency types.
     484  
          *
     485  
          * @return true.
     486  
          */
     487  
         @Override
     488  
         public Set<String> getSupportedExtensions() {
     489  132
             return null;
     490  
         }
     491  
     
     492  
         /**
     493  
          * Returns the name of this analyzer.
     494  
          *
     495  
          * @return the name of this analyzer.
     496  
          */
     497  
         @Override
     498  
         public String getName() {
     499  9
             return "CPE Analyzer";
     500  
         }
     501  
     
     502  
         /**
     503  
          * Returns true because this analyzer supports all dependency types.
     504  
          *
     505  
          * @param extension the file extension of the dependency being analyzed.
     506  
          * @return true.
     507  
          */
     508  
         @Override
     509  
         public boolean supportsExtension(String extension) {
     510  9
             return true;
     511  
         }
     512  
     
     513  
         /**
     514  
          * Returns the analysis phase that this analyzer should run in.
     515  
          *
     516  
          * @return the analysis phase that this analyzer should run in.
     517  
          */
     518  
         @Override
     519  
         public AnalysisPhase getAnalysisPhase() {
     520  6
             return AnalysisPhase.IDENTIFIER_ANALYSIS;
     521  
         }
     522  
     
     523  
         /**
     524  
          * Opens the CPE Lucene Index.
     525  
          *
     526  
          * @throws Exception is thrown if there is an issue opening the index.
     527  
          */
     528  
         @Override
     529  
         public void initialize() throws Exception {
     530  3
             this.open();
     531  3
         }
     532  
     
     533  
         /**
     534  
          * Retrieves a list of CPE values from the CveDB based on the vendor and
     535  
          * product passed in. The list is then validated to find only CPEs that are
     536  
          * valid for the given dependency. It is possible that the CPE identified is
     537  
          * a best effort "guess" based on the vendor, product, and version
     538  
          * information.
     539  
          *
     540  
          * @param dependency the Dependency being analyzed
     541  
          * @param vendor the vendor for the CPE being analyzed
     542  
          * @param product the product for the CPE being analyzed
     543  
          * @throws UnsupportedEncodingException is thrown if UTF-8 is not supported
     544  
          */
     545  
         private void determineIdentifiers(Dependency dependency, String vendor, String product) throws UnsupportedEncodingException {
     546  71
             final Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);
     547  71
             DependencyVersion bestGuess = new DependencyVersion("-");
     548  71
             Confidence bestGuessConf = null;
     549  71
             final List<IdentifierMatch> collected = new ArrayList<IdentifierMatch>();
     550  355
             for (Confidence conf : Confidence.values()) {
     551  284
                 for (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {
     552  160
                     final DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());
     553  160
                     if (evVer == null) {
     554  0
                         continue;
     555  
                     }
     556  160
                     for (VulnerableSoftware vs : cpes) {
     557  
                         DependencyVersion dbVer;
     558  9104
                         if (vs.getRevision() != null && !vs.getRevision().isEmpty()) {
     559  2855
                             dbVer = DependencyVersionUtil.parseVersion(vs.getVersion() + "." + vs.getRevision());
     560  
                         } else {
     561  6249
                             dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());
     562  
                         }
     563  9104
                         if (dbVer == null //special case, no version specified - everything is vulnerable
     564  
                                 || evVer.equals(dbVer)) { //woot exect match
     565  169
                             final String url = String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(vs.getName(), "UTF-8"));
     566  169
                             final IdentifierMatch match = new IdentifierMatch("cpe", vs.getName(), url, IdentifierConfidence.EXACT_MATCH, conf);
     567  169
                             collected.add(match);
     568  169
                         } else {
     569  
                             //TODO the following isn't quite right is it? need to think about this guessing game a bit more.
     570  8935
                             if (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()
     571  
                                     && evVer.matchesAtLeastThreeLevels(dbVer)) {
     572  412
                                 if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
     573  10
                                     if (bestGuess.getVersionParts().size() < dbVer.getVersionParts().size()) {
     574  10
                                         bestGuess = dbVer;
     575  10
                                         bestGuessConf = conf;
     576  
                                     }
     577  
                                 }
     578  
                             }
     579  
                         }
     580  9104
                     }
     581  160
                     if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
     582  49
                         if (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {
     583  49
                             bestGuess = evVer;
     584  49
                             bestGuessConf = conf;
     585  
                         }
     586  
                     }
     587  160
                 }
     588  
             }
     589  71
             final String cpeName = String.format("cpe:/a:%s:%s:%s", vendor, product, bestGuess.toString());
     590  71
             final String url = null; //String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(cpeName, "UTF-8"));
     591  71
             if (bestGuessConf == null) {
     592  12
                 bestGuessConf = Confidence.LOW;
     593  
             }
     594  71
             final IdentifierMatch match = new IdentifierMatch("cpe", cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);
     595  71
             collected.add(match);
     596  
     
     597  71
             Collections.sort(collected);
     598  71
             final IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();
     599  71
             final Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();
     600  71
             for (IdentifierMatch m : collected) {
     601  240
                 if (bestIdentifierQuality.equals(m.getConfidence())
     602  
                         && bestEvidenceQuality.equals(m.getEvidenceConfidence())) {
     603  88
                     dependency.addIdentifier(m.getIdentifier());
     604  
                 }
     605  
             }
     606  71
         }
     607  
     
     608  
         /**
     609  
          * The confidence whether the identifier is an exact match, or a best guess.
     610  
          */
     611  3
         private enum IdentifierConfidence {
     612  
     
     613  
             /**
     614  
              * An exact match for the CPE.
     615  
              */
     616  1
             EXACT_MATCH,
     617  
             /**
     618  
              * A best guess for the CPE.
     619  
              */
     620  1
             BEST_GUESS
     621  
         }
     622  
     
     623  
         /**
     624  
          * A simple object to hold an identifier and carry information about the
     625  
          * confidence in the identifier.
     626  
          */
     627  225
         private static class IdentifierMatch implements Comparable<IdentifierMatch> {
     628  
     
     629  
             /**
     630  
              * Constructs an IdentiferMatch.
     631  
              *
     632  
              * @param type the type of identifier (such as CPE)
     633  
              * @param value the value of the identifier
     634  
              * @param url the URL of the identifier
     635  
              * @param identifierConfidence the confidence in the identifier: best
     636  
              * guess or exact match
     637  
              * @param evidenceConfidence the confidence of the evidence used to find
     638  
              * the identifier
     639  
              */
     640  240
             IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {
     641  240
                 this.identifier = new Identifier(type, value, url);
     642  240
                 this.confidence = identifierConfidence;
     643  240
                 this.evidenceConfidence = evidenceConfidence;
     644  240
             }
     645  
             //<editor-fold defaultstate="collapsed" desc="Property implementations: evidenceConfidence, confidence, identifier">
     646  
             /**
     647  
              * The confidence in the evidence used to identify this match.
     648  
              */
     649  
             private Confidence evidenceConfidence;
     650  
     
     651  
             /**
     652  
              * Get the value of evidenceConfidence
     653  
              *
     654  
              * @return the value of evidenceConfidence
     655  
              */
     656  
             public Confidence getEvidenceConfidence() {
     657  263
                 return evidenceConfidence;
     658  
             }
     659  
     
     660  
             /**
     661  
              * Set the value of evidenceConfidence
     662  
              *
     663  
              * @param evidenceConfidence new value of evidenceConfidence
     664  
              */
     665  
             public void setEvidenceConfidence(Confidence evidenceConfidence) {
     666  0
                 this.evidenceConfidence = evidenceConfidence;
     667  0
             }
     668  
             /**
     669  
              * The confidence whether this is an exact match, or a best guess.
     670  
              */
     671  
             private IdentifierConfidence confidence;
     672  
     
     673  
             /**
     674  
              * Get the value of confidence.
     675  
              *
     676  
              * @return the value of confidence
     677  
              */
     678  
             public IdentifierConfidence getConfidence() {
     679  311
                 return confidence;
     680  
             }
     681  
     
     682  
             /**
     683  
              * Set the value of confidence.
     684  
              *
     685  
              * @param confidence new value of confidence
     686  
              */
     687  
             public void setConfidence(IdentifierConfidence confidence) {
     688  0
                 this.confidence = confidence;
     689  0
             }
     690  
             /**
     691  
              * The CPE identifier.
     692  
              */
     693  
             private Identifier identifier;
     694  
     
     695  
             /**
     696  
              * Get the value of identifier.
     697  
              *
     698  
              * @return the value of identifier
     699  
              */
     700  
             public Identifier getIdentifier() {
     701  88
                 return identifier;
     702  
             }
     703  
     
     704  
             /**
     705  
              * Set the value of identifier.
     706  
              *
     707  
              * @param identifier new value of identifier
     708  
              */
     709  
             public void setIdentifier(Identifier identifier) {
     710  0
                 this.identifier = identifier;
     711  0
             }
     712  
             //</editor-fold>
     713  
             //<editor-fold defaultstate="collapsed" desc="Standard implementations of toString, hashCode, and equals">
     714  
     
     715  
             /**
     716  
              * Standard toString() implementation.
     717  
              *
     718  
              * @return the string representation of the object
     719  
              */
     720  
             @Override
     721  
             public String toString() {
     722  0
                 return "IdentifierMatch{" + "evidenceConfidence=" + evidenceConfidence
     723  
                         + ", confidence=" + confidence + ", identifier=" + identifier + '}';
     724  
             }
     725  
     
     726  
             /**
     727  
              * Standard hashCode() implementation.
     728  
              *
     729  
              * @return the hashCode
     730  
              */
     731  
             @Override
     732  
             public int hashCode() {
     733  0
                 int hash = 5;
     734  0
                 hash = 97 * hash + (this.evidenceConfidence != null ? this.evidenceConfidence.hashCode() : 0);
     735  0
                 hash = 97 * hash + (this.confidence != null ? this.confidence.hashCode() : 0);
     736  0
                 hash = 97 * hash + (this.identifier != null ? this.identifier.hashCode() : 0);
     737  0
                 return hash;
     738  
             }
     739  
     
     740  
             /**
     741  
              * Standard equals implementation.
     742  
              *
     743  
              * @param obj the object to compare
     744  
              * @return true if the objects are equal, otherwise false
     745  
              */
     746  
             @Override
     747  
             public boolean equals(Object obj) {
     748  0
                 if (obj == null) {
     749  0
                     return false;
     750  
                 }
     751  0
                 if (getClass() != obj.getClass()) {
     752  0
                     return false;
     753  
                 }
     754  0
                 final IdentifierMatch other = (IdentifierMatch) obj;
     755  0
                 if (this.evidenceConfidence != other.evidenceConfidence) {
     756  0
                     return false;
     757  
                 }
     758  0
                 if (this.confidence != other.confidence) {
     759  0
                     return false;
     760  
                 }
     761  0
                 if (this.identifier != other.identifier && (this.identifier == null || !this.identifier.equals(other.identifier))) {
     762  0
                     return false;
     763  
                 }
     764  0
                 return true;
     765  
             }
     766  
             //</editor-fold>
     767  
     
     768  
             /**
     769  
              * Standard implementation of compareTo that compares identifier
     770  
              * confidence, evidence confidence, and then the identifier.
     771  
              *
     772  
              * @param o the IdentifierMatch to compare to
     773  
              * @return the natural ordering of IdentifierMatch
     774  
              */
     775  
             @Override
     776  
             public int compareTo(IdentifierMatch o) {
     777  225
                 int conf = this.confidence.compareTo(o.confidence);
     778  225
                 if (conf == 0) {
     779  177
                     conf = this.evidenceConfidence.compareTo(o.evidenceConfidence);
     780  177
                     if (conf == 0) {
     781  83
                         conf = identifier.compareTo(o.identifier);
     782  
                     }
     783  
                 }
     784  225
                 return conf;
     785  
             }
     786  
         }
     787  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..b0d7f33fd --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html @@ -0,0 +1,167 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CpeSuppressionAnalyzer
    66%
    6/9
    16%
    1/6
    2.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import org.owasp.dependencycheck.Engine;
     22  
     import org.owasp.dependencycheck.dependency.Dependency;
     23  
     import org.owasp.dependencycheck.suppression.SuppressionRule;
     24  
     
     25  
     /**
     26  
      * The suppression analyzer processes an externally defined XML document that
     27  
      * complies with the suppressions.xsd schema. Any identified CPE entries within
     28  
      * the dependencies that match will be removed.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  1
     public class CpeSuppressionAnalyzer extends AbstractSuppressionAnalyzer {
     33  
     
     34  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     35  
         /**
     36  
          * The name of the analyzer.
     37  
          */
     38  
         private static final String ANALYZER_NAME = "Cpe Suppression Analyzer";
     39  
         /**
     40  
          * The phase that this analyzer is intended to run in.
     41  
          */
     42  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_IDENTIFIER_ANALYSIS;
     43  
     
     44  
         /**
     45  
          * Returns the name of the analyzer.
     46  
          *
     47  
          * @return the name of the analyzer.
     48  
          */
     49  
         @Override
     50  
         public String getName() {
     51  9
             return ANALYZER_NAME;
     52  
         }
     53  
     
     54  
         /**
     55  
          * Returns the phase that the analyzer is intended to run in.
     56  
          *
     57  
          * @return the phase that the analyzer is intended to run in.
     58  
          */
     59  
         @Override
     60  
         public AnalysisPhase getAnalysisPhase() {
     61  6
             return ANALYSIS_PHASE;
     62  
         }
     63  
         //</editor-fold>
     64  
     
     65  
         @Override
     66  
         public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
     67  
     
     68  9
             if (getRules() == null || getRules().size() <= 0) {
     69  9
                 return;
     70  
             }
     71  
     
     72  0
             for (final SuppressionRule rule : getRules()) {
     73  0
                 rule.process(dependency);
     74  
             }
     75  0
         }
     76  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..de0aed19b --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html @@ -0,0 +1,598 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyBundlingAnalyzer
    33%
    37/112
    26%
    25/96
    6.9
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.File;
     22  
     import java.util.HashSet;
     23  
     import java.util.Iterator;
     24  
     import java.util.ListIterator;
     25  
     import java.util.Set;
     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  1
     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  1
         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  1
         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  1
         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  1
         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  132
             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  9
             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  9
             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  6
             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  9
             if (!analyzed) {
     125  1
                 analyzed = true;
     126  1
                 final Set<Dependency> dependenciesToRemove = new HashSet<Dependency>();
     127  1
                 final ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator();
     128  
                 //for (Dependency nextDependency : engine.getDependencies()) {
     129  4
                 while (mainIterator.hasNext()) {
     130  3
                     final Dependency dependency = mainIterator.next();
     131  3
                     if (mainIterator.hasNext()) {
     132  2
                         final ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex());
     133  5
                         while (subIterator.hasNext()) {
     134  3
                             final Dependency nextDependency = subIterator.next();
     135  
     
     136  3
                             if (identifiersMatch(dependency, nextDependency)
     137  
                                     && hasSameBasePath(dependency, nextDependency)
     138  
                                     && fileNameMatch(dependency, nextDependency)) {
     139  
     
     140  0
                                 if (isCore(dependency, nextDependency)) {
     141  0
                                     dependency.addRelatedDependency(nextDependency);
     142  
                                     //move any "related dependencies" to the new "parent" dependency
     143  0
                                     final Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator();
     144  0
                                     while (i.hasNext()) {
     145  0
                                         dependency.addRelatedDependency(i.next());
     146  0
                                         i.remove();
     147  
                                     }
     148  0
                                     dependenciesToRemove.add(nextDependency);
     149  0
                                 } else {
     150  0
                                     nextDependency.addRelatedDependency(dependency);
     151  
                                     //move any "related dependencies" to the new "parent" dependency
     152  0
                                     final Iterator<Dependency> i = dependency.getRelatedDependencies().iterator();
     153  0
                                     while (i.hasNext()) {
     154  0
                                         nextDependency.addRelatedDependency(i.next());
     155  0
                                         i.remove();
     156  
                                     }
     157  0
                                     dependenciesToRemove.add(dependency);
     158  
                                 }
     159  
                             }
     160  3
                         }
     161  
                     }
     162  3
                 }
     163  
                 //removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions
     164  
                 // was difficult because of the inner iterator.
     165  1
                 for (Dependency d : dependenciesToRemove) {
     166  0
                     engine.getDependencies().remove(d);
     167  
                 }
     168  
             }
     169  9
         }
     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  0
             int pos = path.indexOf("repository" + File.separator) + 11;
     180  0
             if (pos < 0) {
     181  0
                 return path;
     182  
             }
     183  0
             int tmp = path.indexOf(File.separator, pos);
     184  0
             if (tmp <= 0) {
     185  0
                 return path;
     186  
             }
     187  0
             if (tmp > 0) {
     188  0
                 pos = tmp + 1;
     189  
             }
     190  0
             tmp = path.indexOf(File.separator, pos);
     191  0
             if (tmp > 0) {
     192  0
                 pos = tmp + 1;
     193  
             }
     194  0
             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  0
             if (dependency1 == null || dependency1.getFileName() == null
     208  
                     || dependency2 == null || dependency2.getFileName() == null) {
     209  0
                 return false;
     210  
             }
     211  0
             String fileName1 = dependency1.getFileName();
     212  0
             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  0
             final File one = new File(fileName1);
     217  0
             final File two = new File(fileName2);
     218  0
             final String oneParent = one.getParent();
     219  0
             final String twoParent = two.getParent();
     220  0
             if (oneParent != null) {
     221  0
                 if (twoParent != null && oneParent.equals(twoParent)) {
     222  0
                     fileName1 = one.getName();
     223  0
                     fileName2 = two.getName();
     224  
                 } else {
     225  0
                     return false;
     226  
                 }
     227  0
             } else if (twoParent != null) {
     228  0
                 return false;
     229  
             }
     230  
     
     231  
             //version check
     232  0
             final DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1);
     233  0
             final DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2);
     234  0
             if (version1 != null && version2 != null) {
     235  0
                 if (!version1.equals(version2)) {
     236  0
                     return false;
     237  
                 }
     238  
             }
     239  
     
     240  
             //filename check
     241  0
             final Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1);
     242  0
             final Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2);
     243  0
             if (match1.find() && match2.find()) {
     244  0
                 return match1.group().equals(match2.group());
     245  
             }
     246  
     
     247  0
             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  3
             if (dependency1 == null || dependency1.getIdentifiers() == null
     261  
                     || dependency2 == null || dependency2.getIdentifiers() == null) {
     262  0
                 return false;
     263  
             }
     264  3
             final boolean matches = dependency1.getIdentifiers().size() > 0
     265  
                     && dependency2.getIdentifiers().equals(dependency1.getIdentifiers());
     266  3
             if (LogUtils.isVerboseLoggingEnabled()) {
     267  0
                 final String msg = String.format("IdentifiersMatch=%s (%s, %s)", matches, dependency1.getFileName(), dependency2.getFileName());
     268  0
                 Logger.getLogger(DependencyBundlingAnalyzer.class.getName()).log(Level.FINE, msg);
     269  
             }
     270  3
             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  1
             if (dependency1 == null || dependency2 == null) {
     282  0
                 return false;
     283  
             }
     284  1
             final File lFile = new File(dependency1.getFilePath());
     285  1
             String left = lFile.getParent();
     286  1
             final File rFile = new File(dependency2.getFilePath());
     287  1
             String right = rFile.getParent();
     288  1
             if (left == null) {
     289  0
                 if (right == null) {
     290  0
                     return true;
     291  
                 }
     292  0
                 return false;
     293  
             }
     294  1
             if (left.equalsIgnoreCase(right)) {
     295  0
                 return true;
     296  
             }
     297  1
             if (left.matches(".*[/\\\\]repository[/\\\\].*") && right.matches(".*[/\\\\]repository[/\\\\].*")) {
     298  0
                 left = getBaseRepoPath(left);
     299  0
                 right = getBaseRepoPath(right);
     300  
             }
     301  1
             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  0
             final String leftName = left.getFileName().toLowerCase();
     315  0
             final String rightName = right.getFileName().toLowerCase();
     316  
             final boolean returnVal;
     317  0
             if (rightName.contains("core") && !leftName.contains("core")) {
     318  0
                 returnVal = false;
     319  0
             } else if (!rightName.contains("core") && leftName.contains("core")) {
     320  0
                 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  0
                 if (leftName.length() > rightName.length()) {
     332  0
                     returnVal = false;
     333  
                 } else {
     334  0
                     returnVal = true;
     335  
                 }
     336  
             }
     337  0
             if (LogUtils.isVerboseLoggingEnabled()) {
     338  0
                 final String msg = String.format("IsCore=%s (%s, %s)", returnVal, left.getFileName(), right.getFileName());
     339  0
                 Logger.getLogger(DependencyBundlingAnalyzer.class.getName()).log(Level.FINE, msg);
     340  
             }
     341  0
             return returnVal;
     342  
         }
     343  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html new file mode 100644 index 000000000..1095a1097 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html @@ -0,0 +1,651 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    FalsePositiveAnalyzer
    69%
    80/115
    46%
    52/112
    6.455
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.UnsupportedEncodingException;
     22  
     import java.net.URLEncoder;
     23  
     import java.util.ArrayList;
     24  
     import java.util.Collections;
     25  
     import java.util.Iterator;
     26  
     import java.util.List;
     27  
     import java.util.ListIterator;
     28  
     import java.util.Set;
     29  
     import java.util.logging.Level;
     30  
     import java.util.logging.Logger;
     31  
     import java.util.regex.Matcher;
     32  
     import java.util.regex.Pattern;
     33  
     import org.owasp.dependencycheck.Engine;
     34  
     import org.owasp.dependencycheck.dependency.Dependency;
     35  
     import org.owasp.dependencycheck.dependency.Identifier;
     36  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     37  
     
     38  
     /**
     39  
      * This analyzer attempts to remove some well known false positives -
     40  
      * specifically regarding the java runtime.
     41  
      *
     42  
      * @author Jeremy Long (jeremy.long@owasp.org)
     43  
      */
     44  7
     public class FalsePositiveAnalyzer extends AbstractAnalyzer {
     45  
     
     46  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     47  
         /**
     48  
          * The set of file extensions supported by this analyzer.
     49  
          */
     50  1
         private static final Set<String> EXTENSIONS = null;
     51  
         /**
     52  
          * The name of the analyzer.
     53  
          */
     54  
         private static final String ANALYZER_NAME = "False Positive Analyzer";
     55  
         /**
     56  
          * The phase that this analyzer is intended to run in.
     57  
          */
     58  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_IDENTIFIER_ANALYSIS;
     59  
     
     60  
         /**
     61  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     62  
          *
     63  
          * @return a list of file EXTENSIONS supported by this analyzer.
     64  
          */
     65  
         public Set<String> getSupportedExtensions() {
     66  132
             return EXTENSIONS;
     67  
         }
     68  
     
     69  
         /**
     70  
          * Returns the name of the analyzer.
     71  
          *
     72  
          * @return the name of the analyzer.
     73  
          */
     74  
         public String getName() {
     75  9
             return ANALYZER_NAME;
     76  
         }
     77  
     
     78  
         /**
     79  
          * Returns whether or not this analyzer can process the given extension.
     80  
          *
     81  
          * @param extension the file extension to test for support
     82  
          * @return whether or not the specified file extension is supported by this
     83  
          * analyzer.
     84  
          */
     85  
         public boolean supportsExtension(String extension) {
     86  9
             return true;
     87  
         }
     88  
     
     89  
         /**
     90  
          * Returns the phase that the analyzer is intended to run in.
     91  
          *
     92  
          * @return the phase that the analyzer is intended to run in.
     93  
          */
     94  
         public AnalysisPhase getAnalysisPhase() {
     95  6
             return ANALYSIS_PHASE;
     96  
         }
     97  
         //</editor-fold>
     98  
     
     99  
         /**
     100  
          * Analyzes the dependencies and removes bad/incorrect CPE associations
     101  
          * based on various heuristics.
     102  
          *
     103  
          * @param dependency the dependency to analyze.
     104  
          * @param engine the engine that is scanning the dependencies
     105  
          * @throws AnalysisException is thrown if there is an error reading the JAR
     106  
          * file.
     107  
          */
     108  
         @Override
     109  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     110  15
             removeJreEntries(dependency);
     111  15
             removeBadMatches(dependency);
     112  15
             removeWrongVersionMatches(dependency);
     113  15
             removeSpuriousCPE(dependency);
     114  15
             addFalseNegativeCPEs(dependency);
     115  15
         }
     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  15
             final List<Identifier> ids = new ArrayList<Identifier>();
     136  15
             ids.addAll(dependency.getIdentifiers());
     137  15
             Collections.sort(ids);
     138  15
             final ListIterator<Identifier> mainItr = ids.listIterator();
     139  36
             while (mainItr.hasNext()) {
     140  21
                 final Identifier currentId = mainItr.next();
     141  21
                 final VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue());
     142  21
                 if (currentCpe == null) {
     143  0
                     continue;
     144  
                 }
     145  21
                 final ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex());
     146  32
                 while (subItr.hasNext()) {
     147  11
                     final Identifier nextId = subItr.next();
     148  11
                     final VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue());
     149  11
                     if (nextCpe == null) {
     150  0
                         continue;
     151  
                     }
     152  
                     //TODO fix the version problem below
     153  11
                     if (currentCpe.getVendor().equals(nextCpe.getVendor())) {
     154  3
                         if (currentCpe.getProduct().equals(nextCpe.getProduct())) {
     155  
                             // see if one is contained in the other.. remove the contained one from dependency.getIdentifier
     156  3
                             final String currentVersion = currentCpe.getVersion();
     157  3
                             final String nextVersion = nextCpe.getVersion();
     158  3
                             if (currentVersion == null && nextVersion == null) {
     159  
                                 //how did we get here?
     160  0
                                 Logger.getLogger(FalsePositiveAnalyzer.class
     161  
                                         .getName()).log(Level.FINE, "currentVersion and nextVersion are both null?");
     162  3
                             } else if (currentVersion == null && nextVersion != null) {
     163  3
                                 dependency.getIdentifiers().remove(currentId);
     164  0
                             } else if (nextVersion == null && currentVersion != null) {
     165  0
                                 dependency.getIdentifiers().remove(nextId);
     166  0
                             } else if (currentVersion.length() < nextVersion.length()) {
     167  0
                                 if (nextVersion.startsWith(currentVersion) || "-".equals(currentVersion)) {
     168  0
                                     dependency.getIdentifiers().remove(currentId);
     169  
                                 }
     170  
                             } else {
     171  0
                                 if (currentVersion.startsWith(nextVersion) || "-".equals(nextVersion)) {
     172  0
                                     dependency.getIdentifiers().remove(nextId);
     173  
                                 }
     174  
                             }
     175  
                         }
     176  
                     }
     177  11
                 }
     178  21
             }
     179  15
         }
     180  
         /**
     181  
          * Regex to identify core java libraries and a few other commonly
     182  
          * misidentified ones.
     183  
          */
     184  1
         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  1
         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  15
             final Set<Identifier> identifiers = dependency.getIdentifiers();
     200  15
             final Iterator<Identifier> itr = identifiers.iterator();
     201  37
             while (itr.hasNext()) {
     202  22
                 final Identifier i = itr.next();
     203  22
                 final Matcher coreCPE = CORE_JAVA.matcher(i.getValue());
     204  22
                 final Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName());
     205  22
                 if (coreCPE.matches() && !coreFiles.matches()) {
     206  0
                     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  22
             }
     230  15
         }
     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  32
             if (!"cpe".equals(type)) {
     241  0
                 return null;
     242  
             }
     243  32
             final VulnerableSoftware cpe = new VulnerableSoftware();
     244  
             try {
     245  32
                 cpe.parseName(value);
     246  0
             } catch (UnsupportedEncodingException ex) {
     247  0
                 Logger.getLogger(FalsePositiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     248  0
                 return null;
     249  32
             }
     250  32
             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  15
             final Set<Identifier> identifiers = dependency.getIdentifiers();
     262  15
             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  37
             while (itr.hasNext()) {
     274  22
                 final Identifier i = itr.next();
     275  
                 //TODO move this startswith expression to a configuration file?
     276  22
                 if ("cpe".equals(i.getType())) {
     277  22
                     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  0
                         itr.remove();
     288  22
                     } else if (i.getValue().startsWith("cpe:/a:apache:maven")
     289  
                             && !dependency.getFileName().toLowerCase().matches("maven-core-[\\d\\.]+\\.jar")) {
     290  0
                         itr.remove();
     291  
                     }
     292  
                 }
     293  22
             }
     294  15
         }
     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 to analyze
     301  
          */
     302  
         private void removeWrongVersionMatches(Dependency dependency) {
     303  15
             final Set<Identifier> identifiers = dependency.getIdentifiers();
     304  15
             final Iterator<Identifier> itr = identifiers.iterator();
     305  
     
     306  15
             final String fileName = dependency.getFileName();
     307  15
             if (fileName != null && fileName.contains("axis2")) {
     308  3
                 while (itr.hasNext()) {
     309  2
                     final Identifier i = itr.next();
     310  2
                     if ("cpe".equals(i.getType())) {
     311  2
                         final String cpe = i.getValue();
     312  2
                         if (cpe != null && (cpe.startsWith("cpe:/a:apache:axis:") || "cpe:/a:apache:axis".equals(cpe))) {
     313  1
                             itr.remove();
     314  
                         }
     315  
                     }
     316  2
                 }
     317  14
             } else if (fileName != null && fileName.contains("axis")) {
     318  0
                 while (itr.hasNext()) {
     319  0
                     final Identifier i = itr.next();
     320  0
                     if ("cpe".equals(i.getType())) {
     321  0
                         final String cpe = i.getValue();
     322  0
                         if (cpe != null && (cpe.startsWith("cpe:/a:apache:axis2:") || "cpe:/a:apache:axis2".equals(cpe))) {
     323  0
                             itr.remove();
     324  
                         }
     325  
                     }
     326  0
                 }
     327  
             }
     328  15
         }
     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  15
             final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
     340  33
             while (itr.hasNext()) {
     341  18
                 final Identifier i = itr.next();
     342  18
                 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  0
                     final String newCpe = String.format("cpe:/a:sun:opensso_enterprise:%s", i.getValue().substring(22));
     348  0
                     final String newCpe2 = String.format("cpe:/a:oracle:opensso_enterprise:%s", i.getValue().substring(22));
     349  0
                     final String newCpe3 = String.format("cpe:/a:sun:opensso:%s", i.getValue().substring(22));
     350  0
                     final String newCpe4 = String.format("cpe:/a:oracle:opensso:%s", i.getValue().substring(22));
     351  
                     try {
     352  0
                         dependency.addIdentifier("cpe",
     353  
                                 newCpe,
     354  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe, "UTF-8")));
     355  0
                         dependency.addIdentifier("cpe",
     356  
                                 newCpe2,
     357  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe2, "UTF-8")));
     358  0
                         dependency.addIdentifier("cpe",
     359  
                                 newCpe3,
     360  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe3, "UTF-8")));
     361  0
                         dependency.addIdentifier("cpe",
     362  
                                 newCpe4,
     363  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe4, "UTF-8")));
     364  0
                     } catch (UnsupportedEncodingException ex) {
     365  0
                         Logger.getLogger(FalsePositiveAnalyzer.class
     366  
                                 .getName()).log(Level.FINE, null, ex);
     367  0
                     }
     368  
                 }
     369  18
             }
     370  15
         }
     371  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html new file mode 100644 index 000000000..ad75025cc --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html @@ -0,0 +1,268 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.FileNameAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    FileNameAnalyzer
    100%
    22/22
    83%
    5/6
    1.6
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.File;
     22  
     import org.owasp.dependencycheck.dependency.Dependency;
     23  
     import org.owasp.dependencycheck.dependency.Evidence;
     24  
     import java.util.Set;
     25  
     import org.owasp.dependencycheck.Engine;
     26  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     27  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     28  
     
     29  
     /**
     30  
      *
     31  
      * Takes a dependency and analyzes the filename and determines the hashes.
     32  
      *
     33  
      * @author Jeremy Long (jeremy.long@owasp.org)
     34  
      */
     35  15
     public class FileNameAnalyzer extends AbstractAnalyzer implements Analyzer {
     36  
     
     37  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     38  
         /**
     39  
          * The name of the analyzer.
     40  
          */
     41  
         private static final String ANALYZER_NAME = "File Name Analyzer";
     42  
         /**
     43  
          * The phase that this analyzer is intended to run in.
     44  
          */
     45  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
     46  
         /**
     47  
          * The set of file extensions supported by this analyzer.
     48  
          */
     49  1
         private static final Set<String> EXTENSIONS = null;
     50  
     
     51  
         /**
     52  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     53  
          *
     54  
          * @return a list of file EXTENSIONS supported by this analyzer.
     55  
          */
     56  
         public Set<String> getSupportedExtensions() {
     57  140
             return EXTENSIONS;
     58  
         }
     59  
     
     60  
         /**
     61  
          * Returns the name of the analyzer.
     62  
          *
     63  
          * @return the name of the analyzer.
     64  
          */
     65  
         public String getName() {
     66  10
             return ANALYZER_NAME;
     67  
         }
     68  
     
     69  
         /**
     70  
          * Returns whether or not this analyzer can process the given extension.
     71  
          *
     72  
          * @param extension the file extension to test for support.
     73  
          * @return whether or not the specified file extension is supported by this
     74  
          * analyzer.
     75  
          */
     76  
         public boolean supportsExtension(String extension) {
     77  10
             return true;
     78  
         }
     79  
     
     80  
         /**
     81  
          * Returns the phase that the analyzer is intended to run in.
     82  
          *
     83  
          * @return the phase that the analyzer is intended to run in.
     84  
          */
     85  
         public AnalysisPhase getAnalysisPhase() {
     86  7
             return ANALYSIS_PHASE;
     87  
         }
     88  
         //</editor-fold>
     89  
     
     90  
         /**
     91  
          * Collects information about the file name.
     92  
          *
     93  
          * @param dependency the dependency to analyze.
     94  
          * @param engine the engine that is scanning the dependencies
     95  
          * @throws AnalysisException is thrown if there is an error reading the JAR
     96  
          * file.
     97  
          */
     98  
         @Override
     99  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     100  
     
     101  
             //strip any path information that may get added by ArchiveAnalyzer, etc.
     102  18
             final File f = new File(dependency.getFileName());
     103  18
             String fileName = f.getName();
     104  
     
     105  
             //remove file extension
     106  18
             final int pos = fileName.lastIndexOf(".");
     107  18
             if (pos > 0) {
     108  18
                 fileName = fileName.substring(0, pos);
     109  
             }
     110  
     
     111  
             //add version evidence
     112  18
             final DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);
     113  18
             if (version != null) {
     114  10
                 dependency.getVersionEvidence().addEvidence("file", "name",
     115  
                         version.toString(), Evidence.Confidence.HIGHEST);
     116  10
                 dependency.getVersionEvidence().addEvidence("file", "name",
     117  
                         fileName, Evidence.Confidence.MEDIUM);
     118  
             }
     119  
     
     120  
             //add as vendor and product evidence
     121  18
             if (fileName.contains("-")) {
     122  10
                 dependency.getProductEvidence().addEvidence("file", "name",
     123  
                         fileName, Evidence.Confidence.HIGHEST);
     124  10
                 dependency.getVendorEvidence().addEvidence("file", "name",
     125  
                         fileName, Evidence.Confidence.HIGHEST);
     126  
             } else {
     127  8
                 dependency.getProductEvidence().addEvidence("file", "name",
     128  
                         fileName, Evidence.Confidence.HIGH);
     129  8
                 dependency.getVendorEvidence().addEvidence("file", "name",
     130  
                         fileName, Evidence.Confidence.HIGH);
     131  
             }
     132  18
         }
     133  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html new file mode 100644 index 000000000..ecc7e5bef --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html @@ -0,0 +1,279 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.HintAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    HintAnalyzer
    93%
    31/33
    92%
    13/14
    2.4
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.Iterator;
     23  
     import java.util.Set;
     24  
     import org.owasp.dependencycheck.Engine;
     25  
     import org.owasp.dependencycheck.dependency.Dependency;
     26  
     import org.owasp.dependencycheck.dependency.Evidence;
     27  
     
     28  
     /**
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  7
     public class HintAnalyzer extends AbstractAnalyzer implements Analyzer {
     33  
     
     34  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     35  
         /**
     36  
          * The name of the analyzer.
     37  
          */
     38  
         private static final String ANALYZER_NAME = "Hint Analyzer";
     39  
         /**
     40  
          * The phase that this analyzer is intended to run in.
     41  
          */
     42  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_IDENTIFIER_ANALYSIS;
     43  
         /**
     44  
          * The set of file extensions supported by this analyzer.
     45  
          */
     46  1
         private static final Set<String> EXTENSIONS = null;
     47  
     
     48  
         /**
     49  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     50  
          *
     51  
          * @return a list of file EXTENSIONS supported by this analyzer.
     52  
          */
     53  
         public Set<String> getSupportedExtensions() {
     54  132
             return EXTENSIONS;
     55  
         }
     56  
     
     57  
         /**
     58  
          * Returns the name of the analyzer.
     59  
          *
     60  
          * @return the name of the analyzer.
     61  
          */
     62  
         public String getName() {
     63  9
             return ANALYZER_NAME;
     64  
         }
     65  
     
     66  
         /**
     67  
          * Returns whether or not this analyzer can process the given extension.
     68  
          *
     69  
          * @param extension the file extension to test for support.
     70  
          * @return whether or not the specified file extension is supported by this
     71  
          * analyzer.
     72  
          */
     73  
         public boolean supportsExtension(String extension) {
     74  9
             return true;
     75  
         }
     76  
     
     77  
         /**
     78  
          * Returns the phase that the analyzer is intended to run in.
     79  
          *
     80  
          * @return the phase that the analyzer is intended to run in.
     81  
          */
     82  
         public AnalysisPhase getAnalysisPhase() {
     83  6
             return ANALYSIS_PHASE;
     84  
         }
     85  
         //</editor-fold>
     86  
     
     87  
         /**
     88  
          * The HintAnalyzer uses knowledge about a dependency to add additional
     89  
          * information to help in identification of identifiers or vulnerabilities.
     90  
          *
     91  
          * @param dependency The dependency being analyzed
     92  
          * @param engine The scanning engine
     93  
          * @throws AnalysisException is thrown if there is an exception analyzing
     94  
          * the dependency.
     95  
          */
     96  
         @Override
     97  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     98  15
             final Evidence springTest1 = new Evidence("Manifest",
     99  
                     "Implementation-Title",
     100  
                     "Spring Framework",
     101  
                     Evidence.Confidence.HIGH);
     102  
     
     103  15
             final Evidence springTest2 = new Evidence("Manifest",
     104  
                     "Implementation-Title",
     105  
                     "org.springframework.core",
     106  
                     Evidence.Confidence.HIGH);
     107  
     
     108  15
             final Evidence springTest3 = new Evidence("Manifest",
     109  
                     "Bundle-Vendor",
     110  
                     "SpringSource",
     111  
                     Evidence.Confidence.HIGH);
     112  
     
     113  
     
     114  15
             Set<Evidence> evidence = dependency.getProductEvidence().getEvidence();
     115  15
             if (evidence.contains(springTest1) || evidence.contains(springTest2)) {
     116  2
                 dependency.getProductEvidence().addEvidence("hint analyzer", "product", "springsource_spring_framework", Evidence.Confidence.HIGH);
     117  2
                 dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "SpringSource", Evidence.Confidence.HIGH);
     118  2
                 dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "vmware", Evidence.Confidence.HIGH);
     119  
             }
     120  
     
     121  15
             evidence = dependency.getVendorEvidence().getEvidence();
     122  15
             if (evidence.contains(springTest3)) {
     123  2
                 dependency.getProductEvidence().addEvidence("hint analyzer", "product", "springsource_spring_framework", Evidence.Confidence.HIGH);
     124  2
                 dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "vmware", Evidence.Confidence.HIGH);
     125  
             }
     126  15
             final Iterator<Evidence> itr = dependency.getVendorEvidence().iterator();
     127  15
             final ArrayList<Evidence> newEntries = new ArrayList<Evidence>();
     128  121
             while (itr.hasNext()) {
     129  106
                 final Evidence e = itr.next();
     130  106
                 if ("sun".equalsIgnoreCase(e.getValue(false))) {
     131  2
                     final Evidence newEvidence = new Evidence(e.getSource() + " (hint)", e.getName(), "oracle", e.getConfidence());
     132  2
                     newEntries.add(newEvidence);
     133  2
                 } else if ("oracle".equalsIgnoreCase(e.getValue(false))) {
     134  0
                     final Evidence newEvidence = new Evidence(e.getSource() + " (hint)", e.getName(), "sun", e.getConfidence());
     135  0
                     newEntries.add(newEvidence);
     136  
                 }
     137  106
             }
     138  15
             for (Evidence e : newEntries) {
     139  2
                 dependency.getVendorEvidence().addEvidence(e);
     140  
             }
     141  
     
     142  
     
     143  15
         }
     144  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html new file mode 100644 index 000000000..e3e1d166a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html @@ -0,0 +1,1843 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.JarAnalyzer
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    JarAnalyzer
    80%
    324/403
    66%
    169/256
    6.241
    JarAnalyzer$ClassNameInformation
    80%
    17/21
    90%
    9/10
    6.241
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.File;
     22  
     import java.util.Enumeration;
     23  
     import java.util.logging.Level;
     24  
     import java.util.logging.Logger;
     25  
     import javax.xml.bind.JAXBException;
     26  
     import javax.xml.parsers.ParserConfigurationException;
     27  
     import org.owasp.dependencycheck.Engine;
     28  
     import org.owasp.dependencycheck.dependency.Dependency;
     29  
     import org.owasp.dependencycheck.dependency.Evidence;
     30  
     import org.owasp.dependencycheck.dependency.EvidenceCollection;
     31  
     import java.io.IOException;
     32  
     import java.io.InputStreamReader;
     33  
     import java.io.Reader;
     34  
     import java.util.ArrayList;
     35  
     import java.util.HashMap;
     36  
     import java.util.List;
     37  
     import java.util.Map;
     38  
     import java.util.Map.Entry;
     39  
     import java.util.Properties;
     40  
     import java.util.Set;
     41  
     import java.util.StringTokenizer;
     42  
     import java.util.jar.Attributes;
     43  
     import java.util.jar.JarEntry;
     44  
     import java.util.jar.JarFile;
     45  
     import java.util.jar.Manifest;
     46  
     import java.util.regex.Pattern;
     47  
     import java.util.zip.ZipEntry;
     48  
     import javax.xml.bind.JAXBContext;
     49  
     import javax.xml.bind.JAXBElement;
     50  
     import javax.xml.bind.Unmarshaller;
     51  
     import javax.xml.parsers.SAXParser;
     52  
     import javax.xml.parsers.SAXParserFactory;
     53  
     import javax.xml.transform.sax.SAXSource;
     54  
     import org.jsoup.Jsoup;
     55  
     import org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter;
     56  
     import org.owasp.dependencycheck.jaxb.pom.generated.License;
     57  
     import org.owasp.dependencycheck.jaxb.pom.generated.Model;
     58  
     import org.owasp.dependencycheck.jaxb.pom.generated.Organization;
     59  
     import org.owasp.dependencycheck.utils.NonClosingStream;
     60  
     import org.xml.sax.InputSource;
     61  
     import org.xml.sax.SAXException;
     62  
     import org.xml.sax.XMLFilter;
     63  
     import org.xml.sax.XMLReader;
     64  
     
     65  
     /**
     66  
      *
     67  
      * Used to load a JAR file and collect information that can be used to determine
     68  
      * the associated CPE.
     69  
      *
     70  
      * @author Jeremy Long (jeremy.long@owasp.org)
     71  
      */
     72  
     public class JarAnalyzer extends AbstractAnalyzer implements Analyzer {
     73  
     
     74  
         //<editor-fold defaultstate="collapsed" desc="Constants and Member Variables">
     75  
         /**
     76  
          * The system independent newline character.
     77  
          */
     78  1
         private static final String NEWLINE = System.getProperty("line.separator");
     79  
         /**
     80  
          * A list of values in the manifest to ignore as they only result in false
     81  
          * positives.
     82  
          */
     83  1
         private static final Set<String> IGNORE_VALUES = newHashSet(
     84  
                 "Sun Java System Application Server");
     85  
         /**
     86  
          * A list of elements in the manifest to ignore.
     87  
          */
     88  1
         private static final Set<String> IGNORE_KEYS = newHashSet(
     89  
                 "built-by",
     90  
                 "created-by",
     91  
                 "builtby",
     92  
                 "createdby",
     93  
                 "build-jdk",
     94  
                 "buildjdk",
     95  
                 "ant-version",
     96  
                 "antversion",
     97  
                 "import-package",
     98  
                 "export-package",
     99  
                 "importpackage",
     100  
                 "exportpackage",
     101  
                 "sealed",
     102  
                 "manifest-version",
     103  
                 "archiver-version",
     104  
                 "manifestversion",
     105  
                 "archiverversion",
     106  
                 "classpath",
     107  
                 "class-path",
     108  
                 "tool",
     109  
                 "bundle-manifestversion",
     110  
                 "bundlemanifestversion",
     111  
                 "include-resource");
     112  
         /**
     113  
          * item in some manifest, should be considered medium confidence.
     114  
          */
     115  
         private static final String BUNDLE_VERSION = "Bundle-Version"; //: 2.1.2
     116  
         /**
     117  
          * item in some manifest, should be considered medium confidence.
     118  
          */
     119  
         private static final String BUNDLE_DESCRIPTION = "Bundle-Description"; //: Apache Struts 2
     120  
         /**
     121  
          * item in some manifest, should be considered medium confidence.
     122  
          */
     123  
         private static final String BUNDLE_NAME = "Bundle-Name"; //: Struts 2 Core
     124  
         /**
     125  
          * item in some manifest, should be considered medium confidence.
     126  
          */
     127  
         private static final String BUNDLE_VENDOR = "Bundle-Vendor"; //: Apache Software Foundation
     128  
         /**
     129  
          * A pattern to detect HTML within text.
     130  
          */
     131  1
         private static final Pattern HTML_DETECTION_PATTERN = Pattern.compile("\\<[a-z]+.*/?\\>", Pattern.CASE_INSENSITIVE);
     132  
         /**
     133  
          * The unmarshaller used to parse the pom.xml from a JAR file.
     134  
          */
     135  
         private Unmarshaller pomUnmarshaller;
     136  
         //</editor-fold>
     137  
     
     138  
         /**
     139  
          * Constructs a new JarAnalyzer.
     140  
          */
     141  13
         public JarAnalyzer() {
     142  
             try {
     143  13
                 final JAXBContext jaxbContext = JAXBContext.newInstance("org.owasp.dependencycheck.jaxb.pom.generated");
     144  13
                 pomUnmarshaller = jaxbContext.createUnmarshaller();
     145  0
             } catch (JAXBException ex) { //guess we will just have a null pointer exception later...
     146  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.SEVERE, "Unable to load parser. See the log for more details.");
     147  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
     148  13
             }
     149  13
         }
     150  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     151  
         /**
     152  
          * The name of the analyzer.
     153  
          */
     154  
         private static final String ANALYZER_NAME = "Jar Analyzer";
     155  
         /**
     156  
          * The phase that this analyzer is intended to run in.
     157  
          */
     158  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
     159  
         /**
     160  
          * The set of file extensions supported by this analyzer.
     161  
          */
     162  1
         private static final Set<String> EXTENSIONS = newHashSet("jar", "war");
     163  
     
     164  
         /**
     165  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     166  
          *
     167  
          * @return a list of file EXTENSIONS supported by this analyzer.
     168  
          */
     169  
         public Set<String> getSupportedExtensions() {
     170  146
             return EXTENSIONS;
     171  
         }
     172  
     
     173  
         /**
     174  
          * Returns the name of the analyzer.
     175  
          *
     176  
          * @return the name of the analyzer.
     177  
          */
     178  
         public String getName() {
     179  10
             return ANALYZER_NAME;
     180  
         }
     181  
     
     182  
         /**
     183  
          * Returns whether or not this analyzer can process the given extension.
     184  
          *
     185  
          * @param extension the file extension to test for support.
     186  
          * @return whether or not the specified file extension is supported by this
     187  
          * analyzer.
     188  
          */
     189  
         public boolean supportsExtension(String extension) {
     190  142
             return EXTENSIONS.contains(extension);
     191  
         }
     192  
     
     193  
         /**
     194  
          * Returns the phase that the analyzer is intended to run in.
     195  
          *
     196  
          * @return the phase that the analyzer is intended to run in.
     197  
          */
     198  
         public AnalysisPhase getAnalysisPhase() {
     199  6
             return ANALYSIS_PHASE;
     200  
         }
     201  
         //</editor-fold>
     202  
     
     203  
         /**
     204  
          * Loads a specified JAR file and collects information from the manifest and
     205  
          * checksums to identify the correct CPE information.
     206  
          *
     207  
          * @param dependency the dependency to analyze.
     208  
          * @param engine the engine that is scanning the dependencies
     209  
          * @throws AnalysisException is thrown if there is an error reading the JAR
     210  
          * file.
     211  
          */
     212  
         @Override
     213  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     214  
             try {
     215  18
                 final ArrayList<ClassNameInformation> classNames = collectClassNames(dependency);
     216  18
                 final String fileName = dependency.getFileName().toLowerCase();
     217  18
                 if (classNames.isEmpty()
     218  
                         && (fileName.endsWith("-sources.jar")
     219  
                         || fileName.endsWith("-javadoc.jar")
     220  
                         || fileName.endsWith("-src.jar")
     221  
                         || fileName.endsWith("-doc.jar"))) {
     222  0
                     engine.getDependencies().remove(dependency);
     223  
                 }
     224  18
                 final boolean hasManifest = parseManifest(dependency, classNames);
     225  18
                 final boolean hasPOM = analyzePOM(dependency, classNames);
     226  18
                 final boolean addPackagesAsEvidence = !(hasManifest && hasPOM);
     227  18
                 analyzePackageNames(classNames, dependency, addPackagesAsEvidence);
     228  0
             } catch (IOException ex) {
     229  0
                 throw new AnalysisException("Exception occurred reading the JAR file.", ex);
     230  18
             }
     231  18
         }
     232  
     
     233  
         /**
     234  
          * Attempts to find a pom.xml within the JAR file. If found it extracts
     235  
          * information and adds it to the evidence. This will attempt to interpolate
     236  
          * the strings contained within the pom.properties if one exists.
     237  
          *
     238  
          * @param dependency the dependency being analyzed
     239  
          * @param classes a collection of class name information
     240  
          * @throws AnalysisException is thrown if there is an exception parsing the
     241  
          * pom
     242  
          * @return whether or not evidence was added to the dependency
     243  
          */
     244  
         protected boolean analyzePOM(Dependency dependency, ArrayList<ClassNameInformation> classes) throws AnalysisException {
     245  18
             boolean foundSomething = false;
     246  
             final JarFile jar;
     247  
             try {
     248  18
                 jar = new JarFile(dependency.getActualFilePath());
     249  0
             } catch (IOException ex) {
     250  0
                 final String msg = String.format("Unable to read JarFile '%s'.", dependency.getActualFilePath());
     251  0
                 final AnalysisException ax = new AnalysisException(msg, ex);
     252  0
                 dependency.getAnalysisExceptions().add(ax);
     253  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
     254  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
     255  0
                 return false;
     256  18
             }
     257  
             List<String> pomEntries;
     258  
             try {
     259  18
                 pomEntries = retrievePomListing(jar);
     260  0
             } catch (IOException ex) {
     261  0
                 final String msg = String.format("Unable to read Jar file entries in '%s'.", dependency.getActualFilePath());
     262  0
                 final AnalysisException ax = new AnalysisException(msg, ex);
     263  0
                 dependency.getAnalysisExceptions().add(ax);
     264  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
     265  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.INFO, msg, ex);
     266  0
                 return false;
     267  18
             }
     268  18
             if (pomEntries.isEmpty()) {
     269  11
                 return false;
     270  
             }
     271  7
             if (pomEntries.size() > 1) { //need to sort out which pom we will use
     272  0
                 pomEntries = filterPomEntries(pomEntries, classes);
     273  
             }
     274  7
             for (String path : pomEntries) {
     275  7
                 Properties pomProperties = null;
     276  
                 try {
     277  7
                     pomProperties = retrievePomProperties(path, jar);
     278  0
                 } catch (IOException ex) {
     279  0
                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINEST, "ignore this, failed reading a non-existent pom.properties", ex);
     280  7
                 }
     281  7
                 Model pom = null;
     282  
                 try {
     283  7
                     pom = retrievePom(path, jar);
     284  0
                 } catch (JAXBException ex) {
     285  0
                     final String msg = String.format("Unable to parse POM '%s' in '%s'",
     286  
                             path, dependency.getFilePath());
     287  0
                     final AnalysisException ax = new AnalysisException(msg, ex);
     288  0
                     dependency.getAnalysisExceptions().add(ax);
     289  0
                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ax);
     290  0
                 } catch (IOException ex) {
     291  0
                     final String msg = String.format("Unable to retrieve POM '%s' in '%s'",
     292  
                             path, dependency.getFilePath());
     293  0
                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ex);
     294  7
                 }
     295  7
                 foundSomething = setPomEvidence(dependency, pom, pomProperties, classes) || foundSomething;
     296  7
             }
     297  7
             return foundSomething;
     298  
         }
     299  
     
     300  
         /**
     301  
          * Given a path to a pom.xml within a JarFile, this method attempts to load
     302  
          * a sibling pom.properties if one exists.
     303  
          *
     304  
          * @param path the path to the pom.xml within the JarFile
     305  
          * @param jar the JarFile to load the pom.properties from
     306  
          * @return a Properties object or null if no pom.properties was found
     307  
          * @throws IOException thrown if there is an exception reading the
     308  
          * pom.properties
     309  
          */
     310  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(value = "OS_OPEN_STREAM",
     311  
                 justification = "The reader is closed by closing the zipEntry")
     312  
         private Properties retrievePomProperties(String path, final JarFile jar) throws IOException {
     313  7
             Properties pomProperties = null;
     314  7
             final String propPath = path.substring(0, path.length() - 7) + "pom.properies";
     315  7
             final ZipEntry propEntry = jar.getEntry(propPath);
     316  7
             if (propEntry != null) {
     317  0
                 final Reader reader = new InputStreamReader(jar.getInputStream(propEntry), "UTF-8");
     318  0
                 pomProperties = new Properties();
     319  0
                 pomProperties.load(reader);
     320  
             }
     321  7
             return pomProperties;
     322  
         }
     323  
     
     324  
         /**
     325  
          * Searches a JarFile for pom.xml entries and returns a listing of these
     326  
          * entries.
     327  
          *
     328  
          * @param jar the JarFile to search
     329  
          * @return a list of pom.xml entries
     330  
          * @throws IOException thrown if there is an exception reading a JarEntryf
     331  
          */
     332  
         private List<String> retrievePomListing(final JarFile jar) throws IOException {
     333  18
             final List<String> pomEntries = new ArrayList<String>();
     334  18
             final Enumeration<JarEntry> entries = jar.entries();
     335  7564
             while (entries.hasMoreElements()) {
     336  7546
                 final JarEntry entry = entries.nextElement();
     337  7546
                 final String entryName = (new File(entry.getName())).getName().toLowerCase();
     338  7546
                 if (!entry.isDirectory() && "pom.xml".equals(entryName)) {
     339  7
                     pomEntries.add(entry.getName());
     340  
                 }
     341  7546
             }
     342  18
             return pomEntries;
     343  
         }
     344  
     
     345  
         /**
     346  
          * Retrieves the specified POM from a jar file and converts it to a Model.
     347  
          *
     348  
          * @param path the path to the pom.xml file within the jar file
     349  
          * @param jar the jar file to extract the pom from
     350  
          * @return returns a
     351  
          * {@link org.owasp.dependencycheck.analyzer.pom.generated.Model} object
     352  
          * @throws JAXBException is thrown if there is an exception parsing the pom
     353  
          * @throws IOException is thrown if there is an exception reading the jar
     354  
          */
     355  
         private Model retrievePom(String path, JarFile jar) throws JAXBException, IOException {
     356  7
             final ZipEntry entry = jar.getEntry(path);
     357  7
             if (entry != null) { //should never be null
     358  7
                 Model m = null;
     359  
                 try {
     360  7
                     final XMLFilter filter = new MavenNamespaceFilter();
     361  7
                     final SAXParserFactory spf = SAXParserFactory.newInstance();
     362  7
                     final SAXParser sp = spf.newSAXParser();
     363  7
                     final XMLReader xr = sp.getXMLReader();
     364  7
                     filter.setParent(xr);
     365  7
                     final NonClosingStream stream = new NonClosingStream(jar.getInputStream(entry));
     366  7
                     final InputStreamReader reader = new InputStreamReader(stream, "UTF-8");
     367  7
                     final InputSource xml = new InputSource(reader);
     368  7
                     final SAXSource source = new SAXSource(filter, xml);
     369  7
                     final JAXBElement<Model> el = pomUnmarshaller.unmarshal(source, Model.class);
     370  7
                     m = el.getValue();
     371  0
                 } catch (ParserConfigurationException ex) {
     372  0
                     final String msg = String.format("Unable to parse pom '%s' in jar '%s'", path, jar.getName());
     373  0
                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ex);
     374  0
                 } catch (SAXException ex) {
     375  0
                     final String msg = String.format("Unable to parse pom '%s' in jar '%s'", path, jar.getName());
     376  0
                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ex);
     377  7
                 }
     378  7
                 return m;
     379  
             }
     380  0
             return null;
     381  
         }
     382  
     
     383  
         /**
     384  
          * Sets evidence from the pom on the supplied dependency.
     385  
          *
     386  
          * @param dependency the dependency to set data on
     387  
          * @param pom the information from the pom
     388  
          * @param pomProperties the pom properties file (null if none exists)
     389  
          * @param classes a collection of ClassNameInformation - containing data
     390  
          * about the fully qualified class names within the JAR file being analyzed
     391  
          * @return true if there was evidence within the pom that we could use;
     392  
          * otherwise false
     393  
          */
     394  
         private boolean setPomEvidence(Dependency dependency, Model pom, Properties pomProperties, ArrayList<ClassNameInformation> classes) {
     395  7
             boolean foundSomething = false;
     396  7
             if (pom == null) {
     397  0
                 return foundSomething;
     398  
             }
     399  7
             String groupid = interpolateString(pom.getGroupId(), pomProperties);
     400  7
             if (groupid != null && !groupid.isEmpty()) {
     401  4
                 if (groupid.startsWith("org.") || groupid.startsWith("com.")) {
     402  3
                     groupid = groupid.substring(4);
     403  
                 }
     404  4
                 foundSomething = true;
     405  4
                 dependency.getVendorEvidence().addEvidence("pom", "groupid", groupid, Evidence.Confidence.HIGH);
     406  4
                 dependency.getProductEvidence().addEvidence("pom", "groupid", groupid, Evidence.Confidence.LOW);
     407  4
                 addMatchingValues(classes, groupid, dependency.getVendorEvidence());
     408  4
                 addMatchingValues(classes, groupid, dependency.getProductEvidence());
     409  
             }
     410  7
             String artifactid = interpolateString(pom.getArtifactId(), pomProperties);
     411  7
             if (artifactid != null && !artifactid.isEmpty()) {
     412  7
                 if (artifactid.startsWith("org.") || artifactid.startsWith("com.")) {
     413  0
                     artifactid = artifactid.substring(4);
     414  
                 }
     415  7
                 foundSomething = true;
     416  7
                 dependency.getProductEvidence().addEvidence("pom", "artifactid", artifactid, Evidence.Confidence.HIGH);
     417  7
                 dependency.getVendorEvidence().addEvidence("pom", "artifactid", artifactid, Evidence.Confidence.LOW);
     418  7
                 addMatchingValues(classes, artifactid, dependency.getVendorEvidence());
     419  7
                 addMatchingValues(classes, artifactid, dependency.getProductEvidence());
     420  
             }
     421  
             //version
     422  7
             final String version = interpolateString(pom.getVersion(), pomProperties);
     423  7
             if (version != null && !version.isEmpty()) {
     424  2
                 foundSomething = true;
     425  2
                 dependency.getVersionEvidence().addEvidence("pom", "version", version, Evidence.Confidence.HIGHEST);
     426  
             }
     427  
             // org name
     428  7
             final Organization org = pom.getOrganization();
     429  7
             if (org != null && org.getName() != null) {
     430  0
                 foundSomething = true;
     431  0
                 final String orgName = interpolateString(org.getName(), pomProperties);
     432  0
                 if (orgName != null && !orgName.isEmpty()) {
     433  0
                     dependency.getVendorEvidence().addEvidence("pom", "organization name", orgName, Evidence.Confidence.HIGH);
     434  0
                     addMatchingValues(classes, orgName, dependency.getVendorEvidence());
     435  
                 }
     436  
             }
     437  
             //pom name
     438  7
             final String pomName = interpolateString(pom.getName(), pomProperties);
     439  7
             if (pomName != null && !pomName.isEmpty()) {
     440  7
                 foundSomething = true;
     441  7
                 dependency.getProductEvidence().addEvidence("pom", "name", pomName, Evidence.Confidence.HIGH);
     442  7
                 dependency.getVendorEvidence().addEvidence("pom", "name", pomName, Evidence.Confidence.HIGH);
     443  7
                 addMatchingValues(classes, pomName, dependency.getVendorEvidence());
     444  7
                 addMatchingValues(classes, pomName, dependency.getProductEvidence());
     445  
             }
     446  
     
     447  
             //Description
     448  7
             if (pom.getDescription() != null) {
     449  3
                 foundSomething = true;
     450  3
                 final String description = interpolateString(pom.getDescription(), pomProperties);
     451  3
                 if (description != null && !description.isEmpty()) {
     452  3
                     addDescription(dependency, description, "pom", "description");
     453  3
                     addMatchingValues(classes, description, dependency.getVendorEvidence());
     454  3
                     addMatchingValues(classes, description, dependency.getProductEvidence());
     455  
                 }
     456  
             }
     457  
     
     458  
             //license
     459  7
             if (pom.getLicenses() != null) {
     460  1
                 String license = null;
     461  1
                 for (License lic : pom.getLicenses().getLicense()) {
     462  1
                     String tmp = null;
     463  1
                     if (lic.getName() != null) {
     464  1
                         tmp = interpolateString(lic.getName(), pomProperties);
     465  
                     }
     466  1
                     if (lic.getUrl() != null) {
     467  1
                         if (tmp == null) {
     468  0
                             tmp = interpolateString(lic.getUrl(), pomProperties);
     469  
                         } else {
     470  1
                             tmp += ": " + interpolateString(lic.getUrl(), pomProperties);
     471  
                         }
     472  
                     }
     473  1
                     if (tmp == null) {
     474  0
                         continue;
     475  
                     }
     476  1
                     if (HTML_DETECTION_PATTERN.matcher(tmp).find()) {
     477  0
                         tmp = Jsoup.parse(tmp).text();
     478  
                     }
     479  1
                     if (license == null) {
     480  1
                         license = tmp;
     481  
                     } else {
     482  0
                         license += "\n" + tmp;
     483  
                     }
     484  1
                 }
     485  1
                 if (license != null) {
     486  1
                     dependency.setLicense(license);
     487  
                 }
     488  
             }
     489  7
             return foundSomething;
     490  
         }
     491  
     
     492  
         /**
     493  
          * Analyzes the path information of the classes contained within the
     494  
          * JarAnalyzer to try and determine possible vendor or product names. If any
     495  
          * are found they are stored in the packageVendor and packageProduct
     496  
          * hashSets.
     497  
          *
     498  
          * @param classNames a list of class names
     499  
          * @param dependency a dependency to analyze
     500  
          * @param addPackagesAsEvidence a flag indicating whether or not package
     501  
          * names should be added as evidence.
     502  
          */
     503  
         protected void analyzePackageNames(ArrayList<ClassNameInformation> classNames,
     504  
                 Dependency dependency, boolean addPackagesAsEvidence) {
     505  18
             final HashMap<String, Integer> vendorIdentifiers = new HashMap<String, Integer>();
     506  18
             final HashMap<String, Integer> productIdentifiers = new HashMap<String, Integer>();
     507  18
             analyzeFullyQualifiedClassNames(classNames, vendorIdentifiers, productIdentifiers);
     508  
     
     509  18
             final int classCount = classNames.size();
     510  18
             final EvidenceCollection vendor = dependency.getVendorEvidence();
     511  18
             final EvidenceCollection product = dependency.getProductEvidence();
     512  
     
     513  18
             for (Map.Entry<String, Integer> entry : vendorIdentifiers.entrySet()) {
     514  182
                 final float ratio = entry.getValue() / (float) classCount;
     515  182
                 if (ratio > 0.5) {
     516  
                     //TODO remove weighting
     517  36
                     vendor.addWeighting(entry.getKey());
     518  36
                     if (addPackagesAsEvidence && entry.getKey().length() > 1) {
     519  22
                         vendor.addEvidence("jar", "package", entry.getKey(), Evidence.Confidence.LOW);
     520  
                     }
     521  
                 }
     522  182
             }
     523  18
             for (Map.Entry<String, Integer> entry : productIdentifiers.entrySet()) {
     524  3772
                 final float ratio = entry.getValue() / (float) classCount;
     525  3772
                 if (ratio > 0.5) {
     526  21
                     product.addWeighting(entry.getKey());
     527  21
                     if (addPackagesAsEvidence && entry.getKey().length() > 1) {
     528  11
                         product.addEvidence("jar", "package", entry.getKey(), Evidence.Confidence.LOW);
     529  
                     }
     530  
                 }
     531  3772
             }
     532  18
         }
     533  
     
     534  
         /**
     535  
          * <p>Reads the manifest from the JAR file and collects the entries. Some
     536  
          * vendorKey entries are:</p> <ul><li>Implementation Title</li>
     537  
          * <li>Implementation Version</li> <li>Implementation Vendor</li>
     538  
          * <li>Implementation VendorId</li> <li>Bundle Name</li> <li>Bundle
     539  
          * Version</li> <li>Bundle Vendor</li> <li>Bundle Description</li> <li>Main
     540  
          * Class</li> </ul>
     541  
          * However, all but a handful of specific entries are read in.
     542  
          *
     543  
          * @param dependency A reference to the dependency
     544  
          * @param classInformation a collection of class information
     545  
          * @return whether evidence was identified parsing the manifest
     546  
          * @throws IOException if there is an issue reading the JAR file
     547  
          */
     548  
         protected boolean parseManifest(Dependency dependency, ArrayList<ClassNameInformation> classInformation) throws IOException {
     549  18
             boolean foundSomething = false;
     550  18
             JarFile jar = null;
     551  
             try {
     552  18
                 jar = new JarFile(dependency.getActualFilePath());
     553  
     
     554  18
                 final Manifest manifest = jar.getManifest();
     555  18
                 if (manifest == null) {
     556  
                     //don't log this for javadoc or sources jar files
     557  0
                     if (!dependency.getFileName().toLowerCase().endsWith("-sources.jar")
     558  
                             && !dependency.getFileName().toLowerCase().endsWith("-javadoc.jar")
     559  
                             && !dependency.getFileName().toLowerCase().endsWith("-src.jar")
     560  
                             && !dependency.getFileName().toLowerCase().endsWith("-doc.jar")) {
     561  0
                         Logger.getLogger(JarAnalyzer.class.getName()).log(Level.INFO,
     562  
                                 String.format("Jar file '%s' does not contain a manifest.",
     563  
                                 dependency.getFileName()));
     564  
                     }
     565  0
                     return false;
     566  
                 }
     567  18
                 final Attributes atts = manifest.getMainAttributes();
     568  
     
     569  18
                 final EvidenceCollection vendorEvidence = dependency.getVendorEvidence();
     570  18
                 final EvidenceCollection productEvidence = dependency.getProductEvidence();
     571  18
                 final EvidenceCollection versionEvidence = dependency.getVersionEvidence();
     572  
     
     573  18
                 final String source = "Manifest";
     574  
     
     575  18
                 for (Entry<Object, Object> entry : atts.entrySet()) {
     576  260
                     String key = entry.getKey().toString();
     577  260
                     String value = atts.getValue(key);
     578  260
                     if (HTML_DETECTION_PATTERN.matcher(value).find()) {
     579  0
                         value = Jsoup.parse(value).text();
     580  
                     }
     581  260
                     if (IGNORE_VALUES.contains(value)) {
     582  0
                         continue;
     583  260
                     } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_TITLE.toString())) {
     584  9
                         foundSomething = true;
     585  9
                         productEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     586  9
                         addMatchingValues(classInformation, value, productEvidence);
     587  251
                     } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VERSION.toString())) {
     588  12
                         foundSomething = true;
     589  12
                         versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     590  239
                     } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR.toString())) {
     591  8
                         foundSomething = true;
     592  8
                         vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     593  8
                         addMatchingValues(classInformation, value, vendorEvidence);
     594  231
                     } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR_ID.toString())) {
     595  5
                         foundSomething = true;
     596  5
                         vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     597  5
                         addMatchingValues(classInformation, value, vendorEvidence);
     598  226
                     } else if (key.equalsIgnoreCase(BUNDLE_DESCRIPTION)) {
     599  7
                         foundSomething = true;
     600  7
                         addDescription(dependency, value, "manifest", key);
     601  
                         //productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     602  7
                         addMatchingValues(classInformation, value, productEvidence);
     603  219
                     } else if (key.equalsIgnoreCase(BUNDLE_NAME)) {
     604  10
                         foundSomething = true;
     605  10
                         productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     606  10
                         addMatchingValues(classInformation, value, productEvidence);
     607  209
                     } else if (key.equalsIgnoreCase(BUNDLE_VENDOR)) {
     608  8
                         foundSomething = true;
     609  8
                         vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     610  8
                         addMatchingValues(classInformation, value, vendorEvidence);
     611  201
                     } else if (key.equalsIgnoreCase(BUNDLE_VERSION)) {
     612  10
                         foundSomething = true;
     613  10
                         versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     614  191
                     } else if (key.equalsIgnoreCase(Attributes.Name.MAIN_CLASS.toString())) {
     615  5
                         continue;
     616  
                         //skipping main class as if this has important information to add
     617  
                         // it will be added during class name analysis...  if other fields
     618  
                         // have the information from the class name then they will get added...
     619  
     //                    foundSomething = true;
     620  
     //                    productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     621  
     //                    vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     622  
     //                    addMatchingValues(classInformation, value, vendorEvidence);
     623  
     //                    addMatchingValues(classInformation, value, productEvidence);
     624  
                     } else {
     625  186
                         key = key.toLowerCase();
     626  
     
     627  186
                         if (!IGNORE_KEYS.contains(key)
     628  
                                 && !key.endsWith("jdk")
     629  
                                 && !key.contains("lastmodified")
     630  
                                 && !key.endsWith("package")
     631  
                                 && !key.endsWith("classpath")
     632  
                                 && !key.endsWith("class-path")
     633  
                                 && !key.endsWith("-scm") //todo change this to a regex?
     634  
                                 && !key.startsWith("scm-")
     635  
                                 && !isImportPackage(key, value)
     636  
                                 && !isPackage(key, value)) {
     637  
     
     638  59
                             foundSomething = true;
     639  59
                             if (key.contains("version")) {
     640  10
                                 if (key.contains("specification")) {
     641  8
                                     versionEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
     642  
                                 } else {
     643  2
                                     versionEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     644  
                                 }
     645  
     
     646  49
                             } else if (key.contains("title")) {
     647  8
                                 productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     648  8
                                 addMatchingValues(classInformation, value, productEvidence);
     649  41
                             } else if (key.contains("vendor")) {
     650  5
                                 if (key.contains("specification")) {
     651  5
                                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
     652  
                                 } else {
     653  0
                                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     654  0
                                     addMatchingValues(classInformation, value, vendorEvidence);
     655  
                                 }
     656  36
                             } else if (key.contains("name")) {
     657  13
                                 productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     658  13
                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     659  13
                                 addMatchingValues(classInformation, value, vendorEvidence);
     660  13
                                 addMatchingValues(classInformation, value, productEvidence);
     661  23
                             } else if (key.contains("license")) {
     662  6
                                 addLicense(dependency, value);
     663  
                             } else {
     664  17
                                 if (key.contains("description")) {
     665  0
                                     addDescription(dependency, value, "manifest", key);
     666  
                                 } else {
     667  17
                                     productEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
     668  17
                                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
     669  17
                                     addMatchingValues(classInformation, value, vendorEvidence);
     670  17
                                     addMatchingValues(classInformation, value, productEvidence);
     671  17
                                     if (value.matches(".*\\d.*")) {
     672  6
                                         final StringTokenizer tokenizer = new StringTokenizer(value, " ");
     673  30
                                         while (tokenizer.hasMoreElements()) {
     674  24
                                             final String s = tokenizer.nextToken();
     675  24
                                             if (s.matches("^[0-9.]+$")) {
     676  0
                                                 versionEvidence.addEvidence(source, key, s, Evidence.Confidence.LOW);
     677  
                                             }
     678  24
                                         }
     679  
                                     }
     680  
                                 }
     681  
                             }
     682  
                         }
     683  
                     }
     684  255
                 }
     685  
             } finally {
     686  18
                 if (jar != null) {
     687  18
                     jar.close();
     688  
                 }
     689  
             }
     690  18
             return foundSomething;
     691  
         }
     692  
     
     693  
         /**
     694  
          * Adds a description to the given dependency.
     695  
          *
     696  
          * @param dependency a dependency
     697  
          * @param description the description
     698  
          * @param source the source of the evidence
     699  
          * @param key the "name" of the evidence
     700  
          */
     701  
         private void addDescription(Dependency dependency, String description, String source, String key) {
     702  10
             if (dependency.getDescription() == null) {
     703  9
                 dependency.setDescription(description);
     704  
             }
     705  
             String desc;
     706  10
             if (HTML_DETECTION_PATTERN.matcher(description).find()) {
     707  0
                 desc = Jsoup.parse(description).text();
     708  
             } else {
     709  10
                 desc = description;
     710  
             }
     711  10
             dependency.setDescription(desc);
     712  10
             if (desc.length() > 100) {
     713  2
                 final int posSuchAs = desc.toLowerCase().indexOf("such as ", 100);
     714  2
                 final int posLike = desc.toLowerCase().indexOf("like ", 100);
     715  2
                 int pos = -1;
     716  2
                 if (posLike > 0 && posSuchAs > 0) {
     717  0
                     pos = posLike > posSuchAs ? posLike : posSuchAs;
     718  2
                 } else if (posLike > 0) {
     719  2
                     pos = posLike;
     720  0
                 } else if (posSuchAs > 0) {
     721  0
                     pos = posSuchAs;
     722  
                 }
     723  2
                 String descToUse = desc;
     724  2
                 if (pos > 0) {
     725  2
                     final StringBuilder sb = new StringBuilder(pos + 3);
     726  2
                     sb.append(desc.substring(0, pos));
     727  2
                     sb.append("...");
     728  2
                     descToUse = sb.toString();
     729  
                 }
     730  2
                 dependency.getProductEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
     731  2
                 dependency.getVendorEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
     732  2
             } else {
     733  8
                 dependency.getProductEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
     734  8
                 dependency.getVendorEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
     735  
             }
     736  10
         }
     737  
     
     738  
         /**
     739  
          * Adds a license to the given dependency.
     740  
          *
     741  
          * @param d a dependency
     742  
          * @param license the license
     743  
          */
     744  
         private void addLicense(Dependency d, String license) {
     745  6
             if (d.getLicense() == null) {
     746  6
                 d.setLicense(license);
     747  0
             } else if (!d.getLicense().contains(license)) {
     748  0
                 d.setLicense(d.getLicense() + NEWLINE + license);
     749  
             }
     750  6
         }
     751  
     
     752  
         /**
     753  
          * The initialize method does nothing for this Analyzer.
     754  
          */
     755  
         public void initialize() {
     756  
             //do nothing
     757  3
         }
     758  
     
     759  
         /**
     760  
          * The close method does nothing for this Analyzer.
     761  
          */
     762  
         public void close() {
     763  
             //do nothing
     764  3
         }
     765  
     
     766  
         /**
     767  
          * <p>A utility function that will interpolate strings based on values given
     768  
          * in the properties file. It will also interpolate the strings contained
     769  
          * within the properties file so that properties can reference other
     770  
          * properties.</p>
     771  
          * <p><b>Note:</b> if there is no property found the reference will be
     772  
          * removed. In other words, if the interpolated string will be replaced with
     773  
          * an empty string.
     774  
          * </p>
     775  
          * <p>Example:</p>
     776  
          * <code>
     777  
          * Properties p = new Properties();
     778  
          * p.setProperty("key", "value");
     779  
          * String s = interpolateString("'${key}' and '${nothing}'", p);
     780  
          * System.out.println(s);
     781  
          * </code>
     782  
          * <p>Will result in:</p>
     783  
          * <code>
     784  
          * 'value' and ''
     785  
          * </code>
     786  
          *
     787  
          * @param text the string that contains references to properties.
     788  
          * @param properties a collection of properties that may be referenced
     789  
          * within the text.
     790  
          * @return the interpolated text.
     791  
          */
     792  
         protected String interpolateString(String text, Properties properties) {
     793  40
             Properties props = properties;
     794  40
             if (text == null) {
     795  8
                 return text;
     796  
             }
     797  32
             if (props == null) {
     798  25
                 props = new Properties();
     799  
             }
     800  
     
     801  32
             final int pos = text.indexOf("${");
     802  32
             if (pos < 0) {
     803  29
                 return text;
     804  
             }
     805  3
             final int end = text.indexOf("}");
     806  3
             if (end < pos) {
     807  0
                 return text;
     808  
             }
     809  
     
     810  3
             final String propName = text.substring(pos + 2, end);
     811  3
             String propValue = interpolateString(props.getProperty(propName), props);
     812  3
             if (propValue == null) {
     813  0
                 propValue = "";
     814  
             }
     815  3
             final StringBuilder sb = new StringBuilder(propValue.length() + text.length());
     816  3
             sb.append(text.subSequence(0, pos));
     817  3
             sb.append(propValue);
     818  3
             sb.append(text.substring(end + 1));
     819  3
             return interpolateString(sb.toString(), props); //yes yes, this should be a loop...
     820  
         }
     821  
     
     822  
         /**
     823  
          * Determines if the key value pair from the manifest is for an "import"
     824  
          * type entry for package names.
     825  
          *
     826  
          * @param key the key from the manifest
     827  
          * @param value the value from the manifest
     828  
          * @return true or false depending on if it is believed the entry is an
     829  
          * "import" entry
     830  
          */
     831  
         private boolean isImportPackage(String key, String value) {
     832  61
             final Pattern packageRx = Pattern.compile("^((([a-zA-Z_#\\$0-9]\\.)+)\\s*\\;\\s*)+$");
     833  61
             if (packageRx.matcher(value).matches()) {
     834  0
                 return (key.contains("import") || key.contains("include"));
     835  
             }
     836  61
             return false;
     837  
         }
     838  
     
     839  
         /**
     840  
          * Cycles through an enumeration of JarEntries, contained within the
     841  
          * dependency, and returns a list of the class names. This does not include
     842  
          * core Java package names (i.e. java.* or javax.*).
     843  
          *
     844  
          * @param dependency the dependency being analyzed
     845  
          * @return an list of fully qualified class names
     846  
          */
     847  
         private ArrayList<ClassNameInformation> collectClassNames(Dependency dependency) {
     848  18
             final ArrayList<ClassNameInformation> classNames = new ArrayList<ClassNameInformation>();
     849  18
             JarFile jar = null;
     850  
             try {
     851  18
                 jar = new JarFile(dependency.getActualFilePath());
     852  18
                 final Enumeration entries = jar.entries();
     853  7564
                 while (entries.hasMoreElements()) {
     854  7546
                     final JarEntry entry = (JarEntry) entries.nextElement();
     855  7546
                     final String name = entry.getName().toLowerCase();
     856  
                     //no longer stripping "|com\\.sun" - there are some com.sun jar files with CVEs.
     857  7546
                     if (name.endsWith(".class") && !name.matches("^javax?\\..*$")) {
     858  6375
                         final ClassNameInformation className = new ClassNameInformation(name.substring(0, name.length() - 6));
     859  6375
                         classNames.add(className);
     860  
                     }
     861  7546
                 }
     862  0
             } catch (IOException ex) {
     863  0
                 final String msg = String.format("Unable to open jar file '%s'.", dependency.getFileName());
     864  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
     865  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
     866  
             } finally {
     867  18
                 if (jar != null) {
     868  
                     try {
     869  18
                         jar.close();
     870  0
                     } catch (IOException ex) {
     871  0
                         Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     872  18
                     }
     873  
                 }
     874  
             }
     875  18
             return classNames;
     876  
         }
     877  
     
     878  
         /**
     879  
          * Cycles through the list of class names and places the package levels 0-3
     880  
          * into the provided maps for vendor and product. This is helpful when
     881  
          * analyzing vendor/product as many times this is included in the package
     882  
          * name.
     883  
          *
     884  
          * @param classNames a list of class names
     885  
          * @param vendor HashMap of possible vendor names from package names (e.g.
     886  
          * owasp)
     887  
          * @param product HashMap of possible product names from package names (e.g.
     888  
          * dependencycheck)
     889  
          */
     890  
         private void analyzeFullyQualifiedClassNames(ArrayList<ClassNameInformation> classNames,
     891  
                 HashMap<String, Integer> vendor, HashMap<String, Integer> product) {
     892  18
             for (ClassNameInformation entry : classNames) {
     893  6375
                 final ArrayList<String> list = entry.getPackageStructure();
     894  6375
                 addEntry(vendor, list.get(0));
     895  
     
     896  6375
                 if (list.size() == 2) {
     897  0
                     addEntry(product, list.get(1));
     898  
                 }
     899  6375
                 if (list.size() == 3) {
     900  1991
                     addEntry(vendor, list.get(1));
     901  1991
                     addEntry(product, list.get(1));
     902  1991
                     addEntry(product, list.get(2));
     903  
                 }
     904  6375
                 if (list.size() >= 4) {
     905  4384
                     addEntry(vendor, list.get(1));
     906  4384
                     addEntry(vendor, list.get(2));
     907  4384
                     addEntry(product, list.get(1));
     908  4384
                     addEntry(product, list.get(2));
     909  4384
                     addEntry(product, list.get(3));
     910  
                 }
     911  6375
             }
     912  18
         }
     913  
     
     914  
         /**
     915  
          * Adds an entry to the specified collection and sets the Integer (e.g. the
     916  
          * count) to 1. If the entry already exists in the collection then the
     917  
          * Integer is incremented by 1.
     918  
          *
     919  
          * @param collection a collection of strings and their occurrence count
     920  
          * @param key the key to add to the collection
     921  
          */
     922  
         private void addEntry(HashMap<String, Integer> collection, String key) {
     923  34268
             if (collection.containsKey(key)) {
     924  30314
                 collection.put(key, collection.get(key) + 1);
     925  
             } else {
     926  3954
                 collection.put(key, 1);
     927  
             }
     928  34268
         }
     929  
     
     930  
         /**
     931  
          * Cycles through the collection of class name information to see if parts
     932  
          * of the package names are contained in the provided value. If found, it
     933  
          * will be added as the HIGHEST confidence evidence because we have more
     934  
          * then one source corroborating the value.
     935  
          *
     936  
          * @param classes a collection of class name information
     937  
          * @param value the value to check to see if it contains a package name
     938  
          * @param evidence the evidence collection to add new entries too
     939  
          */
     940  
         private void addMatchingValues(ArrayList<ClassNameInformation> classes, String value, EvidenceCollection evidence) {
     941  157
             if (value == null || value.isEmpty()) {
     942  0
                 return;
     943  
             }
     944  157
             final String text = value.toLowerCase();
     945  157
             for (ClassNameInformation cni : classes) {
     946  63174
                 for (String key : cni.getPackageStructure()) {
     947  231862
                     if (text.contains(key)) { //note, package structure elements are already lowercase.
     948  70531
                         evidence.addEvidence("jar", "package name", key, Evidence.Confidence.HIGHEST);
     949  
                     }
     950  
                 }
     951  
             }
     952  157
         }
     953  
     
     954  
         /**
     955  
          * <p><b>This is currently a failed implementation.</b> Part of the issue is
     956  
          * I was trying to solve the wrong problem. Instead of multiple POMs being
     957  
          * in the JAR to just add information about dependencies - I didn't realize
     958  
          * until later that I was looking at an uber-jar (aka fat-jar) that included
     959  
          * all of its dependencies.</p>
     960  
          * <p>I'm leaving this method in the source tree, entirely commented out
     961  
          * until a solution https://github.com/jeremylong/DependencyCheck/issues/11
     962  
          * has been implemented.</p>
     963  
          * <p>Takes a list of pom entries from a JAR file and attempts to filter it
     964  
          * down to the pom related to the jar (rather then the pom entry for a
     965  
          * dependency).</p>
     966  
          *
     967  
          * @param pomEntries a list of pom entries
     968  
          * @param classes a list of fully qualified classes from the JAR file
     969  
          * @return the list of pom entries that are associated with the jar being
     970  
          * analyzed rather then the dependent poms
     971  
          */
     972  
         private List<String> filterPomEntries(List<String> pomEntries, ArrayList<ClassNameInformation> classes) {
     973  0
             return pomEntries;
     974  
     //        final HashMap<String, Integer> usePoms = new HashMap<String, Integer>();
     975  
     //        final ArrayList<String> possiblePoms = new ArrayList<String>();
     976  
     //        for (String entry : pomEntries) {
     977  
     //            //todo validate that the starts with is correct... or does it start with a ./ or /?
     978  
     //            // is it different on different platforms?
     979  
     //            if (entry.startsWith("META-INF/maven/")) {
     980  
     //                //trim the meta-inf/maven and pom.xml...
     981  
     //                final String pomPath = entry.substring(15, entry.length() - 8).toLowerCase();
     982  
     //                final String[] parts = pomPath.split("/");
     983  
     //                if (parts == null || parts.length != 2) { //misplaced pom?
     984  
     //                    //TODO add logging to FINE
     985  
     //                    possiblePoms.add(entry);
     986  
     //                }
     987  
     //                parts[0] = parts[0].replace('.', '/');
     988  
     //                parts[1] = parts[1].replace('.', '/');
     989  
     //                for (ClassNameInformation cni : classes) {
     990  
     //                    final String name = cni.getName();
     991  
     //                    if (StringUtils.containsIgnoreCase(name, parts[0])) {
     992  
     //                        addEntry(usePoms, entry);
     993  
     //                    }
     994  
     //                    if (StringUtils.containsIgnoreCase(name, parts[1])) {
     995  
     //                        addEntry(usePoms, entry);
     996  
     //                    }
     997  
     //                }
     998  
     //            } else { // we have a JAR file with an incorrect POM layout...
     999  
     //                //TODO add logging to FINE
     1000  
     //                possiblePoms.add(entry);
     1001  
     //            }
     1002  
     //        }
     1003  
     //        List<String> retValue;
     1004  
     //        if (usePoms.isEmpty()) {
     1005  
     //            if (possiblePoms.isEmpty()) {
     1006  
     //                retValue = pomEntries;
     1007  
     //            } else {
     1008  
     //                retValue = possiblePoms;
     1009  
     //            }
     1010  
     //        } else {
     1011  
     //            retValue = new ArrayList<String>();
     1012  
     //            int maxCount = 0;
     1013  
     //            for (Map.Entry<String, Integer> entry : usePoms.entrySet()) {
     1014  
     //                final int current = entry.getValue().intValue();
     1015  
     //                if (current > maxCount) {
     1016  
     //                    maxCount = current;
     1017  
     //                    retValue.clear();
     1018  
     //                    retValue.add(entry.getKey());
     1019  
     //                } else if (current == maxCount) {
     1020  
     //                    retValue.add(entry.getKey());
     1021  
     //                }
     1022  
     //            }
     1023  
     //        }
     1024  
     //        return retValue;
     1025  
         }
     1026  
     
     1027  
         /**
     1028  
          * Simple check to see if the attribute from a manifest is just a package
     1029  
          * name.
     1030  
          *
     1031  
          * @param key the key of the value to check
     1032  
          * @param value the value to check
     1033  
          * @return true if the value looks like a java package name, otherwise false
     1034  
          */
     1035  
         private boolean isPackage(String key, String value) {
     1036  
     
     1037  61
             return !key.matches(".*(version|title|vendor|name|license|description).*")
     1038  
                     && value.matches("^([a-zA-Z_][a-zA-Z0-9_\\$]*(\\.[a-zA-Z_][a-zA-Z0-9_\\$]*)*)?$");
     1039  
         }
     1040  
     
     1041  
         /**
     1042  
          * Stores information about a class name.
     1043  
          */
     1044  
         protected static class ClassNameInformation {
     1045  
     
     1046  
             /**
     1047  
              * Stores information about a given class name. This class will keep the
     1048  
              * fully qualified class name and a list of the important parts of the
     1049  
              * package structure. Up to the first four levels of the package
     1050  
              * structure are stored, excluding a leading "org" or "com". Example:
     1051  
              * <code>ClassNameInformation obj = new ClassNameInformation("org.owasp.dependencycheck.analyzer.JarAnalyzer");
     1052  
              * System.out.println(obj.getName());
     1053  
              * for (String p : obj.getPackageStructure())
     1054  
              *     System.out.println(p);
     1055  
              * </code> Would result in:
     1056  
              * <code>org.owasp.dependencycheck.analyzer.JarAnalyzer
     1057  
              * owasp
     1058  
              * dependencycheck
     1059  
              * analyzer
     1060  
              * jaranalyzer</code>
     1061  
              *
     1062  
              * @param className a fully qualified class name
     1063  
              */
     1064  6375
             ClassNameInformation(String className) {
     1065  6375
                 name = className;
     1066  6375
                 if (name.contains("/")) {
     1067  6375
                     final String[] tmp = className.toLowerCase().split("/");
     1068  6375
                     int start = 0;
     1069  6375
                     int end = 3;
     1070  6375
                     if ("com".equals(tmp[0]) || "org".equals(tmp[0])) {
     1071  5948
                         start = 1;
     1072  5948
                         end = 4;
     1073  
                     }
     1074  6375
                     if (tmp.length <= end) {
     1075  1991
                         end = tmp.length - 1;
     1076  
                     }
     1077  29884
                     for (int i = start; i <= end; i++) {
     1078  23509
                         packageStructure.add(tmp[i]);
     1079  
                     }
     1080  6375
                 } else {
     1081  0
                     packageStructure.add(name);
     1082  
                 }
     1083  6375
             }
     1084  
             /**
     1085  
              * The fully qualified class name.
     1086  
              */
     1087  
             private String name;
     1088  
     
     1089  
             /**
     1090  
              * Get the value of name
     1091  
              *
     1092  
              * @return the value of name
     1093  
              */
     1094  
             public String getName() {
     1095  0
                 return name;
     1096  
             }
     1097  
     
     1098  
             /**
     1099  
              * Set the value of name
     1100  
              *
     1101  
              * @param name new value of name
     1102  
              */
     1103  
             public void setName(String name) {
     1104  0
                 this.name = name;
     1105  0
             }
     1106  
             /**
     1107  
              * Up to the first four levels of the package structure, excluding a
     1108  
              * leading "org" or "com".
     1109  
              */
     1110  6375
             private ArrayList<String> packageStructure = new ArrayList<String>();
     1111  
     
     1112  
             /**
     1113  
              * Get the value of packageStructure
     1114  
              *
     1115  
              * @return the value of packageStructure
     1116  
              */
     1117  
             public ArrayList<String> getPackageStructure() {
     1118  69549
                 return packageStructure;
     1119  
             }
     1120  
         }
     1121  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html new file mode 100644 index 000000000..11949dc45 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html @@ -0,0 +1,257 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    JavaScriptAnalyzer
    0%
    0/11
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import org.owasp.dependencycheck.Engine;
     22  
     import org.owasp.dependencycheck.dependency.Dependency;
     23  
     import java.util.Set;
     24  
     import java.util.regex.Pattern;
     25  
     
     26  
     /**
     27  
      *
     28  
      * Used to load a JAR file and collect information that can be used to determine
     29  
      * the associated CPE.
     30  
      *
     31  
      * @author Jeremy Long (jeremy.long@owasp.org)
     32  
      */
     33  0
     public class JavaScriptAnalyzer extends AbstractAnalyzer implements Analyzer {
     34  
     
     35  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     36  
         /**
     37  
          * The name of the analyzer.
     38  
          */
     39  
         private static final String ANALYZER_NAME = "JavaScript Analyzer";
     40  
         /**
     41  
          * The phase that this analyzer is intended to run in.
     42  
          */
     43  0
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
     44  
         /**
     45  
          * The set of file extensions supported by this analyzer.
     46  
          */
     47  0
         private static final Set<String> EXTENSIONS = newHashSet("js");
     48  
     
     49  
         /**
     50  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     51  
          *
     52  
          * @return a list of file EXTENSIONS supported by this analyzer.
     53  
          */
     54  
         public Set<String> getSupportedExtensions() {
     55  0
             return EXTENSIONS;
     56  
         }
     57  
     
     58  
         /**
     59  
          * Returns the name of the analyzer.
     60  
          *
     61  
          * @return the name of the analyzer.
     62  
          */
     63  
         public String getName() {
     64  0
             return ANALYZER_NAME;
     65  
         }
     66  
     
     67  
         /**
     68  
          * Returns whether or not this analyzer can process the given extension.
     69  
          *
     70  
          * @param extension the file extension to test for support.
     71  
          * @return whether or not the specified file extension is supported by this
     72  
          * analyzer.
     73  
          */
     74  
         public boolean supportsExtension(String extension) {
     75  0
             return EXTENSIONS.contains(extension);
     76  
         }
     77  
     
     78  
         /**
     79  
          * Returns the phase that the analyzer is intended to run in.
     80  
          *
     81  
          * @return the phase that the analyzer is intended to run in.
     82  
          */
     83  
         public AnalysisPhase getAnalysisPhase() {
     84  0
             return ANALYSIS_PHASE;
     85  
         }
     86  
         //</editor-fold>
     87  
     
     88  
         /**
     89  
          * Loads a specified JAR file and collects information from the manifest and
     90  
          * checksums to identify the correct CPE information.
     91  
          *
     92  
          * @param dependency the dependency to analyze.
     93  
          * @param engine the engine that is scanning the dependencies
     94  
          * @throws AnalysisException is thrown if there is an error reading the JAR
     95  
          * file.
     96  
          */
     97  
         @Override
     98  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     99  0
             final Pattern extractComments = Pattern.compile("(/\\*([^*]|[\\r\\n]|(\\*+([^*/]|[\\r\\n])))*\\*+/)|(//.*)");
     100  
     
     101  0
         }
     102  
     
     103  
         /**
     104  
          * The initialize method does nothing for this Analyzer.
     105  
          *
     106  
          * @throws Exception thrown if there is an exception
     107  
          */
     108  
         @Override
     109  
         public void initialize() throws Exception {
     110  
             //do nothing
     111  0
         }
     112  
     
     113  
         /**
     114  
          * The close method does nothing for this Analyzer.
     115  
          *
     116  
          * @throws Exception thrown if there is an exception
     117  
          */
     118  
         @Override
     119  
         public void close() throws Exception {
     120  
             //do nothing
     121  0
         }
     122  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html new file mode 100644 index 000000000..ee866cbe1 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html @@ -0,0 +1,441 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.NvdCveAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NvdCveAnalyzer
    74%
    20/27
    37%
    3/8
    1.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.sql.SQLException;
     23  
     import java.util.List;
     24  
     import java.util.Set;
     25  
     import org.owasp.dependencycheck.Engine;
     26  
     import org.owasp.dependencycheck.dependency.Dependency;
     27  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     28  
     import org.owasp.dependencycheck.dependency.Identifier;
     29  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     30  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     31  
     
     32  
     /**
     33  
      * NvdCveAnalyzer is a utility class that takes a project dependency and
     34  
      * attempts to discern if there is an associated CVEs. It uses the the
     35  
      * identifiers found by other analyzers to lookup the CVE data.
     36  
      *
     37  
      * @author Jeremy Long (jeremy.long@owasp.org)
     38  
      */
     39  1
     public class NvdCveAnalyzer implements Analyzer {
     40  
     
     41  
         /**
     42  
          * The maximum number of query results to return.
     43  
          */
     44  
         static final int MAX_QUERY_RESULTS = 100;
     45  
         /**
     46  
          * The CVE Index.
     47  
          */
     48  
         private CveDB cveDB;
     49  
     
     50  
         /**
     51  
          * Opens the data source.
     52  
          *
     53  
          * @throws SQLException thrown when there is a SQL Exception
     54  
          * @throws IOException thrown when there is an IO Exception
     55  
          * @throws DatabaseException thrown when there is a database exceptions
     56  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     57  
          * loaded
     58  
          */
     59  
         public void open() throws SQLException, IOException, DatabaseException, ClassNotFoundException {
     60  3
             cveDB = new CveDB();
     61  3
             cveDB.open();
     62  3
         }
     63  
     
     64  
         /**
     65  
          * Closes the data source.
     66  
          */
     67  
         public void close() {
     68  3
             cveDB.close();
     69  3
             cveDB = null;
     70  3
         }
     71  
     
     72  
         /**
     73  
          * Returns the status of the data source - is the database open.
     74  
          *
     75  
          * @return true or false.
     76  
          */
     77  
         public boolean isOpen() {
     78  0
             return (cveDB != null);
     79  
         }
     80  
     
     81  
         /**
     82  
          * Ensures that the CVE Database is closed.
     83  
          *
     84  
          * @throws Throwable when a throwable is thrown.
     85  
          */
     86  
         @Override
     87  
         protected void finalize() throws Throwable {
     88  0
             super.finalize();
     89  0
             if (isOpen()) {
     90  0
                 close();
     91  
             }
     92  0
         }
     93  
     
     94  
         /**
     95  
          * Analyzes a dependency and attempts to determine if there are any CPE
     96  
          * identifiers for this dependency.
     97  
          *
     98  
          * @param dependency The Dependency to analyze
     99  
          * @param engine The analysis engine
     100  
          * @throws AnalysisException is thrown if there is an issue analyzing the
     101  
          * dependency
     102  
          */
     103  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     104  9
             for (Identifier id : dependency.getIdentifiers()) {
     105  11
                 if ("cpe".equals(id.getType())) {
     106  
                     try {
     107  11
                         final String value = id.getValue();
     108  11
                         final List<Vulnerability> vulns = cveDB.getVulnerabilities(value);
     109  11
                         dependency.getVulnerabilities().addAll(vulns);
     110  
     //TODO - remove this comment block after additional testing is completed
     111  
     //note - valid match functionality has been moved into the CveDB class.
     112  
     ////                    for (Vulnerability v : vulns) {
     113  
     ////                        if (isValidMatch(dependency, v)) {
     114  
     ////                            dependency.addVulnerability(v);
     115  
     ////                        }
     116  
     ////                    }
     117  0
                     } catch (DatabaseException ex) {
     118  0
                         throw new AnalysisException(ex);
     119  11
                     }
     120  
                 }
     121  
             }
     122  9
         }
     123  
     
     124  
         /**
     125  
          * Returns true because this analyzer supports all dependency types.
     126  
          *
     127  
          * @return true.
     128  
          */
     129  
         public Set<String> getSupportedExtensions() {
     130  132
             return null;
     131  
         }
     132  
     
     133  
         /**
     134  
          * Returns the name of this analyzer.
     135  
          *
     136  
          * @return the name of this analyzer.
     137  
          */
     138  
         public String getName() {
     139  9
             return "NVD CVE Analyzer";
     140  
         }
     141  
     
     142  
         /**
     143  
          * Returns true because this analyzer supports all dependency types.
     144  
          *
     145  
          * @param extension the file extension of the dependency being analyzed.
     146  
          * @return true.
     147  
          */
     148  
         public boolean supportsExtension(String extension) {
     149  9
             return true;
     150  
         }
     151  
     
     152  
         /**
     153  
          * Returns the analysis phase that this analyzer should run in.
     154  
          *
     155  
          * @return the analysis phase that this analyzer should run in.
     156  
          */
     157  
         public AnalysisPhase getAnalysisPhase() {
     158  6
             return AnalysisPhase.FINDING_ANALYSIS;
     159  
         }
     160  
     
     161  
         /**
     162  
          * Opens the NVD CVE Lucene Index.
     163  
          *
     164  
          * @throws Exception is thrown if there is an issue opening the index.
     165  
          */
     166  
         public void initialize() throws Exception {
     167  3
             this.open();
     168  3
         }
     169  
     //TODO - remove this comment block after additional testing is completed
     170  
     // The following check has been moved into the CveDB class.
     171  
     ////    /**
     172  
     ////     * <p>Determines if this is a valid vulnerability match for the given
     173  
     ////     * dependency. Specifically, this is concerned with ensuring the version
     174  
     ////     * numbers are correct.</p>
     175  
     ////     * <p>Currently, this is focused on the issues with the versions for Struts
     176  
     ////     * 1 and Struts 2. In the future this will due better matching on more
     177  
     ////     * version numbers.</p>
     178  
     ////     *
     179  
     ////     * @param dependency the dependency
     180  
     ////     * @param v the vulnerability
     181  
     ////     * @return returns true if the vulnerability is for the given dependency
     182  
     ////     */
     183  
     ////    private boolean isValidMatch(final Dependency dependency, final Vulnerability v) {
     184  
     ////        //right now I only know of the issue with Struts1/2
     185  
     ////        // start with fixing this problem.
     186  
     ////
     187  
     ////        //TODO extend this solution to do better version matching for the vulnerable software.
     188  
     ////        boolean struts1 = false;
     189  
     ////        boolean struts2 = false;
     190  
     ////        for (Identifier i : dependency.getIdentifiers()) {
     191  
     ////            if (i.getValue().startsWith("cpe:/a:apache:struts:")) {
     192  
     ////                final char version = i.getValue().charAt(21);
     193  
     ////                if (version == '1') {
     194  
     ////                    struts1 = true;
     195  
     ////                }
     196  
     ////                if (version == '2') {
     197  
     ////                    struts2 = true;
     198  
     ////                }
     199  
     ////            }
     200  
     ////        }
     201  
     ////        if (!struts1 && !struts2) {
     202  
     ////            return true; //we are not looking at struts, so return true.
     203  
     ////        }
     204  
     ////        if (struts1 && struts2) {
     205  
     ////            return true; //there is a mismatch here, but we can't solve it here so we return valid.
     206  
     ////        }
     207  
     ////        if (struts1) {
     208  
     ////            boolean hasStruts1Vuln = false;
     209  
     ////            boolean hasStruts2PreviousVersion = false;
     210  
     ////            for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
     211  
     ////                //TODO FIX THIS
     212  
     ////                //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2';
     213  
     ////                //hasStruts1Vuln |= vs.getName().charAt(21) == '1';
     214  
     ////            }
     215  
     ////            if (!hasStruts1Vuln && hasStruts2PreviousVersion) {
     216  
     ////                return false;
     217  
     ////            }
     218  
     ////        }
     219  
     ////
     220  
     ////        return true;
     221  
     ////    }
     222  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..714425600 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,167 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VulnerabilitySuppressionAnalyzer
    66%
    6/9
    16%
    1/6
    2.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import org.owasp.dependencycheck.Engine;
     22  
     import org.owasp.dependencycheck.dependency.Dependency;
     23  
     import org.owasp.dependencycheck.suppression.SuppressionRule;
     24  
     
     25  
     /**
     26  
      * The suppression analyzer processes an externally defined XML document that
     27  
      * complies with the suppressions.xsd schema. Any identified Vulnerability
     28  
      * entries within the dependencies that match will be removed.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  1
     public class VulnerabilitySuppressionAnalyzer extends AbstractSuppressionAnalyzer {
     33  
     
     34  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     35  
         /**
     36  
          * The name of the analyzer.
     37  
          */
     38  
         private static final String ANALYZER_NAME = "Vulnerability Suppression Analyzer";
     39  
         /**
     40  
          * The phase that this analyzer is intended to run in.
     41  
          */
     42  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_FINDING_ANALYSIS;
     43  
     
     44  
         /**
     45  
          * Returns the name of the analyzer.
     46  
          *
     47  
          * @return the name of the analyzer.
     48  
          */
     49  
         @Override
     50  
         public String getName() {
     51  9
             return ANALYZER_NAME;
     52  
         }
     53  
     
     54  
         /**
     55  
          * Returns the phase that the analyzer is intended to run in.
     56  
          *
     57  
          * @return the phase that the analyzer is intended to run in.
     58  
          */
     59  
         @Override
     60  
         public AnalysisPhase getAnalysisPhase() {
     61  6
             return ANALYSIS_PHASE;
     62  
         }
     63  
         //</editor-fold>
     64  
     
     65  
         @Override
     66  
         public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
     67  
     
     68  9
             if (getRules() == null || getRules().size() <= 0) {
     69  9
                 return;
     70  
             }
     71  
     
     72  0
             for (final SuppressionRule rule : getRules()) {
     73  0
                 rule.process(dependency);
     74  
             }
     75  0
         }
     76  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html new file mode 100644 index 000000000..1378ddedb --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html @@ -0,0 +1,150 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.concurrency.DirectoryLockException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DirectoryLockException
    25%
    2/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.concurrency;
     20  
     
     21  
     /**
     22  
      * If thrown, indicates that a problem occurred when locking a directory.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class DirectoryLockException extends Exception {
     27  
     
     28  
         /**
     29  
          * Default serial version UID.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Constructs a new Directory Lock Exception.
     35  
          */
     36  
         public DirectoryLockException() {
     37  0
             super();
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Constructs a new Directory Lock Exception.
     42  
          *
     43  
          * @param msg the message describing the exception
     44  
          */
     45  
         public DirectoryLockException(String msg) {
     46  0
             super(msg);
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Constructs a new Directory Lock Exception.
     51  
          *
     52  
          * @param ex the cause of the exception
     53  
          */
     54  
         public DirectoryLockException(Throwable ex) {
     55  0
             super(ex);
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Constructs a new Directory Lock Exception.
     60  
          *
     61  
          * @param msg the message describing the exception
     62  
          * @param ex the cause of the exception
     63  
          */
     64  
         public DirectoryLockException(String msg, Throwable ex) {
     65  1
             super(msg, ex);
     66  1
         }
     67  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html new file mode 100644 index 000000000..ccb2e4a2f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html @@ -0,0 +1,480 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.concurrency.DirectorySpinLock
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DirectorySpinLock
    65%
    51/78
    66%
    16/24
    3.9
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.concurrency;
     20  
     
     21  
     import java.io.Closeable;
     22  
     import java.io.File;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.IOException;
     25  
     import java.io.RandomAccessFile;
     26  
     import java.nio.channels.AsynchronousCloseException;
     27  
     import java.nio.channels.ClosedChannelException;
     28  
     import java.nio.channels.FileChannel;
     29  
     import java.nio.channels.FileLock;
     30  
     import java.nio.channels.FileLockInterruptionException;
     31  
     import java.nio.channels.NonWritableChannelException;
     32  
     import java.nio.channels.OverlappingFileLockException;
     33  
     import java.util.logging.Level;
     34  
     import java.util.logging.Logger;
     35  
     
     36  
     /**
     37  
      * Implements a spin lock on a given directory. If the lock cannot be obtained,
     38  
      * the process will "spin" waiting for an opportunity to obtain the lock
     39  
      * requested.
     40  
      *
     41  
      * @author Jeremy Long (jeremy.long@owasp.org)
     42  
      */
     43  
     public class DirectorySpinLock implements Closeable /*, AutoCloseable*/ {
     44  
     
     45  
         /**
     46  
          * The name of the lock file.
     47  
          */
     48  
         public static final String LOCK_NAME = "data.lock";
     49  
         /**
     50  
          * The maximum wait period used when attempting to obtain a lock.
     51  
          */
     52  
         public static final int MAX_SPIN = 100;
     53  
         /**
     54  
          * The file channel used to perform the lock.
     55  
          */
     56  6
         private FileChannel channel = null;
     57  
         /**
     58  
          * The file used to perform the lock.
     59  
          */
     60  6
         private File lockFile = null;
     61  
         /**
     62  
          * The lock object.
     63  
          */
     64  6
         private FileLock lock = null;
     65  
         /**
     66  
          * The maximum number of seconds that the spin lock will wait while trying
     67  
          * to obtain a lock.
     68  
          */
     69  6
         private long maxWait = MAX_SPIN;
     70  
     
     71  
         /**
     72  
          * Get the maximum wait time, in seconds, that the spin lock will wait while
     73  
          * trying to obtain a lock.
     74  
          *
     75  
          * @return the number of seconds the spin lock will wait
     76  
          */
     77  
         public long getMaxWait() {
     78  0
             return maxWait / 2; //sleep is for 500, so / 2
     79  
         }
     80  
     
     81  
         /**
     82  
          * Set the maximum wait time, in seconds, that the spin lock will wait while
     83  
          * trying to obtain a lock.
     84  
          *
     85  
          * @param maxWait the number of seconds the spin lock will wait
     86  
          */
     87  
         public void setMaxWait(long maxWait) {
     88  3
             this.maxWait = maxWait * 2; //sleep is for 500, so * 2
     89  3
         }
     90  
     
     91  
         /**
     92  
          * Constructs a new spin lock on the given directory.
     93  
          *
     94  
          * @param directory the directory to monitor/lock
     95  
          * @throws InvalidDirectoryException thrown if there is an issue with the
     96  
          * directory provided
     97  
          * @throws DirectoryLockException thrown there is an issue obtaining a
     98  
          * handle to the lock file
     99  
          */
     100  6
         public DirectorySpinLock(File directory) throws InvalidDirectoryException, DirectoryLockException {
     101  6
             checkDirectory(directory);
     102  6
             lockFile = new File(directory, LOCK_NAME);
     103  6
             RandomAccessFile file = null;
     104  
             try {
     105  6
                 file = new RandomAccessFile(lockFile, "rw");
     106  0
             } catch (FileNotFoundException ex) {
     107  0
                 throw new DirectoryLockException("Lock file not found", ex);
     108  6
             }
     109  6
             channel = file.getChannel();
     110  6
         }
     111  
     
     112  
         /**
     113  
          * Attempts to obtain an exclusive lock; an exception is thrown if the lock
     114  
          * could not be obtained. This method may block for a few seconds if a lock
     115  
          * cannot be obtained.
     116  
          *
     117  
          * @throws DirectoryLockException thrown if there is an exception obtaining
     118  
          * the lock
     119  
          */
     120  
         public void obtainSharedLock() throws DirectoryLockException {
     121  2
             obtainLock(true);
     122  2
         }
     123  
     
     124  
         /**
     125  
          * Attempts to obtain an exclusive lock; an exception is thrown if the lock
     126  
          * could not be obtained. This method may block for a few seconds if a lock
     127  
          * cannot be obtained.
     128  
          *
     129  
          * @throws DirectoryLockException thrown if there is an exception obtaining
     130  
          * the lock
     131  
          */
     132  
         public void obtainExclusiveLock() throws DirectoryLockException {
     133  1
             obtainLock(false);
     134  1
         }
     135  
     
     136  
         /**
     137  
          * Attempts to obtain a lock; an exception is thrown if the lock could not
     138  
          * be obtained. This method may block for a few seconds if a lock cannot be
     139  
          * obtained.
     140  
          *
     141  
          * @param shared true if the lock is shared, otherwise false
     142  
          * @param maxWait the maximum time to wait, in seconds, while trying to
     143  
          * obtain the lock
     144  
          * @throws DirectoryLockException thrown if there is an exception obtaining
     145  
          * the lock
     146  
          */
     147  
         protected void obtainLock(boolean shared, long maxWait) throws DirectoryLockException {
     148  3
             setMaxWait(maxWait);
     149  3
             obtainLock(shared);
     150  2
         }
     151  
     
     152  
         /**
     153  
          * Attempts to obtain a lock; an exception is thrown if the lock could not
     154  
          * be obtained. This method may block for a few seconds if a lock cannot be
     155  
          * obtained.
     156  
          *
     157  
          * @param shared true if the lock is shared, otherwise false
     158  
          * @throws DirectoryLockException thrown if there is an exception obtaining
     159  
          * the lock
     160  
          */
     161  
         protected void obtainLock(boolean shared) throws DirectoryLockException {
     162  6
             if (lock != null) {
     163  0
                 release();
     164  
             }
     165  6
             if (channel == null) {
     166  0
                 throw new DirectoryLockException("Unable to create lock, no file channel exists");
     167  
             }
     168  6
             int count = 0;
     169  6
             Exception lastException = null;
     170  13
             while (lock == null && count++ < maxWait) {
     171  
                 try {
     172  7
                     lock = channel.lock(0, Long.MAX_VALUE, shared);
     173  0
                 } catch (AsynchronousCloseException ex) {
     174  0
                     lastException = ex;
     175  0
                 } catch (ClosedChannelException ex) {
     176  0
                     lastException = ex;
     177  0
                 } catch (FileLockInterruptionException ex) {
     178  0
                     lastException = ex;
     179  2
                 } catch (OverlappingFileLockException ex) {
     180  2
                     lastException = ex;
     181  0
                 } catch (NonWritableChannelException ex) {
     182  0
                     lastException = ex;
     183  0
                 } catch (IOException ex) {
     184  0
                     lastException = ex;
     185  7
                 }
     186  
                 try {
     187  7
                     Thread.sleep(500);
     188  0
                 } catch (InterruptedException ex) {
     189  0
                     Thread.currentThread().interrupt();
     190  7
                 }
     191  
             }
     192  6
             if (lock == null) {
     193  1
                 if (lastException == null) {
     194  0
                     throw new DirectoryLockException("Unable to obtain lock");
     195  
                 } else {
     196  1
                     throw new DirectoryLockException("Unable to obtain lock", lastException);
     197  
                 }
     198  
             }
     199  5
         }
     200  
     
     201  
         /**
     202  
          * Performs a few simple rudimentary checks on the specified directory.
     203  
          * Specifically, does the file exist and is it a directory.
     204  
          *
     205  
          * @param directory the File object to inspect
     206  
          * @throws InvalidDirectoryException thrown if the directory is null or is
     207  
          * not a directory
     208  
          */
     209  
         private void checkDirectory(File directory) throws InvalidDirectoryException {
     210  6
             if (directory == null) {
     211  0
                 throw new InvalidDirectoryException("Unable to obtain lock on a null File");
     212  
             }
     213  6
             if (!directory.isDirectory()) {
     214  0
                 final String msg = String.format("File, '%s', does not exist or is not a directory", directory.getAbsolutePath());
     215  0
                 throw new InvalidDirectoryException(msg);
     216  
             }
     217  6
         }
     218  
     
     219  
         /**
     220  
          * Releases any locks and closes the underlying channel.
     221  
          *
     222  
          * @throws IOException if an IO Exception occurs
     223  
          */
     224  
         @Override
     225  
         public void close() throws IOException {
     226  6
             release();
     227  
     // TODO uncomment this once support for 1.6 is dropped.
     228  
     //        if (lock != null) {
     229  
     //            try {
     230  
     //                lock.close();
     231  
     //            } catch (IOException ex) {
     232  
     //                Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to close file lock due to IO Exception", ex);
     233  
     //            }
     234  
     //        }
     235  6
             if (channel != null) {
     236  
                 try {
     237  6
                     channel.close();
     238  0
                 } catch (IOException ex) {
     239  0
                     Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to close the channel for the file lock", ex);
     240  6
                 }
     241  
             }
     242  6
             if (lockFile != null) {
     243  6
                 if (lockFile.exists()) {
     244  
                     /* yes, this delete could fail which is totally fine. The other
     245  
                      * thread holding the lock while delete it.
     246  
                      */
     247  6
                     lockFile.delete();
     248  
                 }
     249  
             }
     250  6
         }
     251  
     
     252  
         /**
     253  
          * Releases the lock. Any exceptions that are thrown by the underlying lock
     254  
          * during the release are ignored.
     255  
          */
     256  
         public void release() {
     257  6
             if (lock != null) {
     258  
                 try {
     259  5
                     lock.release();
     260  0
                 } catch (ClosedChannelException ex) {
     261  0
                     Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Uable to release file lock", ex);
     262  0
                 } catch (IOException ex) {
     263  0
                     Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to release file lock due to IO Exception", ex);
     264  5
                 }
     265  
             }
     266  6
         }
     267  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html new file mode 100644 index 000000000..6407e0b40 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html @@ -0,0 +1,150 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.concurrency.InvalidDirectoryException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    InvalidDirectoryException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.concurrency;
     20  
     
     21  
     /**
     22  
      * If thrown, indicates that there is a problem with a directory.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class InvalidDirectoryException extends Exception {
     27  
     
     28  
         /**
     29  
          * Default serial version UID.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Constructs a new Invalid Directory Exception.
     35  
          */
     36  
         public InvalidDirectoryException() {
     37  0
             super();
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Constructs a new Invalid Directory Exception.
     42  
          *
     43  
          * @param msg the message describing the exception
     44  
          */
     45  
         public InvalidDirectoryException(String msg) {
     46  0
             super(msg);
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Constructs a new Invalid Directory Exception.
     51  
          *
     52  
          * @param ex the cause of the exception
     53  
          */
     54  
         public InvalidDirectoryException(Throwable ex) {
     55  0
             super(ex);
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Constructs a new Invalid Directory Exception.
     60  
          *
     61  
          * @param msg the message describing the exception
     62  
          * @param ex the cause of the exception
     63  
          */
     64  
         public InvalidDirectoryException(String msg, Throwable ex) {
     65  0
             super(msg, ex);
     66  0
         }
     67  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html new file mode 100644 index 000000000..1f999c121 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html @@ -0,0 +1,440 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.BaseDB
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    BaseDB
    45%
    34/74
    50%
    10/20
    2.8
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data;
     20  
     
     21  
     import java.io.BufferedReader;
     22  
     import java.io.File;
     23  
     import java.io.IOException;
     24  
     import java.io.InputStream;
     25  
     import java.io.InputStreamReader;
     26  
     import java.sql.Connection;
     27  
     import java.sql.DriverManager;
     28  
     import java.sql.PreparedStatement;
     29  
     import java.sql.ResultSet;
     30  
     import java.sql.SQLException;
     31  
     import java.sql.Statement;
     32  
     import java.util.logging.Level;
     33  
     import java.util.logging.Logger;
     34  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     35  
     import static org.owasp.dependencycheck.data.nvdcve.CveDB.DB_SCHEMA_VERSION;
     36  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     37  
     import org.owasp.dependencycheck.utils.Settings;
     38  
     
     39  
     /**
     40  
      *
     41  
      * @author Jeremy Long (jeremy.long@owasp.org)
     42  
      */
     43  21
     public class BaseDB {
     44  
     
     45  
         /**
     46  
          * Resource location for SQL file used to create the database schema.
     47  
          */
     48  
         public static final String DB_STRUCTURE_RESOURCE = "data/initialize.sql";
     49  
         /**
     50  
          * The version of the current DB Schema.
     51  
          */
     52  
         public static final String DB_SCHEMA_VERSION = "2.7";
     53  
         /**
     54  
          * Database connection
     55  
          */
     56  
         private Connection conn;
     57  
     
     58  
         /**
     59  
          * Returns the database connection.
     60  
          *
     61  
          * @return the database connection
     62  
          */
     63  
         protected Connection getConnection() {
     64  278
             return conn;
     65  
         }
     66  
     
     67  
         /**
     68  
          * Opens the database connection. If the database does not exist, it will
     69  
          * create a new one.
     70  
          *
     71  
          * @throws IOException thrown if there is an IO Exception
     72  
          * @throws SQLException thrown if there is a SQL Exception
     73  
          * @throws DatabaseException thrown if there is an error initializing a new
     74  
          * database
     75  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     76  
          * loaded
     77  
          */
     78  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(
     79  
                 value = "DMI_EMPTY_DB_PASSWORD",
     80  
                 justification = "Yes, I know... Blank password.")
     81  
         public void open() throws IOException, SQLException, DatabaseException, ClassNotFoundException {
     82  21
             final String fileName = CveDB.getDataDirectory().getCanonicalPath();
     83  21
             final File f = new File(fileName, "cve." + DB_SCHEMA_VERSION);
     84  21
             final File check = new File(f.getAbsolutePath() + ".h2.db");
     85  21
             final boolean createTables = !check.exists();
     86  21
             final String connStr = String.format("jdbc:h2:file:%s;AUTO_SERVER=TRUE", f.getAbsolutePath());
     87  21
             Class.forName("org.h2.Driver");
     88  21
             conn = DriverManager.getConnection(connStr, "sa", "");
     89  21
             if (createTables) {
     90  0
                 createTables();
     91  
             }
     92  21
         }
     93  
     
     94  
         /**
     95  
          * Closes the DB4O database. Close should be called on this object when it
     96  
          * is done being used.
     97  
          */
     98  
         public void close() {
     99  37
             if (conn != null) {
     100  
                 try {
     101  21
                     conn.close();
     102  0
                 } catch (SQLException ex) {
     103  0
                     final String msg = "There was an error attempting to close the CveDB, see the log for more details.";
     104  0
                     Logger.getLogger(BaseDB.class.getName()).log(Level.SEVERE, msg, ex);
     105  0
                     Logger.getLogger(BaseDB.class.getName()).log(Level.FINE, null, ex);
     106  21
                 }
     107  21
                 conn = null;
     108  
             }
     109  37
         }
     110  
     
     111  
         /**
     112  
          * Commits all completed transactions.
     113  
          *
     114  
          * @throws SQLException thrown if a SQL Exception occurs
     115  
          */
     116  
         public void commit() throws SQLException {
     117  1
             if (conn != null) {
     118  1
                 conn.commit();
     119  
             }
     120  1
         }
     121  
     
     122  
         /**
     123  
          * Cleans up the object and ensures that "close" has been called.
     124  
          *
     125  
          * @throws Throwable thrown if there is a problem
     126  
          */
     127  
         @Override
     128  
         protected void finalize() throws Throwable {
     129  16
             close();
     130  16
             super.finalize(); //not necessary if extending Object.
     131  16
         }
     132  
     
     133  
         /**
     134  
          * Creates the database structure (tables and indexes) to store the CVE data
     135  
          *
     136  
          * @throws SQLException thrown if there is a sql exception
     137  
          * @throws DatabaseException thrown if there is a database exception
     138  
          */
     139  
         private void createTables() throws SQLException, DatabaseException {
     140  
             InputStream is;
     141  
             InputStreamReader reader;
     142  0
             BufferedReader in = null;
     143  
             try {
     144  0
                 is = this.getClass().getClassLoader().getResourceAsStream(DB_STRUCTURE_RESOURCE);
     145  0
                 reader = new InputStreamReader(is, "UTF-8");
     146  0
                 in = new BufferedReader(reader);
     147  0
                 final StringBuilder sb = new StringBuilder(2110);
     148  
                 String tmp;
     149  0
                 while ((tmp = in.readLine()) != null) {
     150  0
                     sb.append(tmp);
     151  
                 }
     152  0
                 Statement statement = null;
     153  
                 try {
     154  0
                     statement = conn.createStatement();
     155  0
                     statement.execute(sb.toString());
     156  
                 } finally {
     157  0
                     closeStatement(statement);
     158  0
                 }
     159  0
             } catch (IOException ex) {
     160  0
                 throw new DatabaseException("Unable to create database schema", ex);
     161  
             } finally {
     162  0
                 if (in != null) {
     163  
                     try {
     164  0
                         in.close();
     165  0
                     } catch (IOException ex) {
     166  0
                         Logger.getLogger(CveDB.class
     167  
                                 .getName()).log(Level.FINEST, null, ex);
     168  0
                     }
     169  
                 }
     170  
             }
     171  0
         }
     172  
     
     173  
         /**
     174  
          * Retrieves the directory that the JAR file exists in so that we can ensure
     175  
          * we always use a common data directory.
     176  
          *
     177  
          * @return the data directory for this index.
     178  
          * @throws IOException is thrown if an IOException occurs of course...
     179  
          */
     180  
         public static File getDataDirectory() throws IOException {
     181  22
             final File path = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
     182  22
             if (!path.exists()) {
     183  1
                 if (!path.mkdirs()) {
     184  0
                     throw new IOException("Unable to create NVD CVE Data directory");
     185  
                 }
     186  
             }
     187  22
             return path;
     188  
         }
     189  
     
     190  
         /**
     191  
          * Returns the generated integer primary key for a newly inserted row.
     192  
          *
     193  
          * @param statement a prepared statement that just executed an insert
     194  
          * @return a primary key
     195  
          * @throws DatabaseException thrown if there is an exception obtaining the
     196  
          * key
     197  
          */
     198  
         protected int getGeneratedKey(PreparedStatement statement) throws DatabaseException {
     199  0
             ResultSet rs = null;
     200  0
             int id = 0;
     201  
             try {
     202  0
                 rs = statement.getGeneratedKeys();
     203  0
                 rs.next();
     204  0
                 id = rs.getInt(1);
     205  0
             } catch (SQLException ex) {
     206  0
                 throw new DatabaseException("Unable to get primary key for inserted row");
     207  
             } finally {
     208  0
                 closeResultSet(rs);
     209  0
             }
     210  0
             return id;
     211  
         }
     212  
     
     213  
         /**
     214  
          * Closes the given statement object ignoring any exceptions that occur.
     215  
          *
     216  
          * @param statement a Statement object
     217  
          */
     218  
         public void closeStatement(Statement statement) {
     219  267
             if (statement != null) {
     220  
                 try {
     221  267
                     statement.close();
     222  0
                 } catch (SQLException ex) {
     223  0
                     Logger.getLogger(CveDB.class
     224  
                             .getName()).log(Level.FINEST, statement.toString(), ex);
     225  267
                 }
     226  
             }
     227  267
         }
     228  
     
     229  
         /**
     230  
          * Closes the result set capturing and ignoring any SQLExceptions that
     231  
          * occur.
     232  
          *
     233  
          * @param rs a ResultSet to close
     234  
          */
     235  
         public void closeResultSet(ResultSet rs) {
     236  279
             if (rs != null) {
     237  
                 try {
     238  279
                     rs.close();
     239  0
                 } catch (SQLException ex) {
     240  0
                     Logger.getLogger(CveDB.class
     241  
                             .getName()).log(Level.FINEST, rs.toString(), ex);
     242  279
                 }
     243  
             }
     244  279
         }
     245  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html new file mode 100644 index 000000000..e51f2a848 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html @@ -0,0 +1,100 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.CachedWebDataSource
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CachedWebDataSource
    N/A
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data;
     20  
     
     21  
     /**
     22  
      * Defines an Index who's data is retrieved from the Internet. This data can be
     23  
      * downloaded and the index updated.
     24  
      *
     25  
      * @author Jeremy Long (jeremy.long@owasp.org)
     26  
      */
     27  
     public interface CachedWebDataSource {
     28  
     
     29  
         /**
     30  
          * Determines if an update to the current index is needed, if it is the new
     31  
          * data is downloaded from the Internet and imported into the current Lucene
     32  
          * Index.
     33  
          *
     34  
          * @throws UpdateException is thrown if there is an exception updating the
     35  
          * index.
     36  
          */
     37  
         void update() throws UpdateException;
     38  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.NoDataException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.NoDataException.html new file mode 100644 index 000000000..3e35ef938 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.NoDataException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.NoDataException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NoDataException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when the data needed does not exist to perform analysis.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class NoDataException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version uid.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new NoDataException.
     37  
          */
     38  
         public NoDataException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new NoDataException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public NoDataException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new NoDataException.
     53  
          *
     54  
          * @param ex the cause of the exception.
     55  
          */
     56  
         public NoDataException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new NoDataException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the exception.
     65  
          */
     66  
         public NoDataException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html new file mode 100644 index 000000000..9b4131aef --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.UpdateException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UpdateException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when an error occurs reading a setting.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class UpdateException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version uid.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new UpdateException.
     37  
          */
     38  
         public UpdateException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new UpdateException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public UpdateException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new UpdateException.
     53  
          *
     54  
          * @param ex the cause of the update exception.
     55  
          */
     56  
         public UpdateException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new UpdateException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the update exception.
     65  
          */
     66  
         public UpdateException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html new file mode 100644 index 000000000..353e031d2 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html @@ -0,0 +1,151 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.UpdateService
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UpdateService
    0%
    0/7
    0%
    0/2
    1.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data;
     20  
     
     21  
     import java.util.Iterator;
     22  
     import java.util.ServiceLoader;
     23  
     
     24  
     /**
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public final class UpdateService {
     29  
     
     30  
         /**
     31  
          * the singleton reference to the service.
     32  
          */
     33  
         private static UpdateService service;
     34  
         /**
     35  
          * the service loader for CachedWebDataSource.
     36  
          */
     37  
         private final ServiceLoader<CachedWebDataSource> loader;
     38  
     
     39  
         /**
     40  
          * Creates a new instance of UpdateService
     41  
          */
     42  0
         private UpdateService() {
     43  0
             loader = ServiceLoader.load(CachedWebDataSource.class);
     44  0
         }
     45  
     
     46  
         /**
     47  
          * Retrieve the singleton instance of UpdateService.
     48  
          *
     49  
          * @return a singleton UpdateService.
     50  
          */
     51  
         public static synchronized UpdateService getInstance() {
     52  0
             if (service == null) {
     53  0
                 service = new UpdateService();
     54  
             }
     55  0
             return service;
     56  
         }
     57  
     
     58  
         /**
     59  
          * Returns an Iterator for all instances of the CachedWebDataSource
     60  
          * interface.
     61  
          *
     62  
          * @return an iterator of CachedWebDataSource.
     63  
          */
     64  
         public Iterator<CachedWebDataSource> getDataSources() {
     65  0
             return loader.iterator();
     66  
         }
     67  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html new file mode 100644 index 000000000..59b0e8a8d --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html @@ -0,0 +1,584 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.CpeMemoryIndex
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CpeMemoryIndex
    72%
    70/96
    50%
    13/26
    3.071
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cpe;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.sql.ResultSet;
     23  
     import java.sql.SQLException;
     24  
     import java.util.HashMap;
     25  
     import java.util.Map;
     26  
     import java.util.logging.Level;
     27  
     import java.util.logging.Logger;
     28  
     import org.apache.lucene.analysis.Analyzer;
     29  
     import org.apache.lucene.analysis.core.KeywordAnalyzer;
     30  
     import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
     31  
     import org.apache.lucene.document.Document;
     32  
     import org.apache.lucene.document.Field;
     33  
     import org.apache.lucene.document.TextField;
     34  
     import org.apache.lucene.index.CorruptIndexException;
     35  
     import org.apache.lucene.index.DirectoryReader;
     36  
     import org.apache.lucene.index.IndexReader;
     37  
     import org.apache.lucene.index.IndexWriter;
     38  
     import org.apache.lucene.index.IndexWriterConfig;
     39  
     import org.apache.lucene.queryparser.classic.ParseException;
     40  
     import org.apache.lucene.queryparser.classic.QueryParser;
     41  
     import org.apache.lucene.search.IndexSearcher;
     42  
     import org.apache.lucene.search.Query;
     43  
     import org.apache.lucene.search.TopDocs;
     44  
     import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
     45  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     46  
     import org.apache.lucene.store.RAMDirectory;
     47  
     import org.owasp.dependencycheck.data.lucene.LuceneUtils;
     48  
     import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
     49  
     
     50  
     /**
     51  
      * An in memory lucene index that contains the vendor/product combinations from
     52  
      * the CPE (application) identifiers within the NVD CVE data.
     53  
      *
     54  
      * @author Jeremy Long (jeremy.long@owasp.org)
     55  
      */
     56  
     public final class CpeMemoryIndex {
     57  
     
     58  
         /**
     59  
          * singleton instance.
     60  
          */
     61  1
         private static CpeMemoryIndex instance = new CpeMemoryIndex();
     62  
     
     63  
         /**
     64  
          * private constructor for singleton.
     65  
          */
     66  1
         private CpeMemoryIndex() {
     67  1
         }
     68  
     
     69  
         /**
     70  
          * Gets the singleton instance of the CpeMemoryIndex.
     71  
          *
     72  
          * @return the instance of the CpeMemoryIndex
     73  
          */
     74  
         public static CpeMemoryIndex getInstance() {
     75  14
             return instance;
     76  
         }
     77  
         /**
     78  
          * The in memory Lucene index.
     79  
          */
     80  
         private RAMDirectory index;
     81  
         /**
     82  
          * The Lucene IndexReader.
     83  
          */
     84  
         private IndexReader indexReader;
     85  
         /**
     86  
          * The Lucene IndexSearcher.
     87  
          */
     88  
         private IndexSearcher indexSearcher;
     89  
         /**
     90  
          * The Lucene Analyzer used for Searching.
     91  
          */
     92  
         private Analyzer searchingAnalyzer;
     93  
         /**
     94  
          * The Lucene QueryParser used for Searching.
     95  
          */
     96  
         private QueryParser queryParser;
     97  
         /**
     98  
          * The search field analyzer for the product field.
     99  
          */
     100  
         private SearchFieldAnalyzer productSearchFieldAnalyzer;
     101  
         /**
     102  
          * The search field analyzer for the vendor field.
     103  
          */
     104  
         private SearchFieldAnalyzer vendorSearchFieldAnalyzer;
     105  
     
     106  
         /**
     107  
          * Creates and loads data into an in memory index.
     108  
          *
     109  
          * @param cve the data source to retrieve the cpe data
     110  
          * @throws IndexException thrown if there is an error creating the index
     111  
          */
     112  
         public void open(CveDB cve) throws IndexException {
     113  14
             if (!openState) {
     114  11
                 index = new RAMDirectory();
     115  11
                 buildIndex(cve);
     116  
                 try {
     117  11
                     indexReader = DirectoryReader.open(index);
     118  0
                 } catch (IOException ex) {
     119  0
                     throw new IndexException(ex);
     120  11
                 }
     121  11
                 indexSearcher = new IndexSearcher(indexReader);
     122  11
                 searchingAnalyzer = createSearchingAnalyzer();
     123  11
                 queryParser = new QueryParser(LuceneUtils.CURRENT_VERSION, Fields.DOCUMENT_KEY, searchingAnalyzer);
     124  11
                 openState = true;
     125  
             }
     126  14
         }
     127  
         /**
     128  
          * A flag indicating whether or not the index is open.
     129  
          */
     130  1
         private boolean openState = false;
     131  
     
     132  
         /**
     133  
          * returns whether or not the index is open.
     134  
          *
     135  
          * @return whether or not the index is open
     136  
          */
     137  
         public boolean isOpen() {
     138  0
             return openState;
     139  
         }
     140  
     
     141  
         /**
     142  
          * Creates the indexing analyzer for the CPE Index.
     143  
          *
     144  
          * @return the CPE Analyzer.
     145  
          */
     146  
         @SuppressWarnings("unchecked")
     147  
         private Analyzer createIndexingAnalyzer() {
     148  11
             final Map fieldAnalyzers = new HashMap();
     149  11
             fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
     150  11
             return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
     151  
         }
     152  
     
     153  
         /**
     154  
          * Creates an Analyzer for searching the CPE Index.
     155  
          *
     156  
          * @return the CPE Analyzer.
     157  
          */
     158  
         @SuppressWarnings("unchecked")
     159  
         private Analyzer createSearchingAnalyzer() {
     160  11
             final Map fieldAnalyzers = new HashMap();
     161  11
             fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
     162  11
             productSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
     163  11
             vendorSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
     164  11
             fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);
     165  11
             fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);
     166  
     
     167  11
             return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
     168  
         }
     169  
     
     170  
         /**
     171  
          * Saves a CPE IndexEntry into the Lucene index.
     172  
          *
     173  
          * @param vendor the vendor to index
     174  
          * @param product the product to index
     175  
          * @param indexWriter the index writer to write the entry into
     176  
          * @throws CorruptIndexException is thrown if the index is corrupt
     177  
          * @throws IOException is thrown if an IOException occurs
     178  
          */
     179  
         public void saveEntry(String vendor, String product, IndexWriter indexWriter) throws CorruptIndexException, IOException {
     180  234234
             final Document doc = new Document();
     181  234234
             final Field v = new TextField(Fields.VENDOR, vendor, Field.Store.YES);
     182  234234
             final Field p = new TextField(Fields.PRODUCT, product, Field.Store.YES);
     183  234234
             doc.add(v);
     184  234234
             doc.add(p);
     185  234234
             indexWriter.addDocument(doc);
     186  234234
         }
     187  
     
     188  
         /**
     189  
          * Closes the CPE Index.
     190  
          */
     191  
         public void close() {
     192  11
             if (searchingAnalyzer != null) {
     193  11
                 searchingAnalyzer.close();
     194  11
                 searchingAnalyzer = null;
     195  
             }
     196  11
             if (indexReader != null) {
     197  
                 try {
     198  11
                     indexReader.close();
     199  0
                 } catch (IOException ex) {
     200  0
                     Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINEST, null, ex);
     201  11
                 }
     202  11
                 indexReader = null;
     203  
             }
     204  11
             queryParser = null;
     205  11
             indexSearcher = null;
     206  11
             if (index != null) {
     207  11
                 index.close();
     208  11
                 index = null;
     209  
             }
     210  11
             openState = false;
     211  11
         }
     212  
     
     213  
         /**
     214  
          * Builds the lucene index based off of the data within the CveDB.
     215  
          *
     216  
          * @param cve the data base containing the CPE data
     217  
          * @throws IndexException thrown if there is an issue creating the index
     218  
          */
     219  
         private void buildIndex(CveDB cve) throws IndexException {
     220  11
             Analyzer analyzer = null;
     221  11
             IndexWriter indexWriter = null;
     222  
             try {
     223  11
                 analyzer = createIndexingAnalyzer();
     224  11
                 final IndexWriterConfig conf = new IndexWriterConfig(LuceneUtils.CURRENT_VERSION, analyzer);
     225  11
                 indexWriter = new IndexWriter(index, conf);
     226  11
                 final ResultSet rs = cve.getVendorProductList();
     227  11
                 if (rs == null) {
     228  0
                     throw new IndexException("No data exists");
     229  
                 }
     230  
                 try {
     231  234245
                     while (rs.next()) {
     232  234234
                         saveEntry(rs.getString(1), rs.getString(2), indexWriter);
     233  
                     }
     234  0
                 } catch (SQLException ex) {
     235  0
                     Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINE, null, ex);
     236  0
                     throw new IndexException("Error reading CPE data", ex);
     237  11
                 }
     238  0
             } catch (CorruptIndexException ex) {
     239  0
                 throw new IndexException("Unable to close an in-memory index", ex);
     240  0
             } catch (IOException ex) {
     241  0
                 throw new IndexException("Unable to close an in-memory index", ex);
     242  
             } finally {
     243  11
                 if (indexWriter != null) {
     244  
                     try {
     245  
                         try {
     246  11
                             indexWriter.commit();
     247  
                         } finally {
     248  11
                             indexWriter.close(true);
     249  11
                         }
     250  0
                     } catch (CorruptIndexException ex) {
     251  0
                         throw new IndexException("Unable to close an in-memory index", ex);
     252  0
                     } catch (IOException ex) {
     253  0
                         throw new IndexException("Unable to close an in-memory index", ex);
     254  11
                     }
     255  11
                     if (analyzer != null) {
     256  11
                         analyzer.close();
     257  
                     }
     258  
                 }
     259  
             }
     260  11
         }
     261  
     
     262  
         /**
     263  
          * Resets the searching analyzers
     264  
          */
     265  
         private void resetSearchingAnalyzer() {
     266  0
             if (productSearchFieldAnalyzer != null) {
     267  0
                 productSearchFieldAnalyzer.clear();
     268  
             }
     269  0
             if (vendorSearchFieldAnalyzer != null) {
     270  0
                 vendorSearchFieldAnalyzer.clear();
     271  
             }
     272  0
         }
     273  
     
     274  
         /**
     275  
          * Searches the index using the given search string.
     276  
          *
     277  
          * @param searchString the query text
     278  
          * @param maxQueryResults the maximum number of documents to return
     279  
          * @return the TopDocs found by the search
     280  
          * @throws ParseException thrown when the searchString is invalid
     281  
          * @throws IOException is thrown if there is an issue with the underlying
     282  
          * Index
     283  
          */
     284  
         public TopDocs search(String searchString, int maxQueryResults) throws ParseException, IOException {
     285  73
             if (searchString == null || searchString.trim().isEmpty()) {
     286  0
                 throw new ParseException("Query is null or empty");
     287  
             }
     288  73
             final Query query = queryParser.parse(searchString);
     289  73
             return indexSearcher.search(query, maxQueryResults);
     290  
         }
     291  
     
     292  
         /**
     293  
          * Searches the index using the given query.
     294  
          *
     295  
          * @param query the query used to search the index
     296  
          * @param maxQueryResults the max number of results to return
     297  
          * @return the TopDocs found be the query
     298  
          * @throws CorruptIndexException thrown if the Index is corrupt
     299  
          * @throws IOException thrown if there is an IOException
     300  
          */
     301  
         public TopDocs search(Query query, int maxQueryResults) throws CorruptIndexException, IOException {
     302  0
             resetSearchingAnalyzer();
     303  0
             return indexSearcher.search(query, maxQueryResults);
     304  
         }
     305  
     
     306  
         /**
     307  
          * Retrieves a document from the Index.
     308  
          *
     309  
          * @param documentId the id of the document to retrieve
     310  
          * @return the Document
     311  
          * @throws IOException thrown if there is an IOException
     312  
          */
     313  
         public Document getDocument(int documentId) throws IOException {
     314  745
             return indexSearcher.doc(documentId);
     315  
         }
     316  
     
     317  
         /**
     318  
          * Returns the number of CPE entries stored in the index.
     319  
          *
     320  
          * @return the number of CPE entries stored in the index
     321  
          */
     322  
         public int numDocs() {
     323  3
             if (indexReader == null) {
     324  0
                 return -1;
     325  
             }
     326  3
             return indexReader.numDocs();
     327  
         }
     328  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html new file mode 100644 index 000000000..f9494d62f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html @@ -0,0 +1,111 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.Fields
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Fields
    0%
    0/1
    N/A
    0
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cpe;
     20  
     
     21  
     /**
     22  
      * Fields is a collection of field names used within the Lucene index for CPE
     23  
      * entries.
     24  
      *
     25  
      * @author Jeremy Long (jeremy.long@owasp.org)
     26  
      */
     27  0
     public abstract class Fields {
     28  
     
     29  
         /**
     30  
          * The key for the name document id.
     31  
          */
     32  
         public static final String DOCUMENT_KEY = "id";
     33  
         /**
     34  
          * The key for the vendor field.
     35  
          */
     36  
         public static final String VENDOR = "vendor";
     37  
         /**
     38  
          * The key for the product field.
     39  
          */
     40  
         public static final String PRODUCT = "product";
     41  
         /**
     42  
          * The key for the version field.
     43  
          */
     44  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html new file mode 100644 index 000000000..72c1826ba --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html @@ -0,0 +1,366 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.IndexEntry
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    IndexEntry
    63%
    23/36
    34%
    11/32
    2.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cpe;
     20  
     
     21  
     import java.io.Serializable;
     22  
     import java.io.UnsupportedEncodingException;
     23  
     import java.net.URLDecoder;
     24  
     
     25  
     /**
     26  
      * A CPE entry containing the name, vendor, product, and version.
     27  
      *
     28  
      * @author Jeremy Long (jeremy.long@owasp.org)
     29  
      */
     30  12032
     public class IndexEntry implements Serializable {
     31  
     
     32  
         /**
     33  
          * the serial version uid.
     34  
          */
     35  
         static final long serialVersionUID = 8011924485946326934L;
     36  
         /**
     37  
          * The vendor name.
     38  
          */
     39  
         private String vendor;
     40  
         /**
     41  
          * The documentId.
     42  
          */
     43  
         private String documentId;
     44  
     
     45  
         /**
     46  
          * Get the value of documentId.
     47  
          *
     48  
          * @return the value of documentId
     49  
          */
     50  
         public String getDocumentId() {
     51  0
             if (documentId == null && vendor != null && product != null) {
     52  0
                 documentId = vendor + ":" + product;
     53  
             }
     54  0
             return documentId;
     55  
         }
     56  
     
     57  
         /**
     58  
          * Set the value of documentId.
     59  
          *
     60  
          * @param documentId new value of documentId
     61  
          */
     62  
         public void setDocumentId(String documentId) {
     63  0
             this.documentId = documentId;
     64  0
         }
     65  
     
     66  
         /**
     67  
          * Get the value of vendor.
     68  
          *
     69  
          * @return the value of vendor
     70  
          */
     71  
         public String getVendor() {
     72  3711
             return vendor;
     73  
         }
     74  
     
     75  
         /**
     76  
          * Set the value of vendor.
     77  
          *
     78  
          * @param vendor new value of vendor
     79  
          */
     80  
         public void setVendor(String vendor) {
     81  12031
             this.vendor = vendor;
     82  12031
         }
     83  
         /**
     84  
          * The product name.
     85  
          */
     86  
         private String product;
     87  
     
     88  
         /**
     89  
          * Get the value of product.
     90  
          *
     91  
          * @return the value of product
     92  
          */
     93  
         public String getProduct() {
     94  4342
             return product;
     95  
         }
     96  
     
     97  
         /**
     98  
          * Set the value of product.
     99  
          *
     100  
          * @param product new value of product
     101  
          */
     102  
         public void setProduct(String product) {
     103  12031
             this.product = product;
     104  12031
         }
     105  
         /**
     106  
          * The search score.
     107  
          */
     108  
         private float searchScore;
     109  
     
     110  
         /**
     111  
          * Get the value of searchScore.
     112  
          *
     113  
          * @return the value of searchScore
     114  
          */
     115  
         public float getSearchScore() {
     116  0
             return searchScore;
     117  
         }
     118  
     
     119  
         /**
     120  
          * Set the value of searchScore.
     121  
          *
     122  
          * @param searchScore new value of searchScore
     123  
          */
     124  
         public void setSearchScore(float searchScore) {
     125  745
             this.searchScore = searchScore;
     126  745
         }
     127  
     
     128  
         /**
     129  
          * <p>Parses a name attribute value, from the cpe.xml, into its
     130  
          * corresponding parts: vendor, product.</p>
     131  
          * <p>Example:</p>
     132  
          * <code>nbsp;nbsp;nbsp;cpe:/a:apache:struts:1.1:rc2</code>
     133  
          *
     134  
          * <p>Results in:</p> <ul> <li>Vendor: apache</li> <li>Product: struts</li>
     135  
          * </ul>
     136  
          * <p>If it is necessary to parse the CPE into more parts (i.e. to include
     137  
          * version and revision) then you should use the
     138  
          * {@link org.owasp.dependencycheck.dependency.VulnerableSoftware#parseName VulnerableSoftware.parseName()}.
     139  
          *
     140  
          * @param cpeName the cpe name
     141  
          * @throws UnsupportedEncodingException should never be thrown...
     142  
          */
     143  
         public void parseName(String cpeName) throws UnsupportedEncodingException {
     144  1
             if (cpeName != null && cpeName.length() > 7) {
     145  1
                 final String[] data = cpeName.substring(7).split(":");
     146  1
                 if (data.length >= 1) {
     147  1
                     vendor = URLDecoder.decode(data[0].replace("+", "%2B"), "UTF-8");
     148  1
                     if (data.length >= 2) {
     149  1
                         product = URLDecoder.decode(data[1].replace("+", "%2B"), "UTF-8");
     150  
                     }
     151  
                 }
     152  
             }
     153  1
         }
     154  
     
     155  
         @Override
     156  
         public int hashCode() {
     157  0
             int hash = 7;
     158  0
             hash = 97 * hash + (this.getDocumentId() != null ? this.getDocumentId().hashCode() : 0);
     159  0
             return hash;
     160  
         }
     161  
     
     162  
         @Override
     163  
         public boolean equals(Object obj) {
     164  6354
             if (obj == null) {
     165  0
                 return false;
     166  
             }
     167  6354
             if (getClass() != obj.getClass()) {
     168  0
                 return false;
     169  
             }
     170  6354
             final IndexEntry other = (IndexEntry) obj;
     171  6354
             if ((this.vendor == null) ? (other.vendor != null) : !this.vendor.equals(other.vendor)) {
     172  5139
                 return false;
     173  
             }
     174  1215
             if ((this.product == null) ? (other.product != null) : !this.product.equals(other.product)) {
     175  1215
                 return false;
     176  
             }
     177  0
             return true;
     178  
         }
     179  
     
     180  
         /**
     181  
          * Standard implementation of toString showing vendor and product.
     182  
          *
     183  
          * @return the string representation of the object
     184  
          */
     185  
         @Override
     186  
         public String toString() {
     187  0
             return "IndexEntry{" + "vendor=" + vendor + ", product=" + product + '}';
     188  
         }
     189  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html new file mode 100644 index 000000000..9e64eb47d --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html @@ -0,0 +1,150 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.IndexException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    IndexException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cpe;
     20  
     
     21  
     /**
     22  
      * An exception thrown when the there is an issue using the in-memory CPE Index.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class IndexException extends Exception {
     27  
     
     28  
         /**
     29  
          * The serial version UID for serialization.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Creates a new IndexException.
     35  
          */
     36  
         public IndexException() {
     37  0
             super();
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Creates a new IndexException.
     42  
          *
     43  
          * @param msg a message for the exception.
     44  
          */
     45  
         public IndexException(String msg) {
     46  0
             super(msg);
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Creates a new IndexException.
     51  
          *
     52  
          * @param ex the cause of the failure.
     53  
          */
     54  
         public IndexException(Throwable ex) {
     55  0
             super(ex);
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Creates a new IndexException.
     60  
          *
     61  
          * @param msg a message for the exception.
     62  
          * @param ex the cause of the failure.
     63  
          */
     64  
         public IndexException(String msg, Throwable ex) {
     65  0
             super(msg, ex);
     66  0
         }
     67  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html new file mode 100644 index 000000000..09e94cb70 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html @@ -0,0 +1,175 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cwe.CweDB
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CweDB
    47%
    11/23
    50%
    2/4
    3.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cwe;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.io.InputStream;
     23  
     import java.io.ObjectInputStream;
     24  
     import java.util.HashMap;
     25  
     import java.util.logging.Level;
     26  
     import java.util.logging.Logger;
     27  
     
     28  
     /**
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  
     public final class CweDB {
     33  
     
     34  
         /**
     35  
          * Empty private constructor as this is a utility class.
     36  
          */
     37  0
         private CweDB() {
     38  
             //empty
     39  0
         }
     40  
         /**
     41  
          * A HashMap of the CWE data.
     42  
          */
     43  1
         private static final HashMap<String, String> CWE = loadData();
     44  
     
     45  
         /**
     46  
          * Loads a HashMap containing the CWE data from a resource found in the jar.
     47  
          *
     48  
          * @return a HashMap of CWE data
     49  
          */
     50  
         private static HashMap<String, String> loadData() {
     51  1
             ObjectInputStream oin = null;
     52  
             try {
     53  1
                 final String filePath = "data/cwe.hashmap.serialized";
     54  1
                 final InputStream input = CweDB.class.getClassLoader().getResourceAsStream(filePath);
     55  1
                 oin = new ObjectInputStream(input);
     56  1
                 return (HashMap<String, String>) oin.readObject();
     57  0
             } catch (ClassNotFoundException ex) {
     58  0
                 Logger.getLogger(CweDB.class.getName()).log(Level.WARNING, "Unable to load CWE data. This should not be an issue.");
     59  0
                 Logger.getLogger(CweDB.class.getName()).log(Level.FINE, null, ex);
     60  0
             } catch (IOException ex) {
     61  0
                 Logger.getLogger(CweDB.class.getName()).log(Level.WARNING, "Unable to load CWE data due to an IO Error. This should not be an issue.");
     62  0
                 Logger.getLogger(CweDB.class.getName()).log(Level.FINE, null, ex);
     63  
             } finally {
     64  1
                 if (oin != null) {
     65  
                     try {
     66  1
                         oin.close();
     67  0
                     } catch (IOException ex) {
     68  0
                         Logger.getLogger(CweDB.class.getName()).log(Level.FINEST, null, ex);
     69  2
                     }
     70  
                 }
     71  
             }
     72  0
             return null;
     73  
         }
     74  
     
     75  
         /**
     76  
          * <p>Returns the full CWE name from the CWE ID.</p>
     77  
          *
     78  
          * @param cweId the CWE ID
     79  
          * @return the full name of the CWE
     80  
          */
     81  
         public static String getCweName(String cweId) {
     82  51
             if (cweId != null) {
     83  51
                 return CWE.get(cweId);
     84  
             }
     85  0
             return null;
     86  
         }
     87  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html new file mode 100644 index 000000000..7c10ef2e7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html @@ -0,0 +1,128 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cwe.CweHandler
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CweHandler
    0%
    0/8
    0%
    0/4
    2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cwe;
     20  
     
     21  
     import java.util.HashMap;
     22  
     import org.xml.sax.Attributes;
     23  
     import org.xml.sax.SAXException;
     24  
     import org.xml.sax.helpers.DefaultHandler;
     25  
     
     26  
     /**
     27  
      * A SAX Handler that will parse the CWE XML.
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  0
     public class CweHandler extends DefaultHandler {
     32  
     
     33  
         /**
     34  
          * a HashMap containing the CWE data.
     35  
          */
     36  0
         private final HashMap<String, String> cwe = new HashMap<String, String>();
     37  
     
     38  
         /**
     39  
          * Returns the HashMap of CWE entries (CWE-ID, Full CWE Name).
     40  
          *
     41  
          * @return a HashMap of CWE entries <String, String>
     42  
          */
     43  
         public HashMap<String, String> getCwe() {
     44  0
             return cwe;
     45  
         }
     46  
     
     47  
         @Override
     48  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     49  
     
     50  0
             if ("Weakness".equals(qName) || "Category".equals(qName)) {
     51  0
                 final String id = "CWE-" + attributes.getValue("ID");
     52  0
                 final String name = attributes.getValue("Name");
     53  0
                 cwe.put(id, name);
     54  
             }
     55  0
         }
     56  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html new file mode 100644 index 000000000..1e3fc0e74 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html @@ -0,0 +1,182 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AbstractTokenizingFilter
    100%
    12/12
    100%
    4/4
    1.25
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.util.LinkedList;
     22  
     import org.apache.lucene.analysis.TokenFilter;
     23  
     import org.apache.lucene.analysis.TokenStream;
     24  
     import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
     25  
     
     26  
     /**
     27  
      * An abstract tokenizing filter that can be used as the base for a tokenizing
     28  
      * filter.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  
     public abstract class AbstractTokenizingFilter extends TokenFilter {
     33  
     
     34  
         /**
     35  
          * The char term attribute.
     36  
          */
     37  29
         private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
     38  
     
     39  
         /**
     40  
          * Gets the CharTermAttribute.
     41  
          *
     42  
          * @return the CharTermAttribute
     43  
          */
     44  
         protected CharTermAttribute getTermAtt() {
     45  26500
             return termAtt;
     46  
         }
     47  
         /**
     48  
          * A collection of tokens to add to the stream.
     49  
          */
     50  
         private final LinkedList<String> tokens;
     51  
     
     52  
         /**
     53  
          * Gets the list of tokens.
     54  
          *
     55  
          * @return the list of tokens
     56  
          */
     57  
         protected LinkedList<String> getTokens() {
     58  26500
             return tokens;
     59  
         }
     60  
     
     61  
         /**
     62  
          * Constructs a new AbstractTokenizingFilter.
     63  
          *
     64  
          * @param stream the TokenStream that this filter will process
     65  
          */
     66  
         public AbstractTokenizingFilter(TokenStream stream) {
     67  29
             super(stream);
     68  29
             tokens = new LinkedList<String>();
     69  29
         }
     70  
     
     71  
         /**
     72  
          * Adds a term, if one exists, from the tokens collection.
     73  
          *
     74  
          * @return whether or not a new term was added
     75  
          */
     76  
         protected boolean addTerm() {
     77  26452
             final boolean termAdded = tokens.size() > 0;
     78  26452
             if (termAdded) {
     79  15013
                 final String term = tokens.pop();
     80  15013
                 clearAttributes();
     81  15013
                 termAtt.append(term);
     82  
             }
     83  26452
             return termAdded;
     84  
         }
     85  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html new file mode 100644 index 000000000..897839dfb --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html @@ -0,0 +1,147 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AlphaNumericTokenizer
    60%
    3/5
    100%
    4/4
    1.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.Reader;
     22  
     import org.apache.lucene.analysis.util.CharTokenizer;
     23  
     import org.apache.lucene.util.Version;
     24  
     
     25  
     /**
     26  
      * Tokenizes the input breaking it into tokens when non-alpha/numeric characters
     27  
      * are found.
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  
     public class AlphaNumericTokenizer extends CharTokenizer {
     32  
     
     33  
         /**
     34  
          * Constructs a new AlphaNumericTokenizer.
     35  
          *
     36  
          * @param matchVersion the lucene version
     37  
          * @param in the Reader
     38  
          */
     39  
         public AlphaNumericTokenizer(Version matchVersion, Reader in) {
     40  47
             super(matchVersion, in);
     41  47
         }
     42  
     
     43  
         /**
     44  
          * Constructs a new AlphaNumericTokenizer.
     45  
          *
     46  
          * @param matchVersion the lucene version
     47  
          * @param factory the AttributeFactory
     48  
          * @param in the Reader
     49  
          */
     50  
         public AlphaNumericTokenizer(Version matchVersion, AttributeFactory factory, Reader in) {
     51  0
             super(matchVersion, factory, in);
     52  0
         }
     53  
     
     54  
         /**
     55  
          * Determines if the char passed in is part of a token.
     56  
          *
     57  
          * @param c the char being analyzed
     58  
          * @return true if the char is a letter or digit, otherwise false
     59  
          */
     60  
         @Override
     61  
         protected boolean isTokenChar(int c) {
     62  5451773
             return Character.isLetter(c) || Character.isDigit(c);
     63  
         }
     64  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html new file mode 100644 index 000000000..d8004d95b --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html @@ -0,0 +1,122 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.DependencySimilarity
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencySimilarity
    0%
    0/2
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import org.apache.lucene.search.similarities.DefaultSimilarity;
     22  
     
     23  
     /**
     24  
      *
     25  
      * @author Jeremy Long (jeremy.long@owasp.org)
     26  
      */
     27  0
     public class DependencySimilarity extends DefaultSimilarity {
     28  
     
     29  
         /**
     30  
          * the serial version uid.
     31  
          */
     32  
         private static final long serialVersionUID = 1L;
     33  
     
     34  
         /**
     35  
          * <p>Override the default idf implementation so that frequency within all
     36  
          * document is ignored.</p>
     37  
          *
     38  
          * See <a
     39  
          * href="http://www.lucenetutorial.com/advanced-topics/scoring.html">this
     40  
          * article</a> for more details.
     41  
          *
     42  
          * @param docFreq - the number of documents which contain the term
     43  
          * @param numDocs - the total number of documents in the collection
     44  
          * @return 1
     45  
          */
     46  
         @Override
     47  
         public float idf(long docFreq, long numDocs) {
     48  0
             return 1;
     49  
         }
     50  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html new file mode 100644 index 000000000..29049de9f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html @@ -0,0 +1,177 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.FieldAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    FieldAnalyzer
    100%
    9/9
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.Reader;
     22  
     import org.apache.lucene.analysis.Analyzer;
     23  
     import org.apache.lucene.analysis.TokenStream;
     24  
     import org.apache.lucene.analysis.Tokenizer;
     25  
     import org.apache.lucene.analysis.core.LowerCaseFilter;
     26  
     import org.apache.lucene.analysis.core.StopAnalyzer;
     27  
     import org.apache.lucene.analysis.core.StopFilter;
     28  
     import org.apache.lucene.analysis.miscellaneous.WordDelimiterFilter;
     29  
     import org.apache.lucene.util.Version;
     30  
     
     31  
     /**
     32  
      * <p>A Lucene Analyzer that utilizes the WhitespaceTokenizer,
     33  
      * WordDelimiterFilter, LowerCaseFilter, and StopFilter. The intended purpose of
     34  
      * this Analyzer is to index the CPE fields vendor and product.</p>
     35  
      *
     36  
      * @author Jeremy Long (jeremy.long@owasp.org)
     37  
      */
     38  
     public class FieldAnalyzer extends Analyzer {
     39  
     
     40  
         /**
     41  
          * The Lucene Version used.
     42  
          */
     43  
         private final Version version;
     44  
     
     45  
         /**
     46  
          * Creates a new FieldAnalyzer.
     47  
          *
     48  
          * @param version the Lucene version
     49  
          */
     50  23
         public FieldAnalyzer(Version version) {
     51  23
             this.version = version;
     52  23
         }
     53  
     
     54  
         /**
     55  
          * Creates the TokenStreamComponents
     56  
          *
     57  
          * @param fieldName the field name being analyzed
     58  
          * @param reader the reader containing the input
     59  
          * @return the TokenStreamComponents
     60  
          */
     61  
         @Override
     62  
         protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
     63  23
             final Tokenizer source = new AlphaNumericTokenizer(version, reader);
     64  
     
     65  23
             TokenStream stream = source;
     66  
     
     67  23
             stream = new WordDelimiterFilter(stream,
     68  
                     WordDelimiterFilter.CATENATE_WORDS
     69  
                     | WordDelimiterFilter.GENERATE_WORD_PARTS
     70  
                     | WordDelimiterFilter.GENERATE_NUMBER_PARTS
     71  
                     | WordDelimiterFilter.PRESERVE_ORIGINAL
     72  
                     | WordDelimiterFilter.SPLIT_ON_CASE_CHANGE
     73  
                     | WordDelimiterFilter.SPLIT_ON_NUMERICS
     74  
                     | WordDelimiterFilter.STEM_ENGLISH_POSSESSIVE, null);
     75  
     
     76  23
             stream = new LowerCaseFilter(version, stream);
     77  23
             stream = new StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
     78  
     
     79  23
             return new TokenStreamComponents(source, stream);
     80  
         }
     81  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html new file mode 100644 index 000000000..20b3876fe --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html @@ -0,0 +1,228 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.LuceneUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    LuceneUtils
    88%
    16/18
    33%
    9/27
    9
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import org.apache.lucene.util.Version;
     22  
     
     23  
     /**
     24  
      * <p>Lucene utils is a set of utilize written to make constructing Lucene
     25  
      * queries simpler.</p>
     26  
      *
     27  
      * @author Jeremy Long (jeremy.long@owasp.org)
     28  
      */
     29  
     public final class LuceneUtils {
     30  
     
     31  
         /**
     32  
          * The current version of Lucene being used. Declaring this one place so an
     33  
          * upgrade doesn't require hunting through the code base.
     34  
          */
     35  1
         public static final Version CURRENT_VERSION = Version.LUCENE_45;
     36  
     
     37  
         /**
     38  
          * Private constructor as this is a utility class.
     39  
          */
     40  0
         private LuceneUtils() {
     41  0
         }
     42  
     
     43  
         /**
     44  
          * Appends the text to the supplied StringBuilder escaping Lucene control
     45  
          * characters in the process.
     46  
          *
     47  
          * @param buf a StringBuilder to append the escaped text to
     48  
          * @param text the data to be escaped
     49  
          */
     50  
         @SuppressWarnings("fallthrough")
     51  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(
     52  
                 value = "SF_SWITCH_NO_DEFAULT",
     53  
                 justification = "The switch below does have a default.")
     54  
         public static void appendEscapedLuceneQuery(StringBuilder buf,
     55  
                 final CharSequence text) {
     56  
     
     57  1158
             if (text == null || buf == null) {
     58  1
                 return;
     59  
             }
     60  
     
     61  11488
             for (int i = 0; i < text.length(); i++) {
     62  10331
                 final char c = text.charAt(i);
     63  10331
                 switch (c) {
     64  
                     case '+':
     65  
                     case '-':
     66  
                     case '&':
     67  
                     case '|':
     68  
                     case '!':
     69  
                     case '(':
     70  
                     case ')':
     71  
                     case '{':
     72  
                     case '}':
     73  
                     case '[':
     74  
                     case ']':
     75  
                     case '^':
     76  
                     case '"':
     77  
                     case '~':
     78  
                     case '*':
     79  
                     case '?':
     80  
                     case ':':
     81  
                     case '\\': //it is supposed to fall through here
     82  226
                         buf.append('\\');
     83  
                     default:
     84  10331
                         buf.append(c);
     85  
                         break;
     86  
                 }
     87  
             }
     88  1157
         }
     89  
     
     90  
         /**
     91  
          * Escapes the text passed in so that it is treated as data instead of
     92  
          * control characters.
     93  
          *
     94  
          * @param text data to be escaped
     95  
          * @return the escaped text.
     96  
          */
     97  
         public static String escapeLuceneQuery(final CharSequence text) {
     98  
     
     99  1117
             if (text == null) {
     100  1
                 return null;
     101  
             }
     102  
     
     103  1116
             int size = text.length();
     104  1116
             size = size >> 1;
     105  1116
             final StringBuilder buf = new StringBuilder(size);
     106  
     
     107  1116
             appendEscapedLuceneQuery(buf, text);
     108  
     
     109  1116
             return buf.toString();
     110  
         }
     111  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html new file mode 100644 index 000000000..b9c36151f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html @@ -0,0 +1,205 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SearchFieldAnalyzer
    100%
    15/15
    50%
    1/2
    1.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.Reader;
     22  
     import org.apache.lucene.analysis.Analyzer;
     23  
     import org.apache.lucene.analysis.TokenStream;
     24  
     import org.apache.lucene.analysis.Tokenizer;
     25  
     import org.apache.lucene.analysis.core.LowerCaseFilter;
     26  
     import org.apache.lucene.analysis.core.StopAnalyzer;
     27  
     import org.apache.lucene.analysis.core.StopFilter;
     28  
     import org.apache.lucene.analysis.miscellaneous.WordDelimiterFilter;
     29  
     import org.apache.lucene.util.Version;
     30  
     
     31  
     /**
     32  
      * A Lucene field analyzer used to analyzer queries against the CPE data.
     33  
      *
     34  
      * @author Jeremy Long (jeremy.long@owasp.org)
     35  
      */
     36  
     public class SearchFieldAnalyzer extends Analyzer {
     37  
     
     38  
         /**
     39  
          * The Lucene Version used.
     40  
          */
     41  
         private final Version version;
     42  
         /**
     43  
          * A local reference to the TokenPairConcatenatingFilter so that we can
     44  
          * clear any left over state if this analyzer is re-used.
     45  
          */
     46  
         private TokenPairConcatenatingFilter concatenatingFilter;
     47  
     
     48  
         /**
     49  
          * Constructs a new SearchFieldAnalyzer.
     50  
          *
     51  
          * @param version the Lucene version
     52  
          */
     53  24
         public SearchFieldAnalyzer(Version version) {
     54  24
             this.version = version;
     55  24
         }
     56  
     
     57  
         /**
     58  
          * Creates a the TokenStreamComponents used to analyze the stream.
     59  
          *
     60  
          * @param fieldName the field that this lucene analyzer will process
     61  
          * @param reader a reader containing the tokens
     62  
          * @return the token stream filter chain
     63  
          */
     64  
         @Override
     65  
         protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
     66  24
             final Tokenizer source = new AlphaNumericTokenizer(version, reader);
     67  
     
     68  24
             TokenStream stream = source;
     69  
     
     70  24
             stream = new WordDelimiterFilter(stream,
     71  
                     WordDelimiterFilter.GENERATE_WORD_PARTS
     72  
                     | WordDelimiterFilter.GENERATE_NUMBER_PARTS
     73  
                     | WordDelimiterFilter.PRESERVE_ORIGINAL
     74  
                     | WordDelimiterFilter.SPLIT_ON_CASE_CHANGE
     75  
                     | WordDelimiterFilter.SPLIT_ON_NUMERICS
     76  
                     | WordDelimiterFilter.STEM_ENGLISH_POSSESSIVE, null);
     77  
     
     78  24
             stream = new LowerCaseFilter(version, stream);
     79  24
             stream = new UrlTokenizingFilter(stream);
     80  24
             concatenatingFilter = new TokenPairConcatenatingFilter(stream);
     81  24
             stream = concatenatingFilter;
     82  24
             stream = new StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
     83  
     
     84  24
             return new TokenStreamComponents(source, stream);
     85  
         }
     86  
     
     87  
         /**
     88  
          * <p>Resets the analyzer and clears any internal state data that may have
     89  
          * been left-over from previous uses of the analyzer.</p>
     90  
          * <p><b>If this analyzer is re-used this method must be called between
     91  
          * uses.</b></p>
     92  
          */
     93  
         public void clear() {
     94  2
             if (concatenatingFilter != null) {
     95  2
                 concatenatingFilter.clear();
     96  
             }
     97  2
         }
     98  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html new file mode 100644 index 000000000..5e4af8a01 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html @@ -0,0 +1,164 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SearchVersionAnalyzer
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.Reader;
     22  
     import org.apache.lucene.analysis.Analyzer;
     23  
     import org.apache.lucene.analysis.TokenStream;
     24  
     import org.apache.lucene.analysis.Tokenizer;
     25  
     import org.apache.lucene.analysis.core.LowerCaseFilter;
     26  
     import org.apache.lucene.analysis.core.WhitespaceTokenizer;
     27  
     import org.apache.lucene.util.Version;
     28  
     
     29  
     /**
     30  
      * SearchVersionAnalyzer is a Lucene Analyzer used to analyze version
     31  
      * information.
     32  
      *
     33  
      * @author Jeremy Long (jeremy.long@owasp.org)
     34  
      * @deprecated version information is no longer stored in lucene
     35  
      */
     36  
     @Deprecated
     37  
     public class SearchVersionAnalyzer extends Analyzer {
     38  
         //TODO consider implementing payloads/custom attributes...
     39  
         // use custom attributes for major, minor, x, x, x, rcx
     40  
         // these can then be used to weight the score for searches on the version.
     41  
         // see http://lucene.apache.org/core/3_6_1/api/core/org/apache/lucene/analysis/package-summary.html#package_description
     42  
         // look at this article to implement
     43  
         // http://www.codewrecks.com/blog/index.php/2012/08/25/index-your-blog-using-tags-and-lucene-net/
     44  
     
     45  
         /**
     46  
          * The Lucene Version used.
     47  
          */
     48  
         private final Version version;
     49  
     
     50  
         /**
     51  
          * Creates a new SearchVersionAnalyzer.
     52  
          *
     53  
          * @param version the Lucene version
     54  
          */
     55  0
         public SearchVersionAnalyzer(Version version) {
     56  0
             this.version = version;
     57  0
         }
     58  
     
     59  
         /**
     60  
          * Creates the TokenStreamComponents
     61  
          *
     62  
          * @param fieldName the field name being analyzed
     63  
          * @param reader the reader containing the input
     64  
          * @return the TokenStreamComponents
     65  
          */
     66  
         @Override
     67  
         protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
     68  0
             final Tokenizer source = new WhitespaceTokenizer(version, reader);
     69  0
             TokenStream stream = source;
     70  0
             stream = new LowerCaseFilter(version, stream);
     71  0
             stream = new VersionTokenizingFilter(stream);
     72  0
             return new TokenStreamComponents(source, stream);
     73  
         }
     74  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..cfa8b1124 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html @@ -0,0 +1,248 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    TokenPairConcatenatingFilter
    100%
    26/26
    100%
    8/8
    2.2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.util.LinkedList;
     23  
     import org.apache.lucene.analysis.TokenFilter;
     24  
     import org.apache.lucene.analysis.TokenStream;
     25  
     import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
     26  
     
     27  
     /**
     28  
      * <p>Takes a TokenStream and adds additional tokens by concatenating pairs of
     29  
      * words.</p>
     30  
      * <p><b>Example:</b> "Spring Framework Core" -> "Spring SpringFramework
     31  
      * Framework FrameworkCore Core".</p>
     32  
      *
     33  
      * @author Jeremy Long (jeremy.long@owasp.org)
     34  
      */
     35  
     public final class TokenPairConcatenatingFilter extends TokenFilter {
     36  
     
     37  
         /**
     38  
          * The char term attribute.
     39  
          */
     40  26
         private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
     41  
         /**
     42  
          * The previous word parsed.
     43  
          */
     44  
         private String previousWord;
     45  
         /**
     46  
          * A list of words parsed.
     47  
          */
     48  
         private final LinkedList<String> words;
     49  
     
     50  
         /**
     51  
          * Returns the previous word. This is needed in the test cases.
     52  
          *
     53  
          * @return te previous word
     54  
          */
     55  
         protected String getPreviousWord() {
     56  2
             return previousWord;
     57  
         }
     58  
     
     59  
         /**
     60  
          * Returns the words list. This is needed in the test cases.
     61  
          *
     62  
          * @return the words list
     63  
          */
     64  
         protected LinkedList<String> getWords() {
     65  1
             return words;
     66  
         }
     67  
     
     68  
         /**
     69  
          * Constructs a new TokenPairConcatenatingFilter.
     70  
          *
     71  
          * @param stream the TokenStream that this filter will process
     72  
          */
     73  
         public TokenPairConcatenatingFilter(TokenStream stream) {
     74  26
             super(stream);
     75  26
             words = new LinkedList<String>();
     76  26
         }
     77  
     
     78  
         /**
     79  
          * Increments the underlying TokenStream and sets CharTermAttributes to
     80  
          * construct an expanded set of tokens by concatenating tokens with the
     81  
          * previous token.
     82  
          *
     83  
          * @return whether or not we have hit the end of the TokenStream
     84  
          * @throws IOException is thrown when an IOException occurs
     85  
          */
     86  
         @Override
     87  
         public boolean incrementToken() throws IOException {
     88  
     
     89  
             //collect all the terms into the words collection
     90  7578
             while (input.incrementToken()) {
     91  2130
                 final String word = new String(termAtt.buffer(), 0, termAtt.length());
     92  2130
                 words.add(word);
     93  2130
             }
     94  
     
     95  
             //if we have a previousTerm - write it out as its own token concatenated
     96  
             // with the current word (if one is available).
     97  5448
             if (previousWord != null && words.size() > 0) {
     98  2102
                 final String word = words.getFirst();
     99  2102
                 clearAttributes();
     100  2102
                 termAtt.append(previousWord).append(word);
     101  2102
                 previousWord = null;
     102  2102
                 return true;
     103  
             }
     104  
             //if we have words, write it out as a single token
     105  3346
             if (words.size() > 0) {
     106  2130
                 final String word = words.removeFirst();
     107  2130
                 clearAttributes();
     108  2130
                 termAtt.append(word);
     109  2130
                 previousWord = word;
     110  2130
                 return true;
     111  
             }
     112  1216
             return false;
     113  
         }
     114  
     
     115  
         /**
     116  
          * <p>Resets the Filter and clears any internal state data that may have
     117  
          * been left-over from previous uses of the Filter.</p>
     118  
          * <p><b>If this Filter is re-used this method must be called between
     119  
          * uses.</b></p>
     120  
          */
     121  
         public void clear() {
     122  3
             previousWord = null;
     123  3
             words.clear();
     124  3
         }
     125  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html new file mode 100644 index 000000000..a8eeba4a6 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html @@ -0,0 +1,174 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UrlTokenizingFilter
    80%
    16/20
    90%
    9/10
    4
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.net.MalformedURLException;
     23  
     import java.util.LinkedList;
     24  
     import java.util.List;
     25  
     import java.util.logging.Level;
     26  
     import java.util.logging.Logger;
     27  
     import org.apache.lucene.analysis.TokenStream;
     28  
     import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
     29  
     import org.owasp.dependencycheck.utils.UrlStringUtils;
     30  
     
     31  
     /**
     32  
      * <p>Takes a TokenStream and splits or adds tokens to correctly index version
     33  
      * numbers.</p>
     34  
      * <p><b>Example:</b> "3.0.0.RELEASE" -> "3 3.0 3.0.0 RELEASE
     35  
      * 3.0.0.RELEASE".</p>
     36  
      *
     37  
      * @author Jeremy Long (jeremy.long@owasp.org)
     38  
      */
     39  
     public final class UrlTokenizingFilter extends AbstractTokenizingFilter {
     40  
     
     41  
         /**
     42  
          * Constructs a new VersionTokenizingFilter.
     43  
          *
     44  
          * @param stream the TokenStream that this filter will process
     45  
          */
     46  
         public UrlTokenizingFilter(TokenStream stream) {
     47  29
             super(stream);
     48  29
         }
     49  
     
     50  
         /**
     51  
          * Increments the underlying TokenStream and sets CharTermAttributes to
     52  
          * construct an expanded set of tokens by concatenating tokens with the
     53  
          * previous token.
     54  
          *
     55  
          * @return whether or not we have hit the end of the TokenStream
     56  
          * @throws IOException is thrown when an IOException occurs
     57  
          */
     58  
         @Override
     59  
         public boolean incrementToken() throws IOException {
     60  26500
             final LinkedList<String> tokens = getTokens();
     61  26500
             final CharTermAttribute termAtt = getTermAtt();
     62  26500
             if (tokens.size() == 0 && input.incrementToken()) {
     63  15012
                 final String text = new String(termAtt.buffer(), 0, termAtt.length());
     64  15012
                 if (UrlStringUtils.containsUrl(text)) {
     65  2
                     final String[] parts = text.split("\\s");
     66  4
                     for (String part : parts) {
     67  2
                         if (UrlStringUtils.isUrl(part)) {
     68  
                             try {
     69  2
                                 final List<String> data = UrlStringUtils.extractImportantUrlData(part);
     70  2
                                 tokens.addAll(data);
     71  0
                             } catch (MalformedURLException ex) {
     72  0
                                 Logger.getLogger(UrlTokenizingFilter.class.getName()).log(Level.INFO, "error parsing " + part, ex);
     73  0
                                 tokens.add(part);
     74  2
                             }
     75  
                         } else {
     76  0
                             tokens.add(part);
     77  
                         }
     78  
                     }
     79  2
                 } else {
     80  15010
                     tokens.add(text);
     81  
                 }
     82  
             }
     83  26452
             return addTerm();
     84  
         }
     85  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html new file mode 100644 index 000000000..eb51b067e --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html @@ -0,0 +1,161 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.VersionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VersionAnalyzer
    0%
    0/7
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.Reader;
     22  
     import org.apache.lucene.analysis.Analyzer;
     23  
     import org.apache.lucene.analysis.TokenStream;
     24  
     import org.apache.lucene.analysis.Tokenizer;
     25  
     import org.apache.lucene.analysis.core.LowerCaseFilter;
     26  
     import org.apache.lucene.analysis.core.WhitespaceTokenizer;
     27  
     import org.apache.lucene.util.Version;
     28  
     
     29  
     /**
     30  
      * VersionAnalyzer is a Lucene Analyzer used to analyze version information.
     31  
      *
     32  
      * @author Jeremy Long (jeremy.long@owasp.org)
     33  
      * @deprecated version information is no longer stored in lucene
     34  
      */
     35  
     @Deprecated
     36  
     public class VersionAnalyzer extends Analyzer {
     37  
         //TODO consider implementing payloads/custom attributes...
     38  
         // use custom attributes for major, minor, x, x, x, rcx
     39  
         // these can then be used to weight the score for searches on the version.
     40  
         // see http://lucene.apache.org/core/3_6_1/api/core/org/apache/lucene/analysis/package-summary.html#package_description
     41  
         // look at this article to implement
     42  
         // http://www.codewrecks.com/blog/index.php/2012/08/25/index-your-blog-using-tags-and-lucene-net/
     43  
     
     44  
         /**
     45  
          * The Lucene Version used.
     46  
          */
     47  
         private final Version version;
     48  
     
     49  
         /**
     50  
          * Creates a new VersionAnalyzer.
     51  
          *
     52  
          * @param version the Lucene version
     53  
          */
     54  0
         public VersionAnalyzer(Version version) {
     55  0
             this.version = version;
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Creates the TokenStreamComponents
     60  
          *
     61  
          * @param fieldName the field name being analyzed
     62  
          * @param reader the reader containing the input
     63  
          * @return the TokenStreamComponents
     64  
          */
     65  
         @Override
     66  
         protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
     67  0
             final Tokenizer source = new WhitespaceTokenizer(version, reader);
     68  0
             TokenStream stream = source;
     69  0
             stream = new LowerCaseFilter(version, stream);
     70  0
             return new TokenStreamComponents(source, stream);
     71  
         }
     72  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html new file mode 100644 index 000000000..0427c0b71 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html @@ -0,0 +1,202 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VersionTokenizingFilter
    0%
    0/22
    0%
    0/12
    3
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.lucene;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.util.LinkedList;
     23  
     import org.apache.lucene.analysis.TokenStream;
     24  
     import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
     25  
     
     26  
     /**
     27  
      * <p>Takes a TokenStream and splits or adds tokens to correctly index version
     28  
      * numbers.</p>
     29  
      * <p><b>Example:</b> "3.0.0.RELEASE" -> "3 3.0 3.0.0 RELEASE
     30  
      * 3.0.0.RELEASE".</p>
     31  
      *
     32  
      * @author Jeremy Long (jeremy.long@owasp.org)
     33  
      * @deprecated version information is no longer stored in lucene
     34  
      */
     35  
     @Deprecated
     36  
     public final class VersionTokenizingFilter extends AbstractTokenizingFilter {
     37  
     
     38  
         /**
     39  
          * Constructs a new VersionTokenizingFilter.
     40  
          *
     41  
          * @param stream the TokenStream that this filter will process
     42  
          */
     43  
         public VersionTokenizingFilter(TokenStream stream) {
     44  0
             super(stream);
     45  0
         }
     46  
     
     47  
         /**
     48  
          * Increments the underlying TokenStream and sets CharTermAttributes to
     49  
          * construct an expanded set of tokens by concatenating tokens with the
     50  
          * previous token.
     51  
          *
     52  
          * @return whether or not we have hit the end of the TokenStream
     53  
          * @throws IOException is thrown when an IOException occurs
     54  
          */
     55  
         @Override
     56  
         public boolean incrementToken() throws IOException {
     57  0
             final LinkedList<String> tokens = getTokens();
     58  0
             final CharTermAttribute termAtt = getTermAtt();
     59  0
             if (tokens.size() == 0 && input.incrementToken()) {
     60  0
                 final String version = new String(termAtt.buffer(), 0, termAtt.length());
     61  0
                 final String[] toAnalyze = version.split("[_-]");
     62  
                 //ensure we analyze the whole string as one too
     63  0
                 analyzeVersion(version);
     64  0
                 for (String str : toAnalyze) {
     65  0
                     analyzeVersion(str);
     66  
                 }
     67  
             }
     68  0
             return addTerm();
     69  
         }
     70  
     
     71  
         /**
     72  
          * <p>Analyzes the version and adds several copies of the version as
     73  
          * different tokens. For example, the version 1.2.7 would create the tokens
     74  
          * 1 1.2 1.2.7. This is useful in discovering the correct version -
     75  
          * sometimes a maintenance or build number will throw off the version
     76  
          * identification.</p>
     77  
          *
     78  
          * <p>expected&nbsp;format:&nbps;major.minor[.maintenance[.build]]</p>
     79  
          *
     80  
          * @param version the version to analyze
     81  
          */
     82  
         private void analyzeVersion(String version) {
     83  
             //todo should we also be splitting on dash or underscore? we would need
     84  
             //  to incorporate the dash or underscore back in...
     85  0
             final LinkedList<String> tokens = getTokens();
     86  0
             final String[] versionParts = version.split("\\.");
     87  0
             String dottedVersion = null;
     88  0
             for (String current : versionParts) {
     89  0
                 if (!current.matches("^/d+$")) {
     90  0
                     tokens.add(current);
     91  
                 }
     92  0
                 if (dottedVersion == null) {
     93  0
                     dottedVersion = current;
     94  
                 } else {
     95  0
                     dottedVersion = dottedVersion + "." + current;
     96  
                 }
     97  0
                 tokens.add(dottedVersion);
     98  
             }
     99  0
         }
     100  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html new file mode 100644 index 000000000..4db2946eb --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html @@ -0,0 +1,124 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CorruptDatabaseException
    0%
    0/4
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.nvdcve;
     20  
     
     21  
     /**
     22  
      * An exception used to indicate the db4o database is corrupt. This could be due
     23  
      * to invalid data or a complete failure of the db.
     24  
      *
     25  
      * @author Jeremy Long (jeremy.long@owasp.org)
     26  
      */
     27  
     class CorruptDatabaseException extends DatabaseException {
     28  
     
     29  
         /**
     30  
          * the serial version uid.
     31  
          */
     32  
         private static final long serialVersionUID = 1L;
     33  
     
     34  
         /**
     35  
          * Creates an CorruptDatabaseException
     36  
          *
     37  
          * @param msg the exception message
     38  
          */
     39  
         public CorruptDatabaseException(String msg) {
     40  0
             super(msg);
     41  0
         }
     42  
     
     43  
         /**
     44  
          * Creates an CorruptDatabaseException
     45  
          *
     46  
          * @param msg the exception message
     47  
          * @param ex the cause of the exception
     48  
          */
     49  
         public CorruptDatabaseException(String msg, Exception ex) {
     50  0
             super(msg, ex);
     51  0
         }
     52  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html new file mode 100644 index 000000000..e75b2efed --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html @@ -0,0 +1,864 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.CveDB
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CveDB
    47%
    124/260
    64%
    49/76
    6.778
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.nvdcve;
     20  
     
     21  
     import java.io.UnsupportedEncodingException;
     22  
     import java.sql.PreparedStatement;
     23  
     import java.sql.ResultSet;
     24  
     import java.sql.SQLException;
     25  
     import java.sql.Statement;
     26  
     import java.util.ArrayList;
     27  
     import java.util.HashSet;
     28  
     import java.util.List;
     29  
     import java.util.Set;
     30  
     import java.util.logging.Level;
     31  
     import java.util.logging.Logger;
     32  
     import org.owasp.dependencycheck.data.BaseDB;
     33  
     import org.owasp.dependencycheck.data.cwe.CweDB;
     34  
     import org.owasp.dependencycheck.dependency.Reference;
     35  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     36  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     37  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     38  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     39  
     
     40  
     /**
     41  
      * The database holding information about the NVD CVE data.
     42  
      *
     43  
      * @author Jeremy Long (jeremy.long@owasp.org)
     44  
      */
     45  21
     public class CveDB extends BaseDB {
     46  
     
     47  
         //<editor-fold defaultstate="collapsed" desc="Constants to create, maintain, and retrieve data from the CVE Database">
     48  
         /**
     49  
          * SQL Statement to delete references by vulnerability ID.
     50  
          */
     51  
         private static final String DELETE_REFERENCE = "DELETE FROM reference WHERE cveid = ?";
     52  
         /**
     53  
          * SQL Statement to delete software by vulnerability ID.
     54  
          */
     55  
         private static final String DELETE_SOFTWARE = "DELETE FROM software WHERE cveid = ?";
     56  
         /**
     57  
          * SQL Statement to delete a vulnerability by CVE.
     58  
          */
     59  
         private static final String DELETE_VULNERABILITY = "DELETE FROM vulnerability WHERE id = ?";
     60  
         /**
     61  
          * SQL Statement to cleanup orphan entries. Yes, the db schema could be a
     62  
          * little tighter, but what we have works well to keep the data file size
     63  
          * down a bit.
     64  
          */
     65  
         private static final String CLEANUP_ORPHANS = "DELETE FROM CpeEntry WHERE id not in (SELECT CPEEntryId FROM Software); ";
     66  
         /**
     67  
          * SQL Statement to insert a new reference.
     68  
          */
     69  
         private static final String INSERT_REFERENCE = "INSERT INTO reference (cveid, name, url, source) VALUES (?, ?, ?, ?)";
     70  
         /**
     71  
          * SQL Statement to insert a new software.
     72  
          */
     73  
         private static final String INSERT_SOFTWARE = "INSERT INTO software (cveid, cpeEntryId, previousVersion) VALUES (?, ?, ?)";
     74  
         /**
     75  
          * SQL Statement to insert a new cpe.
     76  
          */
     77  
         private static final String INSERT_CPE = "INSERT INTO cpeEntry (cpe, vendor, product) VALUES (?, ?, ?)";
     78  
         /**
     79  
          * SQL Statement to get a CPEProductID.
     80  
          */
     81  
         private static final String SELECT_CPE_ID = "SELECT id FROM cpeEntry WHERE cpe = ?";
     82  
         /**
     83  
          * SQL Statement to insert a new vulnerability.
     84  
          */
     85  
         private static final String INSERT_VULNERABILITY = "INSERT INTO vulnerability (cve, description, cwe, cvssScore, cvssAccessVector, "
     86  
                 + "cvssAccessComplexity, cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact) "
     87  
                 + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
     88  
         /**
     89  
          * SQL Statement to update a vulnerability.
     90  
          */
     91  
         private static final String UPDATE_VULNERABILITY = "UPDATE vulnerability SET description=?, cwe=?, cvssScore=?, cvssAccessVector=?, "
     92  
                 + "cvssAccessComplexity=?, cvssAuthentication=?, cvssConfidentialityImpact=?, cvssIntegrityImpact=?, cvssAvailabilityImpact=? "
     93  
                 + "WHERE id=?";
     94  
         /**
     95  
          * SQL Statement to find CVE entries based on CPE data.
     96  
          */
     97  
         private static final String SELECT_CVE_FROM_SOFTWARE = "SELECT cve, cpe, previousVersion "
     98  
                 + "FROM software INNER JOIN vulnerability ON vulnerability.id = software.cveId "
     99  
                 + "INNER JOIN cpeEntry ON cpeEntry.id = software.cpeEntryId "
     100  
                 + "WHERE vendor = ? AND product = ?";
     101  
         //unfortunately, the version info is too complicated to do in a select. Need to filter this afterwards
     102  
         //        + " AND (version = '-' OR previousVersion IS NOT NULL OR version=?)";
     103  
         //
     104  
         /**
     105  
          * SQL Statement to find the CPE entry based on the vendor and product.
     106  
          */
     107  
         private static final String SELECT_CPE_ENTRIES = "SELECT cpe FROM cpeEntry WHERE vendor = ? AND product = ?";
     108  
         /**
     109  
          * SQL Statement to select references by CVEID.
     110  
          */
     111  
         private static final String SELECT_REFERENCE = "SELECT source, name, url FROM reference WHERE cveid = ?";
     112  
         /**
     113  
          * SQL Statement to select vendor and product for lucene index.
     114  
          */
     115  
         private static final String SELECT_VENDOR_PRODUCT_LIST = "SELECT vendor, product FROM cpeEntry GROUP BY vendor, product";
     116  
         /**
     117  
          * SQL Statement to select software by CVEID.
     118  
          */
     119  
         private static final String SELECT_SOFTWARE = "SELECT cpe, previousVersion "
     120  
                 + "FROM software INNER JOIN cpeEntry ON software.cpeEntryId = cpeEntry.id WHERE cveid = ?";
     121  
     //    public static final String SELECT_SOFTWARE = "SELECT part, vendor, product, version, revision, previousVersion "
     122  
     //            + "FROM software INNER JOIN cpeProduct ON cpeProduct.id = software.cpeProductId LEFT JOIN cpeVersion ON "
     123  
     //            + "software.cpeVersionId = cpeVersion.id LEFT JOIN Version ON cpeVersion.versionId = version.id WHERE cveid = ?";
     124  
         /**
     125  
          * SQL Statement to select a vulnerability by CVEID.
     126  
          */
     127  
         private static final String SELECT_VULNERABILITY = "SELECT id, description, cwe, cvssScore, cvssAccessVector, cvssAccessComplexity, "
     128  
                 + "cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact FROM vulnerability WHERE cve = ?";
     129  
         /**
     130  
          * SQL Statement to select a vulnerability's primary key.
     131  
          */
     132  
         private static final String SELECT_VULNERABILITY_ID = "SELECT id FROM vulnerability WHERE cve = ?";
     133  
         //</editor-fold>
     134  
     
     135  
         /**
     136  
          * Searches the CPE entries in the database and retrieves all entries for a
     137  
          * given vendor and product combination. The returned list will include all
     138  
          * versions of the product that are registered in the NVD CVE data.
     139  
          *
     140  
          * @param vendor the identified vendor name of the dependency being analyzed
     141  
          * @param product the identified name of the product of the dependency being
     142  
          * analyzed
     143  
          * @return a set of vulnerable software
     144  
          */
     145  
         public Set<VulnerableSoftware> getCPEs(String vendor, String product) {
     146  72
             final Set<VulnerableSoftware> cpe = new HashSet<VulnerableSoftware>();
     147  72
             ResultSet rs = null;
     148  72
             PreparedStatement ps = null;
     149  
             try {
     150  72
                 ps = getConnection().prepareStatement(SELECT_CPE_ENTRIES);
     151  72
                 ps.setString(1, vendor);
     152  72
                 ps.setString(2, product);
     153  72
                 rs = ps.executeQuery();
     154  
     
     155  4462
                 while (rs.next()) {
     156  4390
                     final VulnerableSoftware vs = new VulnerableSoftware();
     157  4390
                     vs.setCpe(rs.getString(1));
     158  4390
                     cpe.add(vs);
     159  4390
                 }
     160  0
             } catch (SQLException ex) {
     161  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
     162  
             } finally {
     163  72
                 closeResultSet(rs);
     164  72
                 closeStatement(ps);
     165  72
             }
     166  72
             return cpe;
     167  
         }
     168  
     
     169  
         /**
     170  
          * Returns the entire list of vendor/product combinations.
     171  
          *
     172  
          * @return the entire list of vendor/product combinations.
     173  
          */
     174  
         public ResultSet getVendorProductList() {
     175  11
             ResultSet rs = null;
     176  
             try {
     177  11
                 final PreparedStatement ps = getConnection().prepareStatement(SELECT_VENDOR_PRODUCT_LIST);
     178  11
                 rs = ps.executeQuery();
     179  0
             } catch (SQLException ex) {
     180  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
     181  11
             } // can't close the statement in the PS as the resultset is returned, closing PS would close the resultset
     182  11
             return rs;
     183  
         }
     184  
     
     185  
         /**
     186  
          * Retrieves the vulnerabilities associated with the specified CPE.
     187  
          *
     188  
          * @param cpeStr the CPE name
     189  
          * @return a list of Vulnerabilities
     190  
          * @throws DatabaseException thrown if there is an exception retrieving data
     191  
          */
     192  
         public List<Vulnerability> getVulnerabilities(String cpeStr) throws DatabaseException {
     193  12
             ResultSet rs = null;
     194  12
             final VulnerableSoftware cpe = new VulnerableSoftware();
     195  
             try {
     196  12
                 cpe.parseName(cpeStr);
     197  0
             } catch (UnsupportedEncodingException ex) {
     198  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
     199  12
             }
     200  12
             final DependencyVersion detectedVersion = parseDependencyVersion(cpe);
     201  12
             final List<Vulnerability> vulnerabilities = new ArrayList<Vulnerability>();
     202  
     
     203  
             PreparedStatement ps;
     204  12
             final HashSet<String> cveEntries = new HashSet<String>();
     205  
             try {
     206  12
                 ps = getConnection().prepareStatement(SELECT_CVE_FROM_SOFTWARE);
     207  12
                 ps.setString(1, cpe.getVendor());
     208  12
                 ps.setString(2, cpe.getProduct());
     209  12
                 rs = ps.executeQuery();
     210  4591
                 while (rs.next()) {
     211  4579
                     final String cveId = rs.getString(1);
     212  4579
                     final String cpeId = rs.getString(2);
     213  4579
                     final String previous = rs.getString(3);
     214  4579
                     if (!cveEntries.contains(cveId) && isAffected(cpe.getVendor(), cpe.getProduct(), detectedVersion, cpeId, previous)) {
     215  61
                         cveEntries.add(cveId);
     216  
                     }
     217  4579
                 }
     218  12
                 closeResultSet(rs);
     219  12
                 closeStatement(ps);
     220  12
                 for (String cve : cveEntries) {
     221  61
                     final Vulnerability v = getVulnerability(cve);
     222  61
                     vulnerabilities.add(v);
     223  61
                 }
     224  
     
     225  0
             } catch (SQLException ex) {
     226  0
                 throw new DatabaseException("Exception retrieving vulnerability for " + cpeStr, ex);
     227  
             } finally {
     228  12
                 closeResultSet(rs);
     229  12
             }
     230  12
             return vulnerabilities;
     231  
         }
     232  
     
     233  
         /**
     234  
          * Gets a vulnerability for the provided CVE.
     235  
          *
     236  
          * @param cve the CVE to lookup
     237  
          * @return a vulnerability object
     238  
          * @throws DatabaseException if an exception occurs
     239  
          */
     240  
         private Vulnerability getVulnerability(String cve) throws DatabaseException {
     241  61
             PreparedStatement psV = null;
     242  61
             PreparedStatement psR = null;
     243  61
             PreparedStatement psS = null;
     244  61
             ResultSet rsV = null;
     245  61
             ResultSet rsR = null;
     246  61
             ResultSet rsS = null;
     247  61
             Vulnerability vuln = null;
     248  
             try {
     249  61
                 psV = getConnection().prepareStatement(SELECT_VULNERABILITY);
     250  61
                 psV.setString(1, cve);
     251  61
                 rsV = psV.executeQuery();
     252  61
                 if (rsV.next()) {
     253  61
                     vuln = new Vulnerability();
     254  61
                     vuln.setName(cve);
     255  61
                     vuln.setDescription(rsV.getString(2));
     256  61
                     String cwe = rsV.getString(3);
     257  61
                     if (cwe != null) {
     258  50
                         final String name = CweDB.getCweName(cwe);
     259  50
                         if (name != null) {
     260  48
                             cwe += " " + name;
     261  
                         }
     262  
                     }
     263  61
                     final int cveId = rsV.getInt(1);
     264  61
                     vuln.setCwe(cwe);
     265  61
                     vuln.setCvssScore(rsV.getFloat(4));
     266  61
                     vuln.setCvssAccessVector(rsV.getString(5));
     267  61
                     vuln.setCvssAccessComplexity(rsV.getString(6));
     268  61
                     vuln.setCvssAuthentication(rsV.getString(7));
     269  61
                     vuln.setCvssConfidentialityImpact(rsV.getString(8));
     270  61
                     vuln.setCvssIntegrityImpact(rsV.getString(9));
     271  61
                     vuln.setCvssAvailabilityImpact(rsV.getString(10));
     272  
     
     273  61
                     psR = getConnection().prepareStatement(SELECT_REFERENCE);
     274  61
                     psR.setInt(1, cveId);
     275  61
                     rsR = psR.executeQuery();
     276  477
                     while (rsR.next()) {
     277  416
                         vuln.addReference(rsR.getString(1), rsR.getString(2), rsR.getString(3));
     278  
                     }
     279  61
                     psS = getConnection().prepareStatement(SELECT_SOFTWARE);
     280  61
                     psS.setInt(1, cveId);
     281  61
                     rsS = psS.executeQuery();
     282  2765
                     while (rsS.next()) {
     283  2704
                         final String cpe = rsS.getString(1);
     284  2704
                         final String prevVersion = rsS.getString(2);
     285  2704
                         if (prevVersion == null) {
     286  2662
                             vuln.addVulnerableSoftware(cpe);
     287  
                         } else {
     288  42
                             vuln.addVulnerableSoftware(cpe, prevVersion);
     289  
                         }
     290  2704
                     }
     291  
                 }
     292  0
             } catch (SQLException ex) {
     293  0
                 throw new DatabaseException("Error retrieving " + cve, ex);
     294  
             } finally {
     295  61
                 closeResultSet(rsV);
     296  61
                 closeResultSet(rsR);
     297  61
                 closeResultSet(rsS);
     298  61
                 closeStatement(psV);
     299  61
                 closeStatement(psR);
     300  61
                 closeStatement(psS);
     301  61
             }
     302  61
             return vuln;
     303  
         }
     304  
     
     305  
         /**
     306  
          * Updates the vulnerability within the database. If the vulnerability does
     307  
          * not exist it will be added.
     308  
          *
     309  
          * @param vuln the vulnerability to add to the database
     310  
          * @throws DatabaseException is thrown if the database
     311  
          */
     312  
         public void updateVulnerability(Vulnerability vuln) throws DatabaseException {
     313  0
             PreparedStatement selectVulnerabilityId = null;
     314  0
             PreparedStatement deleteVulnerability = null;
     315  0
             PreparedStatement deleteReferences = null;
     316  0
             PreparedStatement deleteSoftware = null;
     317  0
             PreparedStatement updateVulnerability = null;
     318  0
             PreparedStatement insertVulnerability = null;
     319  0
             PreparedStatement insertReference = null;
     320  0
             PreparedStatement selectCpeId = null;
     321  0
             PreparedStatement insertCpe = null;
     322  0
             PreparedStatement insertSoftware = null;
     323  
     
     324  
             try {
     325  0
                 selectVulnerabilityId = getConnection().prepareStatement(SELECT_VULNERABILITY_ID);
     326  0
                 deleteVulnerability = getConnection().prepareStatement(DELETE_VULNERABILITY);
     327  0
                 deleteReferences = getConnection().prepareStatement(DELETE_REFERENCE);
     328  0
                 deleteSoftware = getConnection().prepareStatement(DELETE_SOFTWARE);
     329  0
                 updateVulnerability = getConnection().prepareStatement(UPDATE_VULNERABILITY);
     330  0
                 insertVulnerability = getConnection().prepareStatement(INSERT_VULNERABILITY, Statement.RETURN_GENERATED_KEYS);
     331  0
                 insertReference = getConnection().prepareStatement(INSERT_REFERENCE);
     332  0
                 selectCpeId = getConnection().prepareStatement(SELECT_CPE_ID);
     333  0
                 insertCpe = getConnection().prepareStatement(INSERT_CPE, Statement.RETURN_GENERATED_KEYS);
     334  0
                 insertSoftware = getConnection().prepareStatement(INSERT_SOFTWARE);
     335  0
                 int vulnerabilityId = 0;
     336  0
                 selectVulnerabilityId.setString(1, vuln.getName());
     337  0
                 ResultSet rs = selectVulnerabilityId.executeQuery();
     338  0
                 if (rs.next()) {
     339  0
                     vulnerabilityId = rs.getInt(1);
     340  
                     // first delete any existing vulnerability info. We don't know what was updated. yes, slower but atm easier.
     341  0
                     deleteReferences.setInt(1, vulnerabilityId);
     342  0
                     deleteReferences.execute();
     343  0
                     deleteSoftware.setInt(1, vulnerabilityId);
     344  0
                     deleteSoftware.execute();
     345  
                 }
     346  0
                 closeResultSet(rs);
     347  0
                 rs = null;
     348  0
                 if (vulnerabilityId != 0) {
     349  0
                     if (vuln.getDescription().contains("** REJECT **")) {
     350  0
                         deleteVulnerability.setInt(1, vulnerabilityId);
     351  0
                         deleteVulnerability.executeUpdate();
     352  
                     } else {
     353  0
                         updateVulnerability.setString(1, vuln.getDescription());
     354  0
                         updateVulnerability.setString(2, vuln.getCwe());
     355  0
                         updateVulnerability.setFloat(3, vuln.getCvssScore());
     356  0
                         updateVulnerability.setString(4, vuln.getCvssAccessVector());
     357  0
                         updateVulnerability.setString(5, vuln.getCvssAccessComplexity());
     358  0
                         updateVulnerability.setString(6, vuln.getCvssAuthentication());
     359  0
                         updateVulnerability.setString(7, vuln.getCvssConfidentialityImpact());
     360  0
                         updateVulnerability.setString(8, vuln.getCvssIntegrityImpact());
     361  0
                         updateVulnerability.setString(9, vuln.getCvssAvailabilityImpact());
     362  0
                         updateVulnerability.setInt(10, vulnerabilityId);
     363  0
                         updateVulnerability.executeUpdate();
     364  
                     }
     365  
                 } else {
     366  0
                     insertVulnerability.setString(1, vuln.getName());
     367  0
                     insertVulnerability.setString(2, vuln.getDescription());
     368  0
                     insertVulnerability.setString(3, vuln.getCwe());
     369  0
                     insertVulnerability.setFloat(4, vuln.getCvssScore());
     370  0
                     insertVulnerability.setString(5, vuln.getCvssAccessVector());
     371  0
                     insertVulnerability.setString(6, vuln.getCvssAccessComplexity());
     372  0
                     insertVulnerability.setString(7, vuln.getCvssAuthentication());
     373  0
                     insertVulnerability.setString(8, vuln.getCvssConfidentialityImpact());
     374  0
                     insertVulnerability.setString(9, vuln.getCvssIntegrityImpact());
     375  0
                     insertVulnerability.setString(10, vuln.getCvssAvailabilityImpact());
     376  0
                     insertVulnerability.execute();
     377  
                     try {
     378  0
                         rs = insertVulnerability.getGeneratedKeys();
     379  0
                         rs.next();
     380  0
                         vulnerabilityId = rs.getInt(1);
     381  0
                     } catch (SQLException ex) {
     382  0
                         final String msg = String.format("Unable to retrieve id for new vulnerability for '%s'", vuln.getName());
     383  0
                         throw new DatabaseException(msg, ex);
     384  
                     } finally {
     385  0
                         closeResultSet(rs);
     386  0
                         rs = null;
     387  0
                     }
     388  
                 }
     389  0
                 insertReference.setInt(1, vulnerabilityId);
     390  0
                 for (Reference r : vuln.getReferences()) {
     391  0
                     insertReference.setString(2, r.getName());
     392  0
                     insertReference.setString(3, r.getUrl());
     393  0
                     insertReference.setString(4, r.getSource());
     394  0
                     insertReference.execute();
     395  
                 }
     396  0
                 for (VulnerableSoftware s : vuln.getVulnerableSoftware()) {
     397  0
                     int cpeProductId = 0;
     398  0
                     selectCpeId.setString(1, s.getName());
     399  
                     try {
     400  0
                         rs = selectCpeId.executeQuery();
     401  0
                         if (rs.next()) {
     402  0
                             cpeProductId = rs.getInt(1);
     403  
                         }
     404  0
                     } catch (SQLException ex) {
     405  0
                         throw new DatabaseException("Unable to get primary key for new cpe: " + s.getName(), ex);
     406  
                     } finally {
     407  0
                         closeResultSet(rs);
     408  0
                         rs = null;
     409  0
                     }
     410  
     
     411  0
                     if (cpeProductId == 0) {
     412  0
                         insertCpe.setString(1, s.getName());
     413  0
                         insertCpe.setString(2, s.getVendor());
     414  0
                         insertCpe.setString(3, s.getProduct());
     415  0
                         insertCpe.executeUpdate();
     416  0
                         cpeProductId = getGeneratedKey(insertCpe);
     417  
                     }
     418  0
                     if (cpeProductId == 0) {
     419  0
                         throw new DatabaseException("Unable to retrieve cpeProductId - no data returned");
     420  
                     }
     421  
     
     422  0
                     insertSoftware.setInt(1, vulnerabilityId);
     423  0
                     insertSoftware.setInt(2, cpeProductId);
     424  0
                     if (s.getPreviousVersion() == null) {
     425  0
                         insertSoftware.setNull(3, java.sql.Types.VARCHAR);
     426  
                     } else {
     427  0
                         insertSoftware.setString(3, s.getPreviousVersion());
     428  
                     }
     429  0
                     insertSoftware.execute();
     430  0
                 }
     431  
     
     432  0
             } catch (SQLException ex) {
     433  0
                 final String msg = String.format("Error updating '%s'", vuln.getName());
     434  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.FINE, null, ex);
     435  0
                 throw new DatabaseException(msg, ex);
     436  
             } finally {
     437  0
                 closeStatement(selectVulnerabilityId);
     438  0
                 closeStatement(deleteReferences);
     439  0
                 closeStatement(deleteSoftware);
     440  0
                 closeStatement(updateVulnerability);
     441  0
                 closeStatement(deleteVulnerability);
     442  0
                 closeStatement(insertVulnerability);
     443  0
                 closeStatement(insertReference);
     444  0
                 closeStatement(selectCpeId);
     445  0
                 closeStatement(insertCpe);
     446  0
                 closeStatement(insertSoftware);
     447  0
             }
     448  0
         }
     449  
     
     450  
         /**
     451  
          * It is possible that orphaned rows may be generated during database
     452  
          * updates. This should be called after all updates have been completed to
     453  
          * ensure orphan entries are removed.
     454  
          */
     455  
         public void cleanupDatabase() {
     456  0
             PreparedStatement ps = null;
     457  
             try {
     458  0
                 ps = getConnection().prepareStatement(CLEANUP_ORPHANS);
     459  0
                 if (ps != null) {
     460  0
                     ps.executeUpdate();
     461  
                 }
     462  0
             } catch (SQLException ex) {
     463  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
     464  
             } finally {
     465  0
                 closeStatement(ps);
     466  0
             }
     467  0
         }
     468  
     
     469  
         /**
     470  
          * Determines if the given identifiedVersion is affected by the given cpeId
     471  
          * and previous version flag. A non-null, non-empty string passed to the
     472  
          * previous version argument indicates that all previous versions are
     473  
          * affected.
     474  
          *
     475  
          * @param vendor the vendor of the dependency being analyzed
     476  
          * @param product the product name of the dependency being analyzed
     477  
          * @param identifiedVersion the identified version of the dependency being
     478  
          * analyzed
     479  
          * @param cpeId the cpe identifier of software that has a known
     480  
          * vulnerability
     481  
          * @param previous a flag indicating if previous versions of the product are
     482  
          * vulnerable
     483  
          * @return true if the identified version is affected, otherwise false
     484  
          */
     485  
         private boolean isAffected(String vendor, String product, DependencyVersion identifiedVersion, String cpeId, String previous) {
     486  3528
             boolean affected = false;
     487  3528
             final boolean isStruts = "apache".equals(vendor) && "struts".equals(product);
     488  3528
             final DependencyVersion v = parseDependencyVersion(cpeId);
     489  3528
             final boolean prevAffected = previous == null ? false : !previous.isEmpty();
     490  3528
             if (identifiedVersion == null || "-".equals(identifiedVersion.toString())) {
     491  96
                 if (v == null || "-".equals(v.toString())) {
     492  0
                     affected = true;
     493  
                 }
     494  3432
             } else if (identifiedVersion.equals(v) || (prevAffected && identifiedVersion.compareTo(v) < 0)) {
     495  83
                 if (isStruts) { //struts 2 vulns don't affect struts 1
     496  72
                     if (identifiedVersion.getVersionParts().get(0).equals(v.getVersionParts().get(0))) {
     497  50
                         affected = true;
     498  
                     }
     499  
                 } else {
     500  11
                     affected = true;
     501  
                 }
     502  
             }
     503  
             /*
     504  
              * TODO consider utilizing the matchThreeVersion method to get additional results. However, this
     505  
              *      might also introduce false positives.
     506  
              */
     507  3528
             return affected;
     508  
         }
     509  
     
     510  
         /**
     511  
          * Parses the version (including revision) from a CPE identifier. If no
     512  
          * version is identified then a '-' is returned.
     513  
          *
     514  
          * @param cpeStr a cpe identifier
     515  
          * @return a dependency version
     516  
          */
     517  
         private DependencyVersion parseDependencyVersion(String cpeStr) {
     518  3528
             final VulnerableSoftware cpe = new VulnerableSoftware();
     519  
             try {
     520  3528
                 cpe.parseName(cpeStr);
     521  0
             } catch (UnsupportedEncodingException ex) {
     522  
                 //never going to happen.
     523  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
     524  3528
             }
     525  3528
             return parseDependencyVersion(cpe);
     526  
         }
     527  
     
     528  
         /**
     529  
          * Takes a CPE and parses out the version number. If no version is
     530  
          * identified then a '-' is returned.
     531  
          *
     532  
          * @param cpe a cpe object
     533  
          * @return a dependency version
     534  
          */
     535  
         private DependencyVersion parseDependencyVersion(VulnerableSoftware cpe) {
     536  
             DependencyVersion cpeVersion;
     537  3540
             if (cpe.getVersion() != null && cpe.getVersion().length() > 0) {
     538  
                 String versionText;
     539  3536
                 if (cpe.getRevision() != null && cpe.getRevision().length() > 0) {
     540  441
                     versionText = String.format("%s.%s", cpe.getVersion(), cpe.getRevision());
     541  
                 } else {
     542  3095
                     versionText = cpe.getVersion();
     543  
                 }
     544  3536
                 cpeVersion = DependencyVersionUtil.parseVersion(versionText);
     545  3536
             } else {
     546  4
                 cpeVersion = new DependencyVersion("-");
     547  
             }
     548  3540
             return cpeVersion;
     549  
         }
     550  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html new file mode 100644 index 000000000..425c8b08e --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html @@ -0,0 +1,138 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.DatabaseException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DatabaseException
    0%
    0/6
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.nvdcve;
     20  
     
     21  
     /**
     22  
      * An exception thrown if an operation against the database fails.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class DatabaseException extends Exception {
     27  
     
     28  
         /**
     29  
          * the serial version uid.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Creates an DatabaseException.
     35  
          *
     36  
          * @param msg the exception message
     37  
          */
     38  
         public DatabaseException(String msg) {
     39  0
             super(msg);
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates an DatabaseException.
     44  
          *
     45  
          * @param ex the cause of the exception
     46  
          */
     47  
         public DatabaseException(Throwable ex) {
     48  0
             super(ex);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates an DatabaseException.
     53  
          *
     54  
          * @param msg the exception message
     55  
          * @param ex the cause of the exception
     56  
          */
     57  
         public DatabaseException(String msg, Throwable ex) {
     58  0
             super(msg, ex);
     59  0
         }
     60  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html new file mode 100644 index 000000000..e5cc7327b --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html @@ -0,0 +1,124 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.InvalidDataException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    InvalidDataException
    0%
    0/4
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.nvdcve;
     20  
     
     21  
     /**
     22  
      * An InvalidDataDataException is a generic exception used when trying to load
     23  
      * the nvd cve meta data.
     24  
      *
     25  
      * @author Jeremy Long (jeremy.long@owasp.org)
     26  
      */
     27  
     public class InvalidDataException extends Exception {
     28  
     
     29  
         /**
     30  
          * the serial version uid.
     31  
          */
     32  
         private static final long serialVersionUID = 1L;
     33  
     
     34  
         /**
     35  
          * Creates an InvalidDataException.
     36  
          *
     37  
          * @param msg the exception message
     38  
          */
     39  
         public InvalidDataException(String msg) {
     40  0
             super(msg);
     41  0
         }
     42  
     
     43  
         /**
     44  
          * Creates an InvalidDataException.
     45  
          *
     46  
          * @param msg the exception message
     47  
          * @param ex the cause of the exception
     48  
          */
     49  
         public InvalidDataException(String msg, Exception ex) {
     50  0
             super(msg, ex);
     51  0
         }
     52  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html new file mode 100644 index 000000000..198360298 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html @@ -0,0 +1,462 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NvdCve12Handler
    95%
    47/49
    86%
    26/30
    2.6
    NvdCve12Handler$Element
    77%
    7/9
    N/A
    2.6
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.nvdcve;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.HashMap;
     23  
     import java.util.List;
     24  
     import java.util.Map;
     25  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     26  
     import org.xml.sax.Attributes;
     27  
     import org.xml.sax.SAXException;
     28  
     import org.xml.sax.SAXNotSupportedException;
     29  
     import org.xml.sax.helpers.DefaultHandler;
     30  
     
     31  
     /**
     32  
      * A SAX Handler that will parse the NVD CVE XML (schema version 1.2). This
     33  
      * parses the xml and retrieves a listing of CPEs that have previous versions
     34  
      * specified. The previous version information is not in the 2.0 version of the
     35  
      * schema and is useful to ensure accurate identification (or at least
     36  
      * complete).
     37  
      *
     38  
      * @author Jeremy Long (jeremy.long@owasp.org)
     39  
      */
     40  1
     public class NvdCve12Handler extends DefaultHandler {
     41  
     
     42  
         /**
     43  
          * the supported schema version.
     44  
          */
     45  
         private static final String CURRENT_SCHEMA_VERSION = "1.2";
     46  
         /**
     47  
          * the current vulnerability.
     48  
          */
     49  
         private String vulnerability;
     50  
         /**
     51  
          * a list of vulnerable software.
     52  
          */
     53  
         private List<VulnerableSoftware> software;
     54  
         /**
     55  
          * the vendor name.
     56  
          */
     57  
         private String vendor;
     58  
         /**
     59  
          * the product name.
     60  
          */
     61  
         private String product;
     62  
         /**
     63  
          * if the nvd cve should be skipped because it was rejected.
     64  
          */
     65  1
         private boolean skip = false;
     66  
         /**
     67  
          * flag indicating if there is a previous version.
     68  
          */
     69  1
         private boolean hasPreviousVersion = false;
     70  
         /**
     71  
          * The current element.
     72  
          */
     73  1
         private final Element current = new Element();
     74  
         /**
     75  
          * a map of vulnerabilities.
     76  
          */
     77  
         private Map<String, List<VulnerableSoftware>> vulnerabilities;
     78  
     
     79  
         /**
     80  
          * Get the value of vulnerabilities.
     81  
          *
     82  
          * @return the value of vulnerabilities
     83  
          */
     84  
         public Map<String, List<VulnerableSoftware>> getVulnerabilities() {
     85  1
             return vulnerabilities;
     86  
         }
     87  
     
     88  
         @Override
     89  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     90  1222
             current.setNode(qName);
     91  1222
             if (current.isEntryNode()) {
     92  27
                 vendor = null;
     93  27
                 product = null;
     94  27
                 hasPreviousVersion = false;
     95  27
                 final String reject = attributes.getValue("reject");
     96  27
                 skip = "1".equals(reject);
     97  27
                 if (!skip) {
     98  26
                     vulnerability = attributes.getValue("name");
     99  26
                     software = new ArrayList<VulnerableSoftware>();
     100  
                 } else {
     101  1
                     vulnerability = null;
     102  1
                     software = null;
     103  
                 }
     104  27
             } else if (!skip && current.isProdNode()) {
     105  
     
     106  52
                 vendor = attributes.getValue("vendor");
     107  52
                 product = attributes.getValue("name");
     108  1143
             } else if (!skip && current.isVersNode()) {
     109  761
                 final String prev = attributes.getValue("prev");
     110  761
                 if (prev != null && "1".equals(prev)) {
     111  1
                     hasPreviousVersion = true;
     112  1
                     final String edition = attributes.getValue("edition");
     113  1
                     final String num = attributes.getValue("num");
     114  
     
     115  
                     /*yes yes, this may not actually be an "a" - it could be an OS, etc. but for our
     116  
                      purposes this is good enough as we won't use this if we don't find a corresponding "a"
     117  
                      in the nvd cve 2.0. */
     118  1
                     String cpe = "cpe:/a:" + vendor + ":" + product;
     119  1
                     if (num != null) {
     120  1
                         cpe += ":" + num;
     121  
                     }
     122  1
                     if (edition != null) {
     123  0
                         cpe += ":" + edition;
     124  
                     }
     125  1
                     final VulnerableSoftware vs = new VulnerableSoftware();
     126  1
                     vs.setCpe(cpe);
     127  1
                     vs.setPreviousVersion(prev);
     128  1
                     software.add(vs);
     129  
                 }
     130  761
             } else if (current.isNVDNode()) {
     131  1
                 final String nvdVer = attributes.getValue("nvd_xml_version");
     132  1
                 if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
     133  0
                     throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
     134  
                 }
     135  1
                 vulnerabilities = new HashMap<String, List<VulnerableSoftware>>();
     136  
             }
     137  1222
         }
     138  
     
     139  
         @Override
     140  
         public void endElement(String uri, String localName, String qName) throws SAXException {
     141  1222
             current.setNode(qName);
     142  1222
             if (current.isEntryNode()) {
     143  27
                 if (!skip && hasPreviousVersion) {
     144  1
                     vulnerabilities.put(vulnerability, software);
     145  
                 }
     146  27
                 vulnerability = null;
     147  27
                 software = null;
     148  
             }
     149  1222
         }
     150  
     
     151  
         // <editor-fold defaultstate="collapsed" desc="The Element Class that maintains state information about the current node">
     152  
         /**
     153  
          * A simple class to maintain information about the current element while
     154  
          * parsing the NVD CVE XML.
     155  
          */
     156  1
         protected static class Element {
     157  
     
     158  
             /**
     159  
              * A node type in the NVD CVE Schema 1.2.
     160  
              */
     161  
             public static final String NVD = "nvd";
     162  
             /**
     163  
              * A node type in the NVD CVE Schema 1.2.
     164  
              */
     165  
             public static final String ENTRY = "entry";
     166  
             /**
     167  
              * A node type in the NVD CVE Schema 1.2.
     168  
              */
     169  
             public static final String VULN_SOFTWARE = "vuln_soft";
     170  
             /**
     171  
              * A node type in the NVD CVE Schema 1.2.
     172  
              */
     173  
             public static final String PROD = "prod";
     174  
             /**
     175  
              * A node type in the NVD CVE Schema 1.2.
     176  
              */
     177  
             public static final String VERS = "vers";
     178  
             /**
     179  
              * The name of the current node.
     180  
              */
     181  
             private String node;
     182  
     
     183  
             /**
     184  
              * Gets the value of node.
     185  
              *
     186  
              * @return the value of node
     187  
              */
     188  
             public String getNode() {
     189  0
                 return this.node;
     190  
             }
     191  
     
     192  
             /**
     193  
              * Sets the value of node.
     194  
              *
     195  
              * @param node new value of node
     196  
              */
     197  
             public void setNode(String node) {
     198  2444
                 this.node = node;
     199  2444
             }
     200  
     
     201  
             /**
     202  
              * Checks if the handler is at the NVD node.
     203  
              *
     204  
              * @return true or false
     205  
              */
     206  
             public boolean isNVDNode() {
     207  382
                 return NVD.equals(node);
     208  
             }
     209  
     
     210  
             /**
     211  
              * Checks if the handler is at the ENTRY node.
     212  
              *
     213  
              * @return true or false
     214  
              */
     215  
             public boolean isEntryNode() {
     216  2444
                 return ENTRY.equals(node);
     217  
             }
     218  
     
     219  
             /**
     220  
              * Checks if the handler is at the VULN_SOFTWARE node.
     221  
              *
     222  
              * @return true or false
     223  
              */
     224  
             public boolean isVulnSoftwareNode() {
     225  0
                 return VULN_SOFTWARE.equals(node);
     226  
             }
     227  
     
     228  
             /**
     229  
              * Checks if the handler is at the PROD node.
     230  
              *
     231  
              * @return true or false
     232  
              */
     233  
             public boolean isProdNode() {
     234  1192
                 return PROD.equals(node);
     235  
             }
     236  
     
     237  
             /**
     238  
              * Checks if the handler is at the VERS node.
     239  
              *
     240  
              * @return true or false
     241  
              */
     242  
             public boolean isVersNode() {
     243  1140
                 return VERS.equals(node);
     244  
             }
     245  
         }
     246  
         // </editor-fold>
     247  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html new file mode 100644 index 000000000..369171d52 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html @@ -0,0 +1,872 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NvdCve20Handler
    80%
    99/123
    89%
    75/84
    3.04
    NvdCve20Handler$Element
    94%
    18/19
    N/A
    3.04
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.nvdcve;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.util.List;
     23  
     import java.util.Map;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.Logger;
     26  
     import org.apache.lucene.index.CorruptIndexException;
     27  
     import org.owasp.dependencycheck.dependency.Reference;
     28  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     29  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     30  
     import org.xml.sax.Attributes;
     31  
     import org.xml.sax.SAXException;
     32  
     import org.xml.sax.SAXNotSupportedException;
     33  
     import org.xml.sax.helpers.DefaultHandler;
     34  
     
     35  
     /**
     36  
      * A SAX Handler that will parse the NVD CVE XML (schema version 2.0).
     37  
      *
     38  
      * @author Jeremy Long (jeremy.long@owasp.org)
     39  
      */
     40  1
     public class NvdCve20Handler extends DefaultHandler {
     41  
     
     42  
         /**
     43  
          * the current supported schema version.
     44  
          */
     45  
         private static final String CURRENT_SCHEMA_VERSION = "2.0";
     46  
         /**
     47  
          * the current element.
     48  
          */
     49  1
         private final Element current = new Element();
     50  
         /**
     51  
          * the text of the node.
     52  
          */
     53  
         private StringBuilder nodeText;
     54  
         /**
     55  
          * the vulnerability.
     56  
          */
     57  
         private Vulnerability vulnerability;
     58  
         /**
     59  
          * a reference for the cve.
     60  
          */
     61  
         private Reference reference;
     62  
         /**
     63  
          * flag indicating whether the application has a cpe.
     64  
          */
     65  1
         private boolean hasApplicationCpe = false;
     66  
         /**
     67  
          * The total number of entries parsed.
     68  
          */
     69  
         private int totalNumberOfEntries;
     70  
     
     71  
         /**
     72  
          * Get the value of totalNumberOfEntries.
     73  
          *
     74  
          * @return the value of totalNumberOfEntries
     75  
          */
     76  
         public int getTotalNumberOfEntries() {
     77  0
             return totalNumberOfEntries;
     78  
         }
     79  
         /**
     80  
          * The total number of application entries parsed.
     81  
          */
     82  
         private int totalNumberOfApplicationEntries;
     83  
     
     84  
         /**
     85  
          * Get the value of totalNumberOfApplicationEntries.
     86  
          *
     87  
          * @return the value of totalNumberOfApplicationEntries
     88  
          */
     89  
         public int getTotalNumberOfApplicationEntries() {
     90  0
             return totalNumberOfApplicationEntries;
     91  
         }
     92  
     
     93  
         @Override
     94  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     95  2412
             current.setNode(qName);
     96  2412
             if (current.isEntryNode()) {
     97  27
                 hasApplicationCpe = false;
     98  27
                 vulnerability = new Vulnerability();
     99  27
                 vulnerability.setName(attributes.getValue("id"));
     100  2385
             } else if (current.isVulnProductNode()) {
     101  727
                 nodeText = new StringBuilder(100);
     102  1658
             } else if (current.isVulnReferencesNode()) {
     103  90
                 final String lang = attributes.getValue("xml:lang");
     104  90
                 if ("en".equals(lang)) {
     105  90
                     reference = new Reference();
     106  
                 } else {
     107  0
                     reference = null;
     108  
                 }
     109  90
             } else if (reference != null && current.isVulnReferenceNode()) {
     110  90
                 reference.setUrl(attributes.getValue("href"));
     111  90
                 nodeText = new StringBuilder(130);
     112  1478
             } else if (reference != null && current.isVulnSourceNode()) {
     113  90
                 nodeText = new StringBuilder(30);
     114  1388
             } else if (current.isVulnSummaryNode()) {
     115  27
                 nodeText = new StringBuilder(500);
     116  1361
             } else if (current.isNVDNode()) {
     117  1
                 final String nvdVer = attributes.getValue("nvd_xml_version");
     118  1
                 if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
     119  0
                     throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
     120  
                 }
     121  1
             } else if (current.isVulnCWENode()) {
     122  19
                 vulnerability.setCwe(attributes.getValue("id"));
     123  1341
             } else if (current.isCVSSScoreNode()) {
     124  26
                 nodeText = new StringBuilder(5);
     125  1315
             } else if (current.isCVSSAccessVectorNode()) {
     126  26
                 nodeText = new StringBuilder(20);
     127  1289
             } else if (current.isCVSSAccessComplexityNode()) {
     128  26
                 nodeText = new StringBuilder(20);
     129  1263
             } else if (current.isCVSSAuthenticationNode()) {
     130  26
                 nodeText = new StringBuilder(20);
     131  1237
             } else if (current.isCVSSAvailabilityImpactNode()) {
     132  26
                 nodeText = new StringBuilder(20);
     133  1211
             } else if (current.isCVSSConfidentialityImpactNode()) {
     134  26
                 nodeText = new StringBuilder(20);
     135  1185
             } else if (current.isCVSSIntegrityImpactNode()) {
     136  26
                 nodeText = new StringBuilder(20);
     137  
             }
     138  2412
         }
     139  
     
     140  
         @Override
     141  
         public void characters(char[] ch, int start, int length) throws SAXException {
     142  3987
             if (nodeText != null) {
     143  1142
                 nodeText.append(ch, start, length);
     144  
             }
     145  3987
         }
     146  
     
     147  
         @Override
     148  
         public void endElement(String uri, String localName, String qName) throws SAXException {
     149  2412
             current.setNode(qName);
     150  2412
             if (current.isEntryNode()) {
     151  27
                 totalNumberOfEntries += 1;
     152  27
                 if (hasApplicationCpe) {
     153  19
                     totalNumberOfApplicationEntries += 1;
     154  
                     try {
     155  19
                         saveEntry(vulnerability);
     156  0
                     } catch (DatabaseException ex) {
     157  0
                         throw new SAXException(ex);
     158  0
                     } catch (CorruptIndexException ex) {
     159  0
                         throw new SAXException(ex);
     160  0
                     } catch (IOException ex) {
     161  0
                         throw new SAXException(ex);
     162  19
                     }
     163  
                 }
     164  27
                 vulnerability = null;
     165  2385
             } else if (current.isCVSSScoreNode()) {
     166  
                 try {
     167  26
                     final float score = Float.parseFloat(nodeText.toString());
     168  26
                     vulnerability.setCvssScore(score);
     169  0
                 } catch (NumberFormatException ex) {
     170  0
                     Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.SEVERE, "Error parsing CVSS Score.");
     171  0
                     Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.FINE, null, ex);
     172  26
                 }
     173  26
                 nodeText = null;
     174  2359
             } else if (current.isCVSSAccessVectorNode()) {
     175  26
                 vulnerability.setCvssAccessVector(nodeText.toString());
     176  26
                 nodeText = null;
     177  2333
             } else if (current.isCVSSAccessComplexityNode()) {
     178  26
                 vulnerability.setCvssAccessComplexity(nodeText.toString());
     179  26
                 nodeText = null;
     180  2307
             } else if (current.isCVSSAuthenticationNode()) {
     181  26
                 vulnerability.setCvssAuthentication(nodeText.toString());
     182  26
                 nodeText = null;
     183  2281
             } else if (current.isCVSSAvailabilityImpactNode()) {
     184  26
                 vulnerability.setCvssAvailabilityImpact(nodeText.toString());
     185  26
                 nodeText = null;
     186  2255
             } else if (current.isCVSSConfidentialityImpactNode()) {
     187  26
                 vulnerability.setCvssConfidentialityImpact(nodeText.toString());
     188  26
                 nodeText = null;
     189  2229
             } else if (current.isCVSSIntegrityImpactNode()) {
     190  26
                 vulnerability.setCvssIntegrityImpact(nodeText.toString());
     191  26
                 nodeText = null;
     192  2203
             } else if (current.isVulnProductNode()) {
     193  727
                 final String cpe = nodeText.toString();
     194  727
                 if (cpe.startsWith("cpe:/a:")) {
     195  614
                     hasApplicationCpe = true;
     196  614
                     vulnerability.addVulnerableSoftware(cpe);
     197  
                 }
     198  727
                 nodeText = null;
     199  727
             } else if (reference != null && current.isVulnReferencesNode()) {
     200  90
                 vulnerability.addReference(reference);
     201  90
                 reference = null;
     202  1386
             } else if (reference != null && current.isVulnReferenceNode()) {
     203  90
                 reference.setName(nodeText.toString());
     204  90
                 nodeText = null;
     205  1296
             } else if (reference != null && current.isVulnSourceNode()) {
     206  90
                 reference.setSource(nodeText.toString());
     207  90
                 nodeText = null;
     208  1206
             } else if (current.isVulnSummaryNode()) {
     209  27
                 vulnerability.setDescription(nodeText.toString());
     210  27
                 if (nodeText.indexOf("** REJECT **") >= 0) {
     211  1
                     hasApplicationCpe = true; //ensure we process this to delete the vuln
     212  
                 }
     213  27
                 nodeText = null;
     214  
             }
     215  2412
         }
     216  
         /**
     217  
          * the cve database.
     218  
          */
     219  
         private CveDB cveDB;
     220  
     
     221  
         /**
     222  
          * Sets the cveDB.
     223  
          *
     224  
          * @param db a reference to the CveDB
     225  
          */
     226  
         public void setCveDB(CveDB db) {
     227  0
             cveDB = db;
     228  0
         }
     229  
         /**
     230  
          * A list of CVE entries and associated VulnerableSoftware entries that
     231  
          * contain previous entries.
     232  
          */
     233  
         private Map<String, List<VulnerableSoftware>> prevVersionVulnMap;
     234  
     
     235  
         /**
     236  
          * Sets the prevVersionVulnMap.
     237  
          *
     238  
          * @param map the map of vulnerable software with previous versions being
     239  
          * vulnerable
     240  
          */
     241  
         public void setPrevVersionVulnMap(Map<String, List<VulnerableSoftware>> map) {
     242  0
             prevVersionVulnMap = map;
     243  0
         }
     244  
     
     245  
         /**
     246  
          * Saves a vulnerability to the CVE Database.
     247  
          *
     248  
          * @param vuln the vulnerability to store in the database
     249  
          * @throws DatabaseException thrown if there is an error writing to the
     250  
          * database
     251  
          * @throws CorruptIndexException is thrown if the CPE Index is corrupt
     252  
          * @throws IOException thrown if there is an IOException with the CPE Index
     253  
          */
     254  
         private void saveEntry(Vulnerability vuln) throws DatabaseException, CorruptIndexException, IOException {
     255  19
             if (cveDB == null) {
     256  19
                 return;
     257  
             }
     258  0
             final String cveName = vuln.getName();
     259  0
             if (prevVersionVulnMap.containsKey(cveName)) {
     260  0
                 final List<VulnerableSoftware> vulnSoftware = prevVersionVulnMap.get(cveName);
     261  0
                 for (VulnerableSoftware vs : vulnSoftware) {
     262  0
                     vuln.updateVulnerableSoftware(vs);
     263  
                 }
     264  
             }
     265  0
             cveDB.updateVulnerability(vuln);
     266  0
         }
     267  
     
     268  
         // <editor-fold defaultstate="collapsed" desc="The Element Class that maintains state information about the current node">
     269  
         /**
     270  
          * A simple class to maintain information about the current element while
     271  
          * parsing the NVD CVE XML.
     272  
          */
     273  1
         protected static class Element {
     274  
     
     275  
             /**
     276  
              * A node type in the NVD CVE Schema 2.0
     277  
              */
     278  
             public static final String NVD = "nvd";
     279  
             /**
     280  
              * A node type in the NVD CVE Schema 2.0
     281  
              */
     282  
             public static final String ENTRY = "entry";
     283  
             /**
     284  
              * A node type in the NVD CVE Schema 2.0
     285  
              */
     286  
             public static final String VULN_PRODUCT = "vuln:product";
     287  
             /**
     288  
              * A node type in the NVD CVE Schema 2.0
     289  
              */
     290  
             public static final String VULN_REFERENCES = "vuln:references";
     291  
             /**
     292  
              * A node type in the NVD CVE Schema 2.0
     293  
              */
     294  
             public static final String VULN_SOURCE = "vuln:source";
     295  
             /**
     296  
              * A node type in the NVD CVE Schema 2.0
     297  
              */
     298  
             public static final String VULN_REFERENCE = "vuln:reference";
     299  
             /**
     300  
              * A node type in the NVD CVE Schema 2.0
     301  
              */
     302  
             public static final String VULN_SUMMARY = "vuln:summary";
     303  
             /**
     304  
              * A node type in the NVD CVE Schema 2.0
     305  
              */
     306  
             public static final String VULN_CWE = "vuln:cwe";
     307  
             /**
     308  
              * A node type in the NVD CVE Schema 2.0
     309  
              */
     310  
             public static final String CVSS_SCORE = "cvss:score";
     311  
             /**
     312  
              * A node type in the NVD CVE Schema 2.0
     313  
              */
     314  
             public static final String CVSS_ACCESS_VECTOR = "cvss:access-vector";
     315  
             /**
     316  
              * A node type in the NVD CVE Schema 2.0
     317  
              */
     318  
             public static final String CVSS_ACCESS_COMPLEXITY = "cvss:access-complexity";
     319  
             /**
     320  
              * A node type in the NVD CVE Schema 2.0
     321  
              */
     322  
             public static final String CVSS_AUTHENTICATION = "cvss:authentication";
     323  
             /**
     324  
              * A node type in the NVD CVE Schema 2.0
     325  
              */
     326  
             public static final String CVSS_CONFIDENTIALITY_IMPACT = "cvss:confidentiality-impact";
     327  
             /**
     328  
              * A node type in the NVD CVE Schema 2.0
     329  
              */
     330  
             public static final String CVSS_INTEGRITY_IMPACT = "cvss:integrity-impact";
     331  
             /**
     332  
              * A node type in the NVD CVE Schema 2.0
     333  
              */
     334  
             public static final String CVSS_AVAILABILITY_IMPACT = "cvss:availability-impact";
     335  
             /**
     336  
              * The current node.
     337  
              */
     338  
             private String node;
     339  
     
     340  
             /**
     341  
              * Gets the value of node.
     342  
              *
     343  
              * @return the value of node
     344  
              */
     345  
             public String getNode() {
     346  0
                 return this.node;
     347  
             }
     348  
     
     349  
             /**
     350  
              * Sets the value of node.
     351  
              *
     352  
              * @param node new value of node
     353  
              */
     354  
             public void setNode(String node) {
     355  4824
                 this.node = node;
     356  4824
             }
     357  
     
     358  
             /**
     359  
              * Checks if the handler is at the NVD node.
     360  
              *
     361  
              * @return true or false
     362  
              */
     363  
             public boolean isNVDNode() {
     364  1361
                 return NVD.equals(node);
     365  
             }
     366  
     
     367  
             /**
     368  
              * Checks if the handler is at the ENTRY node.
     369  
              *
     370  
              * @return true or false
     371  
              */
     372  
             public boolean isEntryNode() {
     373  4824
                 return ENTRY.equals(node);
     374  
             }
     375  
     
     376  
             /**
     377  
              * Checks if the handler is at the VULN_PRODUCT node.
     378  
              *
     379  
              * @return true or false
     380  
              */
     381  
             public boolean isVulnProductNode() {
     382  4588
                 return VULN_PRODUCT.equals(node);
     383  
             }
     384  
     
     385  
             /**
     386  
              * Checks if the handler is at the REFERENCES node.
     387  
              *
     388  
              * @return true or false
     389  
              */
     390  
             public boolean isVulnReferencesNode() {
     391  1928
                 return VULN_REFERENCES.equals(node);
     392  
             }
     393  
     
     394  
             /**
     395  
              * Checks if the handler is at the REFERENCE node.
     396  
              *
     397  
              * @return true or false
     398  
              */
     399  
             public boolean isVulnReferenceNode() {
     400  360
                 return VULN_REFERENCE.equals(node);
     401  
             }
     402  
     
     403  
             /**
     404  
              * Checks if the handler is at the VULN_SOURCE node.
     405  
              *
     406  
              * @return true or false
     407  
              */
     408  
             public boolean isVulnSourceNode() {
     409  180
                 return VULN_SOURCE.equals(node);
     410  
             }
     411  
     
     412  
             /**
     413  
              * Checks if the handler is at the VULN_SUMMARY node.
     414  
              *
     415  
              * @return true or false
     416  
              */
     417  
             public boolean isVulnSummaryNode() {
     418  2594
                 return VULN_SUMMARY.equals(node);
     419  
             }
     420  
     
     421  
             /**
     422  
              * Checks if the handler is at the VULN_CWE node.
     423  
              *
     424  
              * @return true or false
     425  
              */
     426  
             public boolean isVulnCWENode() {
     427  1360
                 return VULN_CWE.equals(node);
     428  
             }
     429  
     
     430  
             /**
     431  
              * Checks if the handler is at the CVSS_SCORE node.
     432  
              *
     433  
              * @return true or false
     434  
              */
     435  
             public boolean isCVSSScoreNode() {
     436  3726
                 return CVSS_SCORE.equals(node);
     437  
             }
     438  
     
     439  
             /**
     440  
              * Checks if the handler is at the CVSS_ACCESS_VECTOR node.
     441  
              *
     442  
              * @return true or false
     443  
              */
     444  
             public boolean isCVSSAccessVectorNode() {
     445  3674
                 return CVSS_ACCESS_VECTOR.equals(node);
     446  
             }
     447  
     
     448  
             /**
     449  
              * Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node.
     450  
              *
     451  
              * @return true or false
     452  
              */
     453  
             public boolean isCVSSAccessComplexityNode() {
     454  3622
                 return CVSS_ACCESS_COMPLEXITY.equals(node);
     455  
             }
     456  
     
     457  
             /**
     458  
              * Checks if the handler is at the CVSS_AUTHENTICATION node.
     459  
              *
     460  
              * @return true or false
     461  
              */
     462  
             public boolean isCVSSAuthenticationNode() {
     463  3570
                 return CVSS_AUTHENTICATION.equals(node);
     464  
             }
     465  
     
     466  
             /**
     467  
              * Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node.
     468  
              *
     469  
              * @return true or false
     470  
              */
     471  
             public boolean isCVSSConfidentialityImpactNode() {
     472  3466
                 return CVSS_CONFIDENTIALITY_IMPACT.equals(node);
     473  
             }
     474  
     
     475  
             /**
     476  
              * Checks if the handler is at the CVSS_INTEGRITY_IMPACT node.
     477  
              *
     478  
              * @return true or false
     479  
              */
     480  
             public boolean isCVSSIntegrityImpactNode() {
     481  3414
                 return CVSS_INTEGRITY_IMPACT.equals(node);
     482  
             }
     483  
     
     484  
             /**
     485  
              * Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node.
     486  
              *
     487  
              * @return true or false
     488  
              */
     489  
             public boolean isCVSSAvailabilityImpactNode() {
     490  3518
                 return CVSS_AVAILABILITY_IMPACT.equals(node);
     491  
             }
     492  
         }
     493  
         // </editor-fold>
     494  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html new file mode 100644 index 000000000..aeebe18d2 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html @@ -0,0 +1,485 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.AbstractUpdateTask
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AbstractUpdateTask
    47%
    28/59
    87%
    7/8
    1.857
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.IOException;
     23  
     import java.net.MalformedURLException;
     24  
     import java.sql.SQLException;
     25  
     import java.util.List;
     26  
     import java.util.Map;
     27  
     import java.util.logging.Level;
     28  
     import java.util.logging.Logger;
     29  
     import javax.xml.parsers.ParserConfigurationException;
     30  
     import javax.xml.parsers.SAXParser;
     31  
     import javax.xml.parsers.SAXParserFactory;
     32  
     import org.owasp.dependencycheck.data.UpdateException;
     33  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     34  
     import org.owasp.dependencycheck.utils.FileUtils;
     35  
     import org.owasp.dependencycheck.utils.Settings;
     36  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     37  
     import org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler;
     38  
     import org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler;
     39  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     40  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     41  
     import org.xml.sax.SAXException;
     42  
     
     43  
     /**
     44  
      * Class responsible for updating the CPE and NVDCVE data stores.
     45  
      *
     46  
      * @author Jeremy Long (jeremy.long@owasp.org)
     47  
      */
     48  
     public abstract class AbstractUpdateTask implements UpdateTask {
     49  
     
     50  
         /**
     51  
          * Initializes the AbstractUpdateTask.
     52  
          *
     53  
          * @param properties information about the data store
     54  
          * @throws MalformedURLException thrown if the configuration contains a
     55  
          * malformed url
     56  
          * @throws DownloadFailedException thrown if the timestamp on a file cannot
     57  
          * be checked
     58  
          * @throws UpdateException thrown if the update fails
     59  
          */
     60  6
         public AbstractUpdateTask(DataStoreMetaInfo properties) throws MalformedURLException, DownloadFailedException, UpdateException {
     61  6
             this.properties = properties;
     62  6
             this.updateable = updatesNeeded();
     63  6
         }
     64  
         /**
     65  
          * A collection of updateable NVD CVE items.
     66  
          */
     67  
         private Updateable updateable;
     68  
         /**
     69  
          * Utility to read and write meta-data about the data.
     70  
          */
     71  6
         private DataStoreMetaInfo properties = null;
     72  
     
     73  
         /**
     74  
          * Returns the data store properties.
     75  
          *
     76  
          * @return the data store properties
     77  
          */
     78  
         protected DataStoreMetaInfo getProperties() {
     79  3
             return properties;
     80  
         }
     81  
         /**
     82  
          * Reference to the Cve Database.
     83  
          */
     84  6
         private CveDB cveDB = null;
     85  
     
     86  
         /**
     87  
          * Returns the CveDB.
     88  
          *
     89  
          * @return the CveDB
     90  
          */
     91  
         protected CveDB getCveDB() {
     92  0
             return cveDB;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Gets whether or not an update is needed.
     97  
          *
     98  
          * @return true or false depending on whether an update is needed
     99  
          */
     100  
         public boolean isUpdateNeeded() {
     101  0
             return updateable.isUpdateNeeded();
     102  
         }
     103  
     
     104  
         /**
     105  
          * Gets the updateable NVD CVE Entries.
     106  
          *
     107  
          * @return an Updateable object containing the NVD CVE entries
     108  
          */
     109  
         protected Updateable getUpdateable() {
     110  0
             return updateable;
     111  
         }
     112  
     
     113  
         /**
     114  
          * Determines if the index needs to be updated.
     115  
          *
     116  
          * @return a collection of updateable resources.
     117  
          * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
     118  
          * data is incorrect.
     119  
          * @throws DownloadFailedException is thrown if there is an error.
     120  
          * downloading the NVD CVE download data file.
     121  
          * @throws UpdateException Is thrown if there is an issue with the last
     122  
          * updated properties file.
     123  
          */
     124  
         protected abstract Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException;
     125  
     
     126  
         /**
     127  
          * <p>Updates the data store to the latest version.</p>
     128  
          *
     129  
          * @throws UpdateException is thrown if there is an error updating the
     130  
          * database
     131  
          */
     132  
         public abstract void update() throws UpdateException;
     133  
         /**
     134  
          * A flag indicating whether or not the current data store should be
     135  
          * deleted.
     136  
          */
     137  6
         private boolean deleteAndRecreate = false;
     138  
     
     139  
         /**
     140  
          * Get the value of deleteAndRecreate.
     141  
          *
     142  
          * @return the value of deleteAndRecreate
     143  
          */
     144  
         public boolean shouldDeleteAndRecreate() {
     145  1
             return deleteAndRecreate;
     146  
         }
     147  
     
     148  
         /**
     149  
          * Set the value of deleteAndRecreate.
     150  
          *
     151  
          * @param deleteAndRecreate new value of deleteAndRecreate
     152  
          */
     153  
         protected void setDeleteAndRecreate(boolean deleteAndRecreate) {
     154  1
             this.deleteAndRecreate = deleteAndRecreate;
     155  1
         }
     156  
     
     157  
         /**
     158  
          * Deletes the existing data directories.
     159  
          *
     160  
          * @throws IOException thrown if the directory cannot be deleted
     161  
          */
     162  
         protected void deleteExistingData() throws IOException {
     163  3
             File data = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
     164  3
             if (data.exists()) {
     165  1
                 FileUtils.delete(data);
     166  
             }
     167  3
             data = DataStoreMetaInfo.getPropertiesFile();
     168  3
             if (data.exists()) {
     169  1
                 FileUtils.delete(data);
     170  
             }
     171  3
         }
     172  
     
     173  
         /**
     174  
          * Closes the CVE and CPE data stores.
     175  
          */
     176  
         protected void closeDataStores() {
     177  1
             if (cveDB != null) {
     178  
                 try {
     179  1
                     cveDB.close();
     180  0
                 } catch (Exception ignore) {
     181  0
                     Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINEST, "Error closing the cveDB", ignore);
     182  1
                 }
     183  
             }
     184  1
         }
     185  
     
     186  
         /**
     187  
          * Opens the CVE and CPE data stores.
     188  
          *
     189  
          * @throws UpdateException thrown if a data store cannot be opened
     190  
          */
     191  
         protected void openDataStores() throws UpdateException {
     192  
             //open the cve and cpe data stores
     193  
             try {
     194  1
                 cveDB = new CveDB();
     195  1
                 cveDB.open();
     196  0
             } catch (IOException ex) {
     197  0
                 closeDataStores();
     198  0
                 Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "IO Error opening databases", ex);
     199  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     200  0
             } catch (SQLException ex) {
     201  0
                 closeDataStores();
     202  0
                 Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "SQL Exception opening databases", ex);
     203  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     204  0
             } catch (DatabaseException ex) {
     205  0
                 closeDataStores();
     206  0
                 Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "Database Exception opening databases", ex);
     207  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     208  0
             } catch (ClassNotFoundException ex) {
     209  0
                 closeDataStores();
     210  0
                 Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "Class not found exception opening databases", ex);
     211  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     212  1
             }
     213  1
         }
     214  
     
     215  
         /**
     216  
          * Determines if the epoch date is within the range specified of the
     217  
          * compareTo epoch time. This takes the (compareTo-date)/1000/60/60/24 to
     218  
          * get the number of days. If the calculated days is less then the range the
     219  
          * date is considered valid.
     220  
          *
     221  
          * @param date the date to be checked.
     222  
          * @param compareTo the date to compare to.
     223  
          * @param range the range in days to be considered valid.
     224  
          * @return whether or not the date is within the range.
     225  
          */
     226  
         protected boolean withinRange(long date, long compareTo, int range) {
     227  2
             final double differenceInDays = (compareTo - date) / 1000.0 / 60.0 / 60.0 / 24.0;
     228  2
             return differenceInDays < range;
     229  
         }
     230  
     
     231  
         /**
     232  
          * Imports the NVD CVE XML File into the Lucene Index.
     233  
          *
     234  
          * @param file the file containing the NVD CVE XML
     235  
          * @param oldVersion contains the file containing the NVD CVE XML 1.2
     236  
          * @throws ParserConfigurationException is thrown if there is a parser
     237  
          * configuration exception
     238  
          * @throws SAXException is thrown if there is a SAXException
     239  
          * @throws IOException is thrown if there is a IO Exception
     240  
          * @throws SQLException is thrown if there is a SQL exception
     241  
          * @throws DatabaseException is thrown if there is a database exception
     242  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     243  
          * loaded
     244  
          */
     245  
         protected void importXML(File file, File oldVersion) throws ParserConfigurationException,
     246  
                 SAXException, IOException, SQLException, DatabaseException, ClassNotFoundException {
     247  
     
     248  0
             final SAXParserFactory factory = SAXParserFactory.newInstance();
     249  0
             final SAXParser saxParser = factory.newSAXParser();
     250  
     
     251  0
             final NvdCve12Handler cve12Handler = new NvdCve12Handler();
     252  0
             saxParser.parse(oldVersion, cve12Handler);
     253  0
             final Map<String, List<VulnerableSoftware>> prevVersionVulnMap = cve12Handler.getVulnerabilities();
     254  
     
     255  0
             final NvdCve20Handler cve20Handler = new NvdCve20Handler();
     256  0
             cve20Handler.setCveDB(cveDB);
     257  0
             cve20Handler.setPrevVersionVulnMap(prevVersionVulnMap);
     258  0
             saxParser.parse(file, cve20Handler);
     259  0
         }
     260  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html new file mode 100644 index 000000000..3a9c5d939 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html @@ -0,0 +1,462 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.BatchUpdateTask
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    BatchUpdateTask
    28%
    30/106
    17%
    8/46
    7.167
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import org.owasp.dependencycheck.data.nvdcve.InvalidDataException;
     22  
     import java.io.File;
     23  
     import java.io.IOException;
     24  
     import java.net.MalformedURLException;
     25  
     import java.net.URISyntaxException;
     26  
     import java.net.URL;
     27  
     import java.util.Calendar;
     28  
     import java.util.Date;
     29  
     import java.util.logging.Level;
     30  
     import java.util.logging.Logger;
     31  
     import org.owasp.dependencycheck.data.UpdateException;
     32  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     33  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     34  
     import org.owasp.dependencycheck.utils.Downloader;
     35  
     import org.owasp.dependencycheck.utils.FileUtils;
     36  
     import org.owasp.dependencycheck.utils.Settings;
     37  
     import org.owasp.dependencycheck.utils.InvalidSettingException;
     38  
     import static org.owasp.dependencycheck.data.update.DataStoreMetaInfo.BATCH;
     39  
     import static org.owasp.dependencycheck.data.update.DataStoreMetaInfo.MODIFIED;
     40  
     
     41  
     /**
     42  
      * Class responsible for updating the CPE and NVDCVE data stores.
     43  
      *
     44  
      * @author Jeremy Long (jeremy.long@owasp.org)
     45  
      * @deprecated batch update mode will no longer be supported.
     46  
      */
     47  
     @Deprecated
     48  
     public class BatchUpdateTask extends AbstractUpdateTask {
     49  
     
     50  
         /**
     51  
          * Constructs a new BatchUpdateTask.
     52  
          *
     53  
          * @param properties information about the data store
     54  
          * @throws MalformedURLException thrown if a configured URL is malformed
     55  
          * @throws DownloadFailedException thrown if a timestamp cannot be checked
     56  
          * on a configured URL
     57  
          * @throws UpdateException thrown if there is an exception generating the
     58  
          * update task
     59  
          */
     60  
         public BatchUpdateTask(DataStoreMetaInfo properties) throws MalformedURLException, DownloadFailedException, UpdateException {
     61  2
             super(properties);
     62  2
         }
     63  
         /**
     64  
          * A flag indicating whether or not the batch update should be performed.
     65  
          */
     66  
         private boolean doBatchUpdate;
     67  
     
     68  
         /**
     69  
          * Get the value of doBatchUpdate
     70  
          *
     71  
          * @return the value of doBatchUpdate
     72  
          */
     73  
         protected boolean isDoBatchUpdate() {
     74  1
             return doBatchUpdate;
     75  
         }
     76  
     
     77  
         /**
     78  
          * Set the value of doBatchUpdate
     79  
          *
     80  
          * @param doBatchUpdate new value of doBatchUpdate
     81  
          */
     82  
         protected void setDoBatchUpdate(boolean doBatchUpdate) {
     83  2
             this.doBatchUpdate = doBatchUpdate;
     84  2
         }
     85  
     
     86  
         /**
     87  
          * <p>Downloads the latest NVD CVE XML file from the web and imports it into
     88  
          * the current CVE Database.</p>
     89  
          *
     90  
          * @throws UpdateException is thrown if there is an error updating the
     91  
          * database
     92  
          */
     93  
         @Override
     94  
         public void update() throws UpdateException {
     95  1
             if (getProperties().isBatchUpdateMode() && doBatchUpdate) {
     96  1
                 final String batchSrc = Settings.getString(Settings.KEYS.BATCH_UPDATE_URL);
     97  1
                 File tmp = null;
     98  
                 try {
     99  1
                     deleteExistingData();
     100  1
                     final File dataDirectory = CveDB.getDataDirectory().getParentFile();
     101  1
                     final URL batchUrl = new URL(batchSrc);
     102  1
                     if ("file".equals(batchUrl.getProtocol())) {
     103  
                         try {
     104  1
                             tmp = new File(batchUrl.toURI());
     105  0
                         } catch (URISyntaxException ex) {
     106  0
                             final String msg = String.format("Invalid batch update URI: %s", batchSrc);
     107  0
                             throw new UpdateException(msg, ex);
     108  1
                         }
     109  0
                     } else if ("http".equals(batchUrl.getProtocol())
     110  
                             || "https".equals(batchUrl.getProtocol())) {
     111  0
                         tmp = File.createTempFile("batch_", ".zip");
     112  0
                         Downloader.fetchFile(batchUrl, tmp);
     113  
                     }
     114  
                     //TODO add FTP?
     115  1
                     FileUtils.extractFiles(tmp, dataDirectory);
     116  
     
     117  0
                 } catch (IOException ex) {
     118  0
                     final String msg = String.format("IO Exception Occured performing batch update using: %s", batchSrc);
     119  0
                     throw new UpdateException(msg, ex);
     120  
                 } finally {
     121  1
                     if (tmp != null && !tmp.delete()) {
     122  0
                         tmp.deleteOnExit();
     123  
                     }
     124  
                 }
     125  
             }
     126  1
         }
     127  
     
     128  
         /**
     129  
          * Determines if the index needs to be updated. This is done by fetching the
     130  
          * NVD CVE meta data and checking the last update date. If the data needs to
     131  
          * be refreshed this method will return the NvdCveUrl for the files that
     132  
          * need to be updated.
     133  
          *
     134  
          * @return the collection of files that need to be updated
     135  
          * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
     136  
          * data is incorrect
     137  
          * @throws DownloadFailedException is thrown if there is an error.
     138  
          * downloading the NVD CVE download data file
     139  
          * @throws UpdateException Is thrown if there is an issue with the last
     140  
          * updated properties file
     141  
          */
     142  
         @Override
     143  
         public Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
     144  2
             Updateable updates = null;
     145  
             try {
     146  2
                 updates = retrieveCurrentTimestampsFromWeb();
     147  0
             } catch (InvalidDataException ex) {
     148  0
                 final String msg = "Unable to retrieve valid timestamp from nvd cve downloads page";
     149  0
                 Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, msg, ex);
     150  0
                 throw new DownloadFailedException(msg, ex);
     151  0
             } catch (InvalidSettingException ex) {
     152  0
                 Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, "Invalid setting found when retrieving timestamps", ex);
     153  0
                 throw new DownloadFailedException("Invalid settings", ex);
     154  2
             }
     155  
     
     156  2
             if (updates == null) {
     157  0
                 throw new DownloadFailedException("Unable to retrieve the timestamps of the currently published NVD CVE data");
     158  
             }
     159  2
             final DataStoreMetaInfo properties = getProperties();
     160  2
             if (!properties.isEmpty()) {
     161  
                 try {
     162  0
                     boolean deleteAndRecreate = false;
     163  
                     float version;
     164  
     
     165  0
                     if (properties.getProperty("version") == null) {
     166  0
                         deleteAndRecreate = true;
     167  
                     } else {
     168  
                         try {
     169  0
                             version = Float.parseFloat(properties.getProperty("version"));
     170  0
                             final float currentVersion = Float.parseFloat(CveDB.DB_SCHEMA_VERSION);
     171  0
                             if (currentVersion > version) {
     172  0
                                 deleteAndRecreate = true;
     173  
                             }
     174  0
                         } catch (NumberFormatException ex) {
     175  0
                             deleteAndRecreate = true;
     176  0
                         }
     177  
                     }
     178  
     
     179  0
                     final NvdCveInfo batchInfo = updates.get(BATCH);
     180  0
                     if (properties.isBatchUpdateMode() && batchInfo != null) {
     181  0
                         final long lastUpdated = Long.parseLong(properties.getProperty(DataStoreMetaInfo.BATCH, "0"));
     182  0
                         if (lastUpdated != batchInfo.getTimestamp()) {
     183  0
                             deleteAndRecreate = true;
     184  
                         }
     185  
                     }
     186  
     
     187  0
                     if (deleteAndRecreate) {
     188  0
                         setDoBatchUpdate(properties.isBatchUpdateMode());
     189  
                         try {
     190  0
                             deleteExistingData();
     191  0
                         } catch (IOException ex) {
     192  0
                             final String msg = "Unable to delete existing data";
     193  0
                             Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.WARNING, msg);
     194  0
                             Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, null, ex);
     195  0
                         }
     196  0
                         return updates;
     197  
                     }
     198  
     
     199  0
                     final long lastUpdated = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED, "0"));
     200  0
                     final Date now = new Date();
     201  0
                     final int days = Settings.getInt(Settings.KEYS.CVE_MODIFIED_VALID_FOR_DAYS, 7);
     202  0
                     final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR, 2002);
     203  0
                     final int end = Calendar.getInstance().get(Calendar.YEAR);
     204  0
                     if (lastUpdated == updates.get(MODIFIED).getTimestamp()) {
     205  0
                         updates.clear(); //we don't need to update anything.
     206  0
                         setDoBatchUpdate(properties.isBatchUpdateMode());
     207  0
                     } else if (withinRange(lastUpdated, now.getTime(), days)) {
     208  0
                         updates.get(MODIFIED).setNeedsUpdate(true);
     209  0
                         if (properties.isBatchUpdateMode()) {
     210  0
                             setDoBatchUpdate(false);
     211  
                         } else {
     212  0
                             for (int i = start; i <= end; i++) {
     213  0
                                 updates.get(String.valueOf(i)).setNeedsUpdate(false);
     214  
                             }
     215  
                         }
     216  0
                     } else if (properties.isBatchUpdateMode()) {
     217  0
                         updates.get(MODIFIED).setNeedsUpdate(true);
     218  0
                         setDoBatchUpdate(true);
     219  
                     } else { //we figure out which of the several XML files need to be downloaded.
     220  0
                         updates.get(MODIFIED).setNeedsUpdate(false);
     221  0
                         for (int i = start; i <= end; i++) {
     222  0
                             final NvdCveInfo cve = updates.get(String.valueOf(i));
     223  0
                             long currentTimestamp = 0;
     224  
                             try {
     225  0
                                 currentTimestamp = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED_BASE + String.valueOf(i), "0"));
     226  0
                             } catch (NumberFormatException ex) {
     227  0
                                 final String msg = String.format("Error parsing '%s' '%s' from nvdcve.lastupdated",
     228  
                                         DataStoreMetaInfo.LAST_UPDATED_BASE, String.valueOf(i));
     229  0
                                 Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, msg, ex);
     230  0
                             }
     231  0
                             if (currentTimestamp == cve.getTimestamp()) {
     232  0
                                 cve.setNeedsUpdate(false); //they default to true.
     233  
                             }
     234  
                         }
     235  
                     }
     236  0
                 } catch (NumberFormatException ex) {
     237  0
                     final String msg = "An invalid schema version or timestamp exists in the data.properties file.";
     238  0
                     Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.WARNING, msg);
     239  0
                     Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, null, ex);
     240  0
                     setDoBatchUpdate(properties.isBatchUpdateMode());
     241  0
                 }
     242  
             }
     243  2
             return updates;
     244  
         }
     245  
     
     246  
         /**
     247  
          * Retrieves the timestamps from the NVD CVE meta data file.
     248  
          *
     249  
          * @return the timestamp from the currently published nvdcve downloads page
     250  
          * @throws MalformedURLException thrown if the URL for the NVD CCE Meta data
     251  
          * is incorrect.
     252  
          * @throws DownloadFailedException thrown if there is an error downloading
     253  
          * the nvd cve meta data file
     254  
          * @throws InvalidDataException thrown if there is an exception parsing the
     255  
          * timestamps
     256  
          * @throws InvalidSettingException thrown if the settings are invalid
     257  
          */
     258  
         private Updateable retrieveCurrentTimestampsFromWeb()
     259  
                 throws MalformedURLException, DownloadFailedException, InvalidDataException, InvalidSettingException {
     260  2
             final Updateable updates = new Updateable();
     261  2
             updates.add(BATCH, Settings.getString(Settings.KEYS.BATCH_UPDATE_URL),
     262  
                     null, false);
     263  
     
     264  2
             final String url = Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL, "");
     265  2
             if (!url.isEmpty()) {
     266  2
                 updates.add(MODIFIED, url,
     267  
                         Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL),
     268  
                         false);
     269  
             }
     270  2
             return updates;
     271  
         }
     272  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html new file mode 100644 index 000000000..85faad900 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html @@ -0,0 +1,341 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.CallableDownloadTask
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CallableDownloadTask
    0%
    0/41
    0%
    0/22
    2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.io.File;
     22  
     import java.net.URL;
     23  
     import java.util.concurrent.Callable;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.Logger;
     26  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     27  
     import org.owasp.dependencycheck.utils.Downloader;
     28  
     
     29  
     /**
     30  
      * A callable object to download two files.
     31  
      *
     32  
      * @author Jeremy Long (jeremy.long@owasp.org)
     33  
      */
     34  0
     public class CallableDownloadTask implements Callable<CallableDownloadTask> {
     35  
     
     36  
         /**
     37  
          * Simple constructor for the callable download task.
     38  
          *
     39  
          * @param nvdCveInfo the nvd cve info
     40  
          * @param first the first file
     41  
          * @param second the second file
     42  
          */
     43  0
         public CallableDownloadTask(NvdCveInfo nvdCveInfo, File first, File second) {
     44  0
             this.nvdCveInfo = nvdCveInfo;
     45  0
             this.first = first;
     46  0
             this.second = second;
     47  0
         }
     48  
         /**
     49  
          * The NVD CVE Meta Data.
     50  
          */
     51  
         private NvdCveInfo nvdCveInfo;
     52  
     
     53  
         /**
     54  
          * Get the value of nvdCveInfo.
     55  
          *
     56  
          * @return the value of nvdCveInfo
     57  
          */
     58  
         public NvdCveInfo getNvdCveInfo() {
     59  0
             return nvdCveInfo;
     60  
         }
     61  
     
     62  
         /**
     63  
          * Set the value of nvdCveInfo.
     64  
          *
     65  
          * @param nvdCveInfo new value of nvdCveInfo
     66  
          */
     67  
         public void setNvdCveInfo(NvdCveInfo nvdCveInfo) {
     68  0
             this.nvdCveInfo = nvdCveInfo;
     69  0
         }
     70  
         /**
     71  
          * a file.
     72  
          */
     73  
         private File first;
     74  
     
     75  
         /**
     76  
          * Get the value of first.
     77  
          *
     78  
          * @return the value of first
     79  
          */
     80  
         public File getFirst() {
     81  0
             return first;
     82  
         }
     83  
     
     84  
         /**
     85  
          * Set the value of first.
     86  
          *
     87  
          * @param first new value of first
     88  
          */
     89  
         public void setFirst(File first) {
     90  0
             this.first = first;
     91  0
         }
     92  
         /**
     93  
          * a file.
     94  
          */
     95  
         private File second;
     96  
     
     97  
         /**
     98  
          * Get the value of second.
     99  
          *
     100  
          * @return the value of second
     101  
          */
     102  
         public File getSecond() {
     103  0
             return second;
     104  
         }
     105  
     
     106  
         /**
     107  
          * Set the value of second.
     108  
          *
     109  
          * @param second new value of second
     110  
          */
     111  
         public void setSecond(File second) {
     112  0
             this.second = second;
     113  0
         }
     114  
         /**
     115  
          * A placeholder for an exception.
     116  
          */
     117  0
         private Exception exception = null;
     118  
     
     119  
         /**
     120  
          * Get the value of exception.
     121  
          *
     122  
          * @return the value of exception
     123  
          */
     124  
         public Exception getException() {
     125  0
             return exception;
     126  
         }
     127  
     
     128  
         /**
     129  
          * returns whether or not an exception occurred during download.
     130  
          *
     131  
          * @return whether or not an exception occurred during download
     132  
          */
     133  
         public boolean hasException() {
     134  0
             return exception != null;
     135  
         }
     136  
     
     137  
         @Override
     138  
         public CallableDownloadTask call() throws Exception {
     139  
             try {
     140  0
                 final URL url1 = new URL(nvdCveInfo.getUrl());
     141  0
                 final URL url2 = new URL(nvdCveInfo.getOldSchemaVersionUrl());
     142  0
                 String msg = String.format("Download Started for NVD CVE - %s", nvdCveInfo.getId());
     143  0
                 Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
     144  0
                 Downloader.fetchFile(url1, first);
     145  0
                 Downloader.fetchFile(url2, second);
     146  0
                 msg = String.format("Download Complete for NVD CVE - %s", nvdCveInfo.getId());
     147  0
                 Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
     148  0
             } catch (DownloadFailedException ex) {
     149  0
                 this.exception = ex;
     150  0
             }
     151  0
             return this;
     152  
         }
     153  
     
     154  
         /**
     155  
          * Attempts to delete the files that were downloaded.
     156  
          */
     157  
         public void cleanup() {
     158  0
             boolean deleted = false;
     159  
             try {
     160  0
                 if (first != null && first.exists()) {
     161  0
                     deleted = first.delete();
     162  
                 }
     163  
             } finally {
     164  0
                 if (first != null && (first.exists() || !deleted)) {
     165  0
                     first.deleteOnExit();
     166  
                 }
     167  
             }
     168  
             try {
     169  0
                 deleted = false;
     170  0
                 if (second != null && second.exists()) {
     171  0
                     deleted = second.delete();
     172  
                 }
     173  
             } finally {
     174  0
                 if (second != null && (second.exists() || !deleted)) {
     175  0
                     second.deleteOnExit();
     176  
                 }
     177  
             }
     178  0
         }
     179  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html new file mode 100644 index 000000000..de06bda52 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html @@ -0,0 +1,433 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.DataStoreMetaInfo
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DataStoreMetaInfo
    65%
    48/73
    62%
    10/16
    3.111
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileInputStream;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.FileOutputStream;
     25  
     import java.io.IOException;
     26  
     import java.io.InputStream;
     27  
     import java.io.OutputStream;
     28  
     import java.io.OutputStreamWriter;
     29  
     import java.util.Properties;
     30  
     import java.util.logging.Level;
     31  
     import java.util.logging.Logger;
     32  
     import org.owasp.dependencycheck.data.UpdateException;
     33  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     34  
     import org.owasp.dependencycheck.utils.Settings;
     35  
     
     36  
     /**
     37  
      *
     38  
      * @author Jeremy Long (jeremy.long@owasp.org)
     39  
      */
     40  
     public class DataStoreMetaInfo {
     41  
     
     42  
         /**
     43  
          * Batch key word, used as key to store information about batch mode.
     44  
          */
     45  
         public static final String BATCH = "batch";
     46  
         /**
     47  
          * Modified key word, used as a key to store information about the modified
     48  
          * file (i.e. the containing the last 8 days of updates)..
     49  
          */
     50  
         public static final String MODIFIED = "modified";
     51  
         /**
     52  
          * The name of the properties file containing the timestamp of the last
     53  
          * update.
     54  
          */
     55  
         private static final String UPDATE_PROPERTIES_FILE = "data.properties";
     56  
         /**
     57  
          * The properties file key for the last updated field - used to store the
     58  
          * last updated time of the Modified NVD CVE xml file.
     59  
          */
     60  
         public static final String LAST_UPDATED = "lastupdated.modified";
     61  
         /**
     62  
          * Stores the last updated time for each of the NVD CVE files. These
     63  
          * timestamps should be updated if we process the modified file within 7
     64  
          * days of the last update.
     65  
          */
     66  
         public static final String LAST_UPDATED_BASE = "lastupdated.";
     67  
         /**
     68  
          * A collection of properties about the data.
     69  
          */
     70  11
         private Properties properties = new Properties();
     71  
         /**
     72  
          * Indicates whether or not the updates are using a batch update mode or
     73  
          * not.
     74  
          */
     75  
         private boolean batchUpdateMode;
     76  
     
     77  
         /**
     78  
          * Get the value of batchUpdateMode.
     79  
          *
     80  
          * @return the value of batchUpdateMode
     81  
          */
     82  
         protected boolean isBatchUpdateMode() {
     83  2
             return batchUpdateMode;
     84  
         }
     85  
     
     86  
         /**
     87  
          * Set the value of batchUpdateMode.
     88  
          *
     89  
          * @param batchUpdateMode new value of batchUpdateMode
     90  
          */
     91  
         protected void setBatchUpdateMode(boolean batchUpdateMode) {
     92  1
             this.batchUpdateMode = batchUpdateMode;
     93  1
         }
     94  
     
     95  
         /**
     96  
          * Constructs a new data properties object.
     97  
          */
     98  11
         public DataStoreMetaInfo() {
     99  11
             batchUpdateMode = !Settings.getString(Settings.KEYS.BATCH_UPDATE_URL, "").isEmpty();
     100  11
             loadProperties();
     101  11
         }
     102  
     
     103  
         /**
     104  
          * Loads the data's meta properties.
     105  
          */
     106  
         private void loadProperties() {
     107  11
             final File file = getPropertiesFile();
     108  11
             if (file.exists()) {
     109  9
                 InputStream is = null;
     110  
                 try {
     111  9
                     is = new FileInputStream(file);
     112  0
                 } catch (FileNotFoundException ignore) {
     113  
                     //we will never get here as we check for existence above.
     114  0
                     Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ignore);
     115  9
                 }
     116  
                 try {
     117  9
                     properties.load(is);
     118  0
                 } catch (IOException ex) {
     119  0
                     final String msg = String.format("Unable to load properties file '%s'", file.getPath());
     120  0
                     Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.WARNING, msg);
     121  0
                     Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
     122  
                 } finally {
     123  9
                     if (is != null) {
     124  
                         try {
     125  9
                             is.close();
     126  0
                         } catch (IOException ex) {
     127  0
                             final String msg = String.format("Unable to close properties file '%s'", file.getPath());
     128  0
                             Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.WARNING, msg);
     129  0
                             Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
     130  9
                         }
     131  
                     }
     132  
                 }
     133  
             }
     134  11
         }
     135  
     
     136  
         /**
     137  
          * Returns whether or not any properties are set.
     138  
          *
     139  
          * @return whether or not any properties are set
     140  
          */
     141  
         public boolean isEmpty() {
     142  3
             return properties.isEmpty();
     143  
         }
     144  
     
     145  
         /**
     146  
          * Writes a properties file containing the last updated date to the
     147  
          * VULNERABLE_CPE directory.
     148  
          *
     149  
          * @param updatedValue the updated nvdcve entry
     150  
          * @throws UpdateException is thrown if there is an update exception
     151  
          */
     152  
         public void save(NvdCveInfo updatedValue) throws UpdateException {
     153  1
             if (updatedValue == null) {
     154  0
                 return;
     155  
             }
     156  1
             final File cveProp = getPropertiesFile();
     157  1
             final Properties prop = new Properties();
     158  1
             if (cveProp.exists()) {
     159  1
                 FileInputStream in = null;
     160  
                 try {
     161  1
                     in = new FileInputStream(cveProp);
     162  1
                     prop.load(in);
     163  0
                 } catch (Exception ignoreMe) {
     164  0
                     Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ignoreMe);
     165  
                 } finally {
     166  1
                     if (in != null) {
     167  
                         try {
     168  1
                             in.close();
     169  0
                         } catch (Exception ignoreMeToo) {
     170  0
                             Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ignoreMeToo);
     171  1
                         }
     172  
                     }
     173  
                 }
     174  
             }
     175  1
             prop.put("version", CveDB.DB_SCHEMA_VERSION);
     176  1
             prop.put(LAST_UPDATED_BASE + updatedValue.getId(), String.valueOf(updatedValue.getTimestamp()));
     177  
     
     178  1
             OutputStream os = null;
     179  1
             OutputStreamWriter out = null;
     180  
             try {
     181  1
                 os = new FileOutputStream(cveProp);
     182  1
                 out = new OutputStreamWriter(os, "UTF-8");
     183  1
                 prop.store(out, "Meta data about data and data sources used by dependency-check");
     184  0
             } catch (FileNotFoundException ex) {
     185  0
                 Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
     186  0
                 throw new UpdateException("Unable to find last updated properties file.", ex);
     187  0
             } catch (IOException ex) {
     188  0
                 Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
     189  0
                 throw new UpdateException("Unable to update last updated properties file.", ex);
     190  
             } finally {
     191  1
                 if (out != null) {
     192  
                     try {
     193  1
                         out.close();
     194  0
                     } catch (IOException ex) {
     195  0
                         Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ex);
     196  1
                     }
     197  
                 }
     198  1
                 if (os != null) {
     199  
                     try {
     200  1
                         os.close();
     201  0
                     } catch (IOException ex) {
     202  0
                         Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ex);
     203  1
                     }
     204  
                 }
     205  
             }
     206  1
         }
     207  
     
     208  
         /**
     209  
          * Returns the property value for the given key. If the key is not contained
     210  
          * in the underlying properties null is returned.
     211  
          *
     212  
          * @param key the property key
     213  
          * @return the value of the property
     214  
          */
     215  
         public String getProperty(String key) {
     216  1
             return properties.getProperty(key);
     217  
         }
     218  
     
     219  
         /**
     220  
          * Returns the property value for the given key. If the key is not contained
     221  
          * in the underlying properties the default value is returned.
     222  
          *
     223  
          * @param key the property key
     224  
          * @param defaultValue the default value
     225  
          * @return the value of the property
     226  
          */
     227  
         public String getProperty(String key, String defaultValue) {
     228  1
             return properties.getProperty(key, defaultValue);
     229  
         }
     230  
     
     231  
         /**
     232  
          * Retrieves the properties file.
     233  
          *
     234  
          * @return the properties file
     235  
          */
     236  
         public static File getPropertiesFile() {
     237  16
             final File dataDirectory = Settings.getDataFile(Settings.KEYS.DATA_DIRECTORY);
     238  16
             final File file = new File(dataDirectory, UPDATE_PROPERTIES_FILE);
     239  16
             return file;
     240  
         }
     241  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html new file mode 100644 index 000000000..14be3bff8 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html @@ -0,0 +1,173 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.DatabaseUpdater
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DatabaseUpdater
    0%
    0/25
    0%
    0/8
    4.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.IOException;
     23  
     import org.owasp.dependencycheck.data.CachedWebDataSource;
     24  
     import java.net.MalformedURLException;
     25  
     import java.util.logging.Level;
     26  
     import java.util.logging.Logger;
     27  
     import org.owasp.dependencycheck.data.UpdateException;
     28  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     29  
     import org.owasp.dependencycheck.utils.FileUtils;
     30  
     import org.owasp.dependencycheck.utils.Settings;
     31  
     
     32  
     /**
     33  
      * Class responsible for updating the CPE and NVDCVE data stores.
     34  
      *
     35  
      * @author Jeremy Long (jeremy.long@owasp.org)
     36  
      */
     37  0
     public class DatabaseUpdater implements CachedWebDataSource {
     38  
     
     39  
         /**
     40  
          * <p>Downloads the latest NVD CVE XML file from the web and imports it into
     41  
          * the current CVE Database.</p>
     42  
          *
     43  
          * @throws UpdateException is thrown if there is an error updating the
     44  
          * database
     45  
          */
     46  
         @Override
     47  
         public void update() throws UpdateException {
     48  
             try {
     49  0
                 final UpdateTask task = UpdateTaskFactory.getUpdateTask();
     50  0
                 if (task.isUpdateNeeded()) {
     51  0
                     if (task.shouldDeleteAndRecreate()) {
     52  
                         try {
     53  0
                             deleteExistingData();
     54  0
                         } catch (IOException ex) {
     55  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.WARNING, "Unable to delete the existing data directory");
     56  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
     57  0
                         }
     58  
                     }
     59  0
                     task.update();
     60  
                 }
     61  0
             } catch (MalformedURLException ex) {
     62  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.WARNING,
     63  
                         "NVD CVE properties files contain an invalid URL, unable to update the data to use the most current data.");
     64  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
     65  0
             } catch (DownloadFailedException ex) {
     66  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.WARNING,
     67  
                         "Unable to download the NVD CVE data, unable to update the data to use the most current data.");
     68  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
     69  0
             }
     70  0
         }
     71  
     
     72  
         /**
     73  
          * Deletes the existing data directories.
     74  
          *
     75  
          * @throws IOException thrown if the directory cannot be deleted
     76  
          */
     77  
         protected void deleteExistingData() throws IOException {
     78  0
             File data = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
     79  0
             if (data.exists()) {
     80  0
                 FileUtils.delete(data);
     81  
             }
     82  0
             data = DataStoreMetaInfo.getPropertiesFile();
     83  0
             if (data.exists()) {
     84  0
                 FileUtils.delete(data);
     85  
             }
     86  0
         }
     87  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html new file mode 100644 index 000000000..e6a9df5d0 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html @@ -0,0 +1,283 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.NvdCveInfo
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NvdCveInfo
    100%
    17/17
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     /**
     22  
      * A pojo that contains the Url and timestamp of the current NvdCve XML files.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  19
     public class NvdCveInfo {
     27  
     
     28  
         /**
     29  
          * an id.
     30  
          */
     31  
         private String id;
     32  
     
     33  
         /**
     34  
          * Get the value of id.
     35  
          *
     36  
          * @return the value of id
     37  
          */
     38  
         public String getId() {
     39  7
             return id;
     40  
         }
     41  
     
     42  
         /**
     43  
          * Set the value of id.
     44  
          *
     45  
          * @param id new value of id
     46  
          */
     47  
         public void setId(String id) {
     48  15
             this.id = id;
     49  15
         }
     50  
         /**
     51  
          * a url.
     52  
          */
     53  
         private String url;
     54  
     
     55  
         /**
     56  
          * Get the value of url.
     57  
          *
     58  
          * @return the value of url
     59  
          */
     60  
         public String getUrl() {
     61  3
             return url;
     62  
         }
     63  
     
     64  
         /**
     65  
          * Set the value of url.
     66  
          *
     67  
          * @param url new value of url
     68  
          */
     69  
         public void setUrl(String url) {
     70  14
             this.url = url;
     71  14
         }
     72  
         /**
     73  
          * The 1.2 schema URL.
     74  
          */
     75  
         private String oldSchemaVersionUrl;
     76  
     
     77  
         /**
     78  
          * Get the value of oldSchemaVersionUrl.
     79  
          *
     80  
          * @return the value of oldSchemaVersionUrl
     81  
          */
     82  
         public String getOldSchemaVersionUrl() {
     83  3
             return oldSchemaVersionUrl;
     84  
         }
     85  
     
     86  
         /**
     87  
          * Set the value of oldSchemaVersionUrl.
     88  
          *
     89  
          * @param oldSchemaVersionUrl new value of oldSchemaVersionUrl
     90  
          */
     91  
         public void setOldSchemaVersionUrl(String oldSchemaVersionUrl) {
     92  14
             this.oldSchemaVersionUrl = oldSchemaVersionUrl;
     93  14
         }
     94  
         /**
     95  
          * a timestamp - epoch time.
     96  
          */
     97  
         private long timestamp;
     98  
     
     99  
         /**
     100  
          * Get the value of timestamp - epoch time.
     101  
          *
     102  
          * @return the value of timestamp - epoch time
     103  
          */
     104  
         public long getTimestamp() {
     105  2
             return timestamp;
     106  
         }
     107  
     
     108  
         /**
     109  
          * Set the value of timestamp - epoch time.
     110  
          *
     111  
          * @param timestamp new value of timestamp - epoch time
     112  
          */
     113  
         public void setTimestamp(long timestamp) {
     114  15
             this.timestamp = timestamp;
     115  15
         }
     116  
         /**
     117  
          * indicates whether or not this item should be updated.
     118  
          */
     119  19
         private boolean needsUpdate = true;
     120  
     
     121  
         /**
     122  
          * Get the value of needsUpdate.
     123  
          *
     124  
          * @return the value of needsUpdate
     125  
          */
     126  
         public boolean getNeedsUpdate() {
     127  5
             return needsUpdate;
     128  
         }
     129  
     
     130  
         /**
     131  
          * Set the value of needsUpdate.
     132  
          *
     133  
          * @param needsUpdate new value of needsUpdate
     134  
          */
     135  
         public void setNeedsUpdate(boolean needsUpdate) {
     136  14
             this.needsUpdate = needsUpdate;
     137  14
         }
     138  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html new file mode 100644 index 000000000..d7bbdeec7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html @@ -0,0 +1,703 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.StandardUpdateTask
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    StandardUpdateTask
    0%
    0/129
    0%
    0/46
    14.25
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import org.owasp.dependencycheck.data.nvdcve.InvalidDataException;
     22  
     import java.io.File;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.IOException;
     25  
     import javax.xml.parsers.ParserConfigurationException;
     26  
     import org.xml.sax.SAXException;
     27  
     import java.net.MalformedURLException;
     28  
     import java.sql.SQLException;
     29  
     import java.util.Calendar;
     30  
     import java.util.Date;
     31  
     import java.util.HashSet;
     32  
     import java.util.Set;
     33  
     import java.util.concurrent.ExecutionException;
     34  
     import java.util.concurrent.ExecutorService;
     35  
     import java.util.concurrent.Executors;
     36  
     import java.util.concurrent.Future;
     37  
     import java.util.logging.Level;
     38  
     import java.util.logging.Logger;
     39  
     import org.owasp.dependencycheck.data.UpdateException;
     40  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     41  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     42  
     import org.owasp.dependencycheck.utils.Settings;
     43  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     44  
     import org.owasp.dependencycheck.utils.InvalidSettingException;
     45  
     import static org.owasp.dependencycheck.data.update.DataStoreMetaInfo.MODIFIED;
     46  
     
     47  
     /**
     48  
      * Class responsible for updating the CPE and NVDCVE data stores.
     49  
      *
     50  
      * @author Jeremy Long (jeremy.long@owasp.org)
     51  
      */
     52  
     public class StandardUpdateTask extends AbstractUpdateTask {
     53  
     
     54  
         /**
     55  
          * The max thread pool size to use when downloading files.
     56  
          */
     57  0
         public static final int MAX_THREAD_POOL_SIZE = Settings.getInt(Settings.KEYS.MAX_DOWNLOAD_THREAD_POOL_SIZE, 3);
     58  
     
     59  
         /**
     60  
          * Constructs a new Standard Update Task.
     61  
          *
     62  
          * @param properties information about the data store
     63  
          * @throws MalformedURLException thrown if a configured URL is malformed
     64  
          * @throws DownloadFailedException thrown if a timestamp cannot be checked
     65  
          * on a configured URL
     66  
          * @throws UpdateException thrown if there is an exception generating the
     67  
          * update task
     68  
          */
     69  
         public StandardUpdateTask(DataStoreMetaInfo properties) throws MalformedURLException, DownloadFailedException, UpdateException {
     70  0
             super(properties);
     71  0
         }
     72  
     
     73  
         /**
     74  
          * <p>Downloads the latest NVD CVE XML file from the web and imports it into
     75  
          * the current CVE Database.</p>
     76  
          *
     77  
          * @throws UpdateException is thrown if there is an error updating the
     78  
          * database
     79  
          */
     80  
         @Override
     81  
         public void update() throws UpdateException {
     82  0
             int maxUpdates = 0;
     83  
             try {
     84  0
                 for (NvdCveInfo cve : getUpdateable()) {
     85  0
                     if (cve.getNeedsUpdate()) {
     86  0
                         maxUpdates += 1;
     87  
                     }
     88  
                 }
     89  0
                 if (maxUpdates <= 0) {
     90  
                     return;
     91  
                 }
     92  0
                 if (maxUpdates > 3) {
     93  0
                     Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
     94  
                             "NVD CVE requires several updates; this could take a couple of minutes.");
     95  
                 }
     96  0
                 if (maxUpdates > 0) {
     97  0
                     openDataStores();
     98  
                 }
     99  
     
     100  0
                 final int poolSize = (MAX_THREAD_POOL_SIZE > maxUpdates) ? MAX_THREAD_POOL_SIZE : maxUpdates;
     101  0
                 final ExecutorService executorService = Executors.newFixedThreadPool(poolSize);
     102  0
                 final Set<Future<CallableDownloadTask>> futures = new HashSet<Future<CallableDownloadTask>>(maxUpdates);
     103  
     
     104  0
                 for (NvdCveInfo cve : getUpdateable()) {
     105  0
                     if (cve.getNeedsUpdate()) {
     106  
                         final File file1;
     107  
                         final File file2;
     108  
                         try {
     109  0
                             file1 = File.createTempFile("cve" + cve.getId() + "_", ".xml");
     110  0
                             file2 = File.createTempFile("cve_1_2_" + cve.getId() + "_", ".xml");
     111  0
                         } catch (IOException ex) {
     112  0
                             throw new UpdateException(ex);
     113  0
                         }
     114  0
                         final CallableDownloadTask call = new CallableDownloadTask(cve, file1, file2);
     115  0
                         futures.add(executorService.submit(call));
     116  0
                     }
     117  
                 }
     118  
     
     119  
                 try {
     120  0
                     for (Future<CallableDownloadTask> future : futures) {
     121  0
                         final CallableDownloadTask filePair = future.get();
     122  0
                         String msg = String.format("Processing Started for NVD CVE - %s", filePair.getNvdCveInfo().getId());
     123  0
                         Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO, msg);
     124  
                         try {
     125  0
                             importXML(filePair.getFirst(), filePair.getSecond());
     126  0
                             getCveDB().commit();
     127  0
                             getProperties().save(filePair.getNvdCveInfo());
     128  0
                         } catch (FileNotFoundException ex) {
     129  0
                             throw new UpdateException(ex);
     130  0
                         } catch (ParserConfigurationException ex) {
     131  0
                             throw new UpdateException(ex);
     132  0
                         } catch (SAXException ex) {
     133  0
                             throw new UpdateException(ex);
     134  0
                         } catch (IOException ex) {
     135  0
                             throw new UpdateException(ex);
     136  0
                         } catch (SQLException ex) {
     137  0
                             throw new UpdateException(ex);
     138  0
                         } catch (DatabaseException ex) {
     139  0
                             throw new UpdateException(ex);
     140  0
                         } catch (ClassNotFoundException ex) {
     141  0
                             throw new UpdateException(ex);
     142  
                         } finally {
     143  0
                             filePair.cleanup();
     144  0
                         }
     145  0
                         msg = String.format("Processing Complete for NVD CVE - %s", filePair.getNvdCveInfo().getId());
     146  0
                         Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO, msg);
     147  0
                     }
     148  0
                 } catch (InterruptedException ex) {
     149  0
                     executorService.shutdownNow();
     150  0
                     Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.FINE, "Thread was interupted", ex);
     151  0
                     throw new UpdateException(ex);
     152  0
                 } catch (ExecutionException ex) {
     153  0
                     executorService.shutdownNow();
     154  0
                     Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.SEVERE, null, ex);
     155  0
                     throw new UpdateException(ex);
     156  
                 } finally {
     157  
                     //yes, this should likely not be in the finally because of the shutdownNow above.
     158  0
                     executorService.shutdown();
     159  0
                 }
     160  
     
     161  0
                 if (maxUpdates >= 1) { //ensure the modified file date gets written
     162  0
                     getProperties().save(getUpdateable().get(MODIFIED));
     163  0
                     getCveDB().cleanupDatabase();
     164  
                 }
     165  
             } finally {
     166  0
                 closeDataStores();
     167  0
             }
     168  0
         }
     169  
     
     170  
         //<editor-fold defaultstate="collapsed" desc="OLD version of update() - not multithreaded">
     171  
         /*
     172  
          * TODO - remove this
     173  
          public void update() throws UpdateException {
     174  
          try {
     175  
          int maxUpdates = 0;
     176  
          for (NvdCveInfo cve : getUpdateable()) {
     177  
          if (cve.getNeedsUpdate()) {
     178  
          maxUpdates += 1;
     179  
          }
     180  
          }
     181  
          if (maxUpdates > 3) {
     182  
          Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
     183  
          "NVD CVE requires several updates; this could take a couple of minutes.");
     184  
          }
     185  
          if (maxUpdates > 0) {
     186  
          openDataStores();
     187  
          }
     188  
     
     189  
          int count = 0;
     190  
          for (NvdCveInfo cve : getUpdateable()) {
     191  
          if (cve.getNeedsUpdate()) {
     192  
          count += 1;
     193  
          Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
     194  
          "Updating NVD CVE ({0} of {1})", new Object[]{count, maxUpdates});
     195  
          URL url = new URL(cve.getUrl());
     196  
          File outputPath = null;
     197  
          File outputPath12 = null;
     198  
          try {
     199  
          Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
     200  
          "Downloading {0}", cve.getUrl());
     201  
          outputPath = File.createTempFile("cve" + cve.getId() + "_", ".xml");
     202  
          Downloader.fetchFile(url, outputPath);
     203  
     
     204  
          url = new URL(cve.getOldSchemaVersionUrl());
     205  
          outputPath12 = File.createTempFile("cve_1_2_" + cve.getId() + "_", ".xml");
     206  
          Downloader.fetchFile(url, outputPath12);
     207  
     
     208  
          Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
     209  
          "Processing {0}", cve.getUrl());
     210  
     
     211  
          importXML(outputPath, outputPath12);
     212  
     
     213  
          getCveDB().commit();
     214  
          getProperties().save(cve);
     215  
     
     216  
          Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
     217  
          "Completed update {0} of {1}", new Object[]{count, maxUpdates});
     218  
          } catch (FileNotFoundException ex) {
     219  
          throw new UpdateException(ex);
     220  
          } catch (ParserConfigurationException ex) {
     221  
          throw new UpdateException(ex);
     222  
          } catch (SAXException ex) {
     223  
          throw new UpdateException(ex);
     224  
          } catch (IOException ex) {
     225  
          throw new UpdateException(ex);
     226  
          } catch (SQLException ex) {
     227  
          throw new UpdateException(ex);
     228  
          } catch (DatabaseException ex) {
     229  
          throw new UpdateException(ex);
     230  
          } catch (ClassNotFoundException ex) {
     231  
          throw new UpdateException(ex);
     232  
          } finally {
     233  
          boolean deleted = false;
     234  
          try {
     235  
          if (outputPath != null && outputPath.exists()) {
     236  
          deleted = outputPath.delete();
     237  
          }
     238  
          } finally {
     239  
          if (outputPath != null && (outputPath.exists() || !deleted)) {
     240  
          outputPath.deleteOnExit();
     241  
          }
     242  
          }
     243  
          try {
     244  
          deleted = false;
     245  
          if (outputPath12 != null && outputPath12.exists()) {
     246  
          deleted = outputPath12.delete();
     247  
          }
     248  
          } finally {
     249  
          if (outputPath12 != null && (outputPath12.exists() || !deleted)) {
     250  
          outputPath12.deleteOnExit();
     251  
          }
     252  
          }
     253  
          }
     254  
          }
     255  
          }
     256  
          if (maxUpdates >= 1) { //ensure the modified file date gets written
     257  
          getProperties().save(getUpdateable().get(MODIFIED));
     258  
          getCveDB().cleanupDatabase();
     259  
          }
     260  
          } catch (MalformedURLException ex) {
     261  
          throw new UpdateException(ex);
     262  
          } finally {
     263  
          closeDataStores();
     264  
          }
     265  
          }
     266  
          */
     267  
         //</editor-fold>
     268  
         /**
     269  
          * Determines if the index needs to be updated. This is done by fetching the
     270  
          * NVD CVE meta data and checking the last update date. If the data needs to
     271  
          * be refreshed this method will return the NvdCveUrl for the files that
     272  
          * need to be updated.
     273  
          *
     274  
          * @return the collection of files that need to be updated
     275  
          * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
     276  
          * data is incorrect
     277  
          * @throws DownloadFailedException is thrown if there is an error.
     278  
          * downloading the NVD CVE download data file
     279  
          * @throws UpdateException Is thrown if there is an issue with the last
     280  
          * updated properties file
     281  
          */
     282  
         @Override
     283  
         protected Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
     284  0
             Updateable updates = null;
     285  
             try {
     286  0
                 updates = retrieveCurrentTimestampsFromWeb();
     287  0
             } catch (InvalidDataException ex) {
     288  0
                 final String msg = "Unable to retrieve valid timestamp from nvd cve downloads page";
     289  0
                 Logger
     290  
                         .getLogger(StandardUpdateTask.class
     291  
                         .getName()).log(Level.FINE, msg, ex);
     292  0
                 throw new DownloadFailedException(msg, ex);
     293  0
             } catch (InvalidSettingException ex) {
     294  0
                 Logger.getLogger(StandardUpdateTask.class
     295  
                         .getName()).log(Level.FINE, "Invalid setting found when retrieving timestamps", ex);
     296  0
                 throw new DownloadFailedException(
     297  
                         "Invalid settings", ex);
     298  0
             }
     299  
     
     300  0
             if (updates == null) {
     301  0
                 throw new DownloadFailedException("Unable to retrieve the timestamps of the currently published NVD CVE data");
     302  
             }
     303  0
             final DataStoreMetaInfo properties = getProperties();
     304  0
             if (!properties.isEmpty()) {
     305  
                 try {
     306  
                     float version;
     307  
     
     308  0
                     if (properties.getProperty("version") == null) {
     309  0
                         setDeleteAndRecreate(true);
     310  
                     } else {
     311  
                         try {
     312  0
                             version = Float.parseFloat(properties.getProperty("version"));
     313  0
                             final float currentVersion = Float.parseFloat(CveDB.DB_SCHEMA_VERSION);
     314  0
                             if (currentVersion > version) {
     315  0
                                 setDeleteAndRecreate(true);
     316  
                             }
     317  0
                         } catch (NumberFormatException ex) {
     318  0
                             setDeleteAndRecreate(true);
     319  0
                         }
     320  
                     }
     321  
     
     322  0
                     if (shouldDeleteAndRecreate()) {
     323  0
                         return updates;
     324  
                     }
     325  
     
     326  0
                     final long lastUpdated = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED, "0"));
     327  0
                     final Date now = new Date();
     328  0
                     final int days = Settings.getInt(Settings.KEYS.CVE_MODIFIED_VALID_FOR_DAYS, 7);
     329  0
                     if (lastUpdated == updates.getTimeStamp(MODIFIED)) {
     330  0
                         updates.clear(); //we don't need to update anything.
     331  0
                     } else if (withinRange(lastUpdated, now.getTime(), days)) {
     332  0
                         for (NvdCveInfo entry : updates) {
     333  0
                             if (MODIFIED.equals(entry.getId())) {
     334  0
                                 entry.setNeedsUpdate(true);
     335  
                             } else {
     336  0
                                 entry.setNeedsUpdate(false);
     337  
                             }
     338  
                         }
     339  
                     } else { //we figure out which of the several XML files need to be downloaded.
     340  0
                         for (NvdCveInfo entry : updates) {
     341  0
                             if (MODIFIED.equals(entry.getId())) {
     342  0
                                 entry.setNeedsUpdate(true);
     343  
                             } else {
     344  0
                                 long currentTimestamp = 0;
     345  
                                 try {
     346  0
                                     currentTimestamp = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED_BASE + entry.getId(), "0"));
     347  0
                                 } catch (NumberFormatException ex) {
     348  0
                                     final String msg = String.format("Error parsing '%s' '%s' from nvdcve.lastupdated",
     349  
                                             DataStoreMetaInfo.LAST_UPDATED_BASE, entry.getId());
     350  0
                                     Logger
     351  
                                             .getLogger(StandardUpdateTask.class
     352  
                                             .getName()).log(Level.FINE, msg, ex);
     353  0
                                 }
     354  0
                                 if (currentTimestamp == entry.getTimestamp()) {
     355  0
                                     entry.setNeedsUpdate(false);
     356  
                                 }
     357  0
                             }
     358  
                         }
     359  
                     }
     360  0
                 } catch (NumberFormatException ex) {
     361  0
                     final String msg = "An invalid schema version or timestamp exists in the data.properties file.";
     362  0
                     Logger
     363  
                             .getLogger(StandardUpdateTask.class
     364  
                             .getName()).log(Level.WARNING, msg);
     365  0
                     Logger.getLogger(StandardUpdateTask.class
     366  
                             .getName()).log(Level.FINE, null, ex);
     367  0
                 }
     368  
             }
     369  0
             return updates;
     370  
         }
     371  
     
     372  
         /**
     373  
          * Retrieves the timestamps from the NVD CVE meta data file.
     374  
          *
     375  
          * @return the timestamp from the currently published nvdcve downloads page
     376  
          * @throws MalformedURLException thrown if the URL for the NVD CCE Meta data
     377  
          * is incorrect.
     378  
          * @throws DownloadFailedException thrown if there is an error downloading
     379  
          * the nvd cve meta data file
     380  
          * @throws InvalidDataException thrown if there is an exception parsing the
     381  
          * timestamps
     382  
          * @throws InvalidSettingException thrown if the settings are invalid
     383  
          */
     384  
         private Updateable retrieveCurrentTimestampsFromWeb()
     385  
                 throws MalformedURLException, DownloadFailedException, InvalidDataException, InvalidSettingException {
     386  
     
     387  0
             final Updateable updates = new Updateable();
     388  0
             updates.add(MODIFIED, Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL),
     389  
                     Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL),
     390  
                     false);
     391  
     
     392  0
             final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR);
     393  0
             final int end = Calendar.getInstance().get(Calendar.YEAR);
     394  0
             final String baseUrl20 = Settings.getString(Settings.KEYS.CVE_SCHEMA_2_0);
     395  0
             final String baseUrl12 = Settings.getString(Settings.KEYS.CVE_SCHEMA_1_2);
     396  0
             for (int i = start; i <= end; i++) {
     397  0
                 updates.add(Integer.toString(i), String.format(baseUrl20, i),
     398  
                         String.format(baseUrl12, i),
     399  
                         true);
     400  
             }
     401  
     
     402  0
             return updates;
     403  
         }
     404  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html new file mode 100644 index 000000000..1a18127e6 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html @@ -0,0 +1,126 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.UpdateTask
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UpdateTask
    N/A
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import org.owasp.dependencycheck.data.UpdateException;
     22  
     
     23  
     /**
     24  
      * An interface defining an update task.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public interface UpdateTask {
     29  
     
     30  
         /**
     31  
          * <p>Updates the data store to the latest version.</p>
     32  
          *
     33  
          * @throws UpdateException is thrown if there is an error updating the
     34  
          * database
     35  
          */
     36  
         void update() throws UpdateException;
     37  
     
     38  
         /**
     39  
          * Get the value of deleteAndRecreate.
     40  
          *
     41  
          * @return the value of deleteAndRecreate
     42  
          */
     43  
         boolean shouldDeleteAndRecreate();
     44  
     
     45  
         /**
     46  
          * Gets whether or not an update is needed.
     47  
          *
     48  
          * @return true or false depending on whether an update is needed
     49  
          */
     50  
         boolean isUpdateNeeded();
     51  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html new file mode 100644 index 000000000..ae63981ca --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html @@ -0,0 +1,139 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.UpdateTaskFactory
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UpdateTaskFactory
    0%
    0/5
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.net.MalformedURLException;
     22  
     import org.owasp.dependencycheck.data.UpdateException;
     23  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     24  
     
     25  
     /**
     26  
      * An UpdateTask Factory that instantiates the correct UpdateTask based on the
     27  
      * given configuration.
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  
     public final class UpdateTaskFactory {
     32  
     
     33  
         /**
     34  
          * private constructor for a utility class.
     35  
          */
     36  0
         private UpdateTaskFactory() {
     37  
             //empty contrusctor for utility class
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Constructs the appropriate update task based on configuration.
     42  
          *
     43  
          * @return an UpdateTask
     44  
          * @throws MalformedURLException thrown if a configured URL is malformed
     45  
          * @throws DownloadFailedException thrown if a timestamp cannot be checked
     46  
          * on a configured URL
     47  
          * @throws UpdateException thrown if there is an exception generating the
     48  
          * update task
     49  
          */
     50  
         public static UpdateTask getUpdateTask() throws MalformedURLException, DownloadFailedException, UpdateException {
     51  
             final UpdateTask task;
     52  0
             final DataStoreMetaInfo properties = new DataStoreMetaInfo();
     53  
     //        if (properties.isBatchUpdateMode()) {
     54  
     //            task = new BatchUpdateTask(properties);
     55  
     //        } else {
     56  0
             task = new StandardUpdateTask(properties);
     57  
     //        }
     58  0
             return task;
     59  
         }
     60  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html new file mode 100644 index 000000000..9b3bf5243 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html @@ -0,0 +1,357 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.Updateable
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Updateable
    93%
    27/29
    100%
    4/4
    1.25
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.net.MalformedURLException;
     22  
     import java.net.URL;
     23  
     import java.util.Iterator;
     24  
     import java.util.Map;
     25  
     import java.util.Map.Entry;
     26  
     import java.util.TreeMap;
     27  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     28  
     import org.owasp.dependencycheck.utils.Downloader;
     29  
     
     30  
     /**
     31  
      * Contains a collection of updateable NvdCveInfo objects. This is used to
     32  
      * determine which files need to be downloaded and processed.
     33  
      *
     34  
      * @author Jeremy Long (jeremy.long@owasp.org)
     35  
      */
     36  14
     public class Updateable implements java.lang.Iterable<NvdCveInfo>, Iterator<NvdCveInfo> {
     37  
     
     38  
         /**
     39  
          * A collection of sources of data.
     40  
          */
     41  7
         private Map<String, NvdCveInfo> collection = new TreeMap<String, NvdCveInfo>();
     42  
     
     43  
         /**
     44  
          * Returns the collection of NvdCveInfo objects. This method is mainly used
     45  
          * for testing.
     46  
          *
     47  
          * @return the collection of NvdCveInfo objects
     48  
          */
     49  
         protected Map<String, NvdCveInfo> getCollection() {
     50  3
             return collection;
     51  
         }
     52  
     
     53  
         /**
     54  
          * Gets whether or not an update is needed.
     55  
          *
     56  
          * @return true or false depending on whether an update is needed
     57  
          */
     58  
         public boolean isUpdateNeeded() {
     59  3
             for (NvdCveInfo item : this) {
     60  4
                 if (item.getNeedsUpdate()) {
     61  1
                     return true;
     62  
                 }
     63  
             }
     64  2
             return false;
     65  
         }
     66  
     
     67  
         /**
     68  
          * Adds a new entry of updateable information to the contained collection.
     69  
          *
     70  
          * @param id the key for the item to be added
     71  
          * @param url the URL to download the item
     72  
          * @param oldUrl the URL for the old version of the item (the NVD CVE old
     73  
          * schema still contains useful data we need).
     74  
          * @throws MalformedURLException thrown if the URL provided is invalid
     75  
          * @throws DownloadFailedException thrown if the download fails.
     76  
          */
     77  
         public void add(String id, String url, String oldUrl) throws MalformedURLException, DownloadFailedException {
     78  1
             add(id, url, oldUrl, false);
     79  1
         }
     80  
     
     81  
         /**
     82  
          * Adds a new entry of updateable information to the contained collection.
     83  
          *
     84  
          * @param id the key for the item to be added
     85  
          * @param url the URL to download the item
     86  
          * @param oldUrl the URL for the old version of the item (the NVD CVE old
     87  
          * schema still contains useful data we need).
     88  
          * @param needsUpdate whether or not the data needs to be updated
     89  
          * @throws MalformedURLException thrown if the URL provided is invalid
     90  
          * @throws DownloadFailedException thrown if the download fails.
     91  
          */
     92  
         public void add(String id, String url, String oldUrl, boolean needsUpdate) throws MalformedURLException, DownloadFailedException {
     93  13
             final NvdCveInfo item = new NvdCveInfo();
     94  13
             item.setNeedsUpdate(needsUpdate); //the others default to true, to make life easier later this should default to false.
     95  13
             item.setId(id);
     96  13
             item.setUrl(url);
     97  13
             item.setOldSchemaVersionUrl(oldUrl);
     98  13
             item.setTimestamp(Downloader.getLastModified(new URL(url)));
     99  13
             collection.put(id, item);
     100  13
         }
     101  
     
     102  
         /**
     103  
          * Clears the contained collection of NvdCveInfo entries.
     104  
          */
     105  
         public void clear() {
     106  1
             collection.clear();
     107  1
         }
     108  
     
     109  
         /**
     110  
          * Returns the timestamp for the given entry.
     111  
          *
     112  
          * @param key the key to lookup in the collection of NvdCveInfo items
     113  
          * @return the timestamp for the given entry
     114  
          */
     115  
         public long getTimeStamp(String key) {
     116  0
             return collection.get(key).getTimestamp();
     117  
         }
     118  
         /**
     119  
          * An internal iterator used to implement iterable.
     120  
          */
     121  7
         private Iterator<Entry<String, NvdCveInfo>> iterableContent = null;
     122  
     
     123  
         /**
     124  
          * <p>Returns an iterator for the NvdCveInfo contained.</p>
     125  
          * <p><b>This method is not thread safe.</b></p>
     126  
          *
     127  
          * @return an NvdCveInfo Iterator
     128  
          */
     129  
         @Override
     130  
         public Iterator<NvdCveInfo> iterator() {
     131  4
             iterableContent = collection.entrySet().iterator();
     132  4
             return this;
     133  
         }
     134  
     
     135  
         /**
     136  
          * <p>Returns whether or not there is another item in the collection.</p>
     137  
          * <p><b>This method is not thread safe.</b></p>
     138  
          *
     139  
          * @return true or false depending on whether or not another item exists in
     140  
          * the collection
     141  
          */
     142  
         @Override
     143  
         public boolean hasNext() {
     144  10
             return iterableContent.hasNext();
     145  
         }
     146  
     
     147  
         /**
     148  
          * <p>Returns the next item in the collection.</p>
     149  
          * <p><b>This method is not thread safe.</b></p>
     150  
          *
     151  
          * @return the next NvdCveInfo item in the collection
     152  
          */
     153  
         @Override
     154  
         public NvdCveInfo next() {
     155  7
             return iterableContent.next().getValue();
     156  
         }
     157  
     
     158  
         /**
     159  
          * <p>Removes the current NvdCveInfo object from the collection.</p>
     160  
          * <p><b>This method is not thread safe.</b></p>
     161  
          */
     162  
         @Override
     163  
         public void remove() {
     164  1
             iterableContent.remove();
     165  1
         }
     166  
     
     167  
         /**
     168  
          * Returns the specified item from the collection.
     169  
          *
     170  
          * @param key the key to lookup the return value
     171  
          * @return the NvdCveInfo object stored using the specified key
     172  
          */
     173  
         NvdCveInfo get(String key) {
     174  2
             return collection.get(key);
     175  
         }
     176  
     
     177  
         @Override
     178  
         public String toString() {
     179  0
             return "Updateable{" + "size=" + collection.size() + '}';
     180  
         }
     181  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html new file mode 100644 index 000000000..ad7ea8dd9 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html @@ -0,0 +1,1042 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.Dependency
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Dependency
    60%
    85/140
    13%
    17/124
    2.78
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.IOException;
     23  
     import java.security.NoSuchAlgorithmException;
     24  
     import java.util.ArrayList;
     25  
     import java.util.List;
     26  
     import java.util.Set;
     27  
     import java.util.SortedSet;
     28  
     import java.util.TreeSet;
     29  
     import java.util.logging.Level;
     30  
     import java.util.logging.Logger;
     31  
     import org.owasp.dependencycheck.utils.Checksum;
     32  
     import org.owasp.dependencycheck.utils.FileUtils;
     33  
     
     34  
     /**
     35  
      * A program dependency. This object is one of the core components within
     36  
      * DependencyCheck. It is used to collect information about the dependency in
     37  
      * the form of evidence. The Evidence is then used to determine if there are any
     38  
      * known, published, vulnerabilities associated with the program dependency.
     39  
      *
     40  
      * @author Jeremy Long (jeremy.long@owasp.org)
     41  
      */
     42  20
     public class Dependency implements Comparable<Dependency> {
     43  
     
     44  
         /**
     45  
          * The actual file path of the dependency on disk.
     46  
          */
     47  
         private String actualFilePath;
     48  
         /**
     49  
          * The file path to display.
     50  
          */
     51  
         private String filePath;
     52  
         /**
     53  
          * The file name of the dependency.
     54  
          */
     55  
         private String fileName;
     56  
         /**
     57  
          * The file extension of the dependency.
     58  
          */
     59  
         private String fileExtension;
     60  
         /**
     61  
          * The md5 hash of the dependency.
     62  
          */
     63  
         private String md5sum;
     64  
         /**
     65  
          * The SHA1 hash of the dependency.
     66  
          */
     67  
         private String sha1sum;
     68  
         /**
     69  
          * A list of Identifiers.
     70  
          */
     71  
         private Set<Identifier> identifiers;
     72  
         /**
     73  
          * A collection of vendor evidence.
     74  
          */
     75  
         private final EvidenceCollection vendorEvidence;
     76  
         /**
     77  
          * A collection of product evidence.
     78  
          */
     79  
         private final EvidenceCollection productEvidence;
     80  
         /**
     81  
          * A collection of version evidence.
     82  
          */
     83  
         private final EvidenceCollection versionEvidence;
     84  
     
     85  
         /**
     86  
          * Constructs a new Dependency object.
     87  
          */
     88  54
         public Dependency() {
     89  54
             vendorEvidence = new EvidenceCollection();
     90  54
             productEvidence = new EvidenceCollection();
     91  54
             versionEvidence = new EvidenceCollection();
     92  54
             identifiers = new TreeSet<Identifier>();
     93  54
             vulnerabilities = new TreeSet<Vulnerability>(new VulnerabilityComparator());
     94  54
         }
     95  
     
     96  
         /**
     97  
          * Constructs a new Dependency object.
     98  
          *
     99  
          * @param file the File to create the dependency object from.
     100  
          */
     101  
         public Dependency(File file) {
     102  36
             this();
     103  36
             this.actualFilePath = file.getPath();
     104  36
             this.filePath = this.actualFilePath;
     105  36
             this.fileName = file.getName();
     106  36
             this.fileExtension = FileUtils.getFileExtension(fileName);
     107  36
             determineHashes(file);
     108  36
         }
     109  
     
     110  
         /**
     111  
          * Returns the file name of the dependency.
     112  
          *
     113  
          * @return the file name of the dependency.
     114  
          */
     115  
         public String getFileName() {
     116  148
             return this.fileName;
     117  
         }
     118  
     
     119  
         /**
     120  
          * Sets the file name of the dependency.
     121  
          *
     122  
          * @param fileName the file name of the dependency.
     123  
          */
     124  
         public void setFileName(String fileName) {
     125  12
             this.fileName = fileName;
     126  12
         }
     127  
     
     128  
         /**
     129  
          * Sets the actual file path of the dependency on disk.
     130  
          *
     131  
          * @param actualFilePath the file path of the dependency.
     132  
          */
     133  
         public void setActualFilePath(String actualFilePath) {
     134  2
             this.actualFilePath = actualFilePath;
     135  2
         }
     136  
     
     137  
         /**
     138  
          * Gets the file path of the dependency.
     139  
          *
     140  
          * @return the file path of the dependency.
     141  
          */
     142  
         public String getActualFilePath() {
     143  160
             return this.actualFilePath;
     144  
         }
     145  
     
     146  
         /**
     147  
          * Sets the file path of the dependency.
     148  
          *
     149  
          * @param filePath the file path of the dependency.
     150  
          */
     151  
         public void setFilePath(String filePath) {
     152  12
             this.filePath = filePath;
     153  12
         }
     154  
     
     155  
         /**
     156  
          * <p>Gets the file path of the dependency.</p> <p><b>NOTE:</b> This may not
     157  
          * be the actual path of the file on disk. The actual path of the file on
     158  
          * disk can be obtained via the getActualFilePath().</p>
     159  
          *
     160  
          * @return the file path of the dependency.
     161  
          */
     162  
         public String getFilePath() {
     163  19
             return this.filePath;
     164  
         }
     165  
     
     166  
         /**
     167  
          * Sets the file name of the dependency.
     168  
          *
     169  
          * @param fileExtension the file name of the dependency.
     170  
          */
     171  
         public void setFileExtension(String fileExtension) {
     172  2
             this.fileExtension = fileExtension;
     173  2
         }
     174  
     
     175  
         /**
     176  
          * Gets the file extension of the dependency.
     177  
          *
     178  
          * @return the file extension of the dependency.
     179  
          */
     180  
         public String getFileExtension() {
     181  98
             return this.fileExtension;
     182  
         }
     183  
     
     184  
         /**
     185  
          * Returns the MD5 Checksum of the dependency file.
     186  
          *
     187  
          * @return the MD5 Checksum
     188  
          */
     189  
         public String getMd5sum() {
     190  5
             return this.md5sum;
     191  
         }
     192  
     
     193  
         /**
     194  
          * Sets the MD5 Checksum of the dependency.
     195  
          *
     196  
          * @param md5sum the MD5 Checksum
     197  
          */
     198  
         public void setMd5sum(String md5sum) {
     199  37
             this.md5sum = md5sum;
     200  37
         }
     201  
     
     202  
         /**
     203  
          * Returns the SHA1 Checksum of the dependency.
     204  
          *
     205  
          * @return the SHA1 Checksum
     206  
          */
     207  
         public String getSha1sum() {
     208  8
             return this.sha1sum;
     209  
         }
     210  
     
     211  
         /**
     212  
          * Sets the SHA1 Checksum of the dependency.
     213  
          *
     214  
          * @param sha1sum the SHA1 Checksum
     215  
          */
     216  
         public void setSha1sum(String sha1sum) {
     217  39
             this.sha1sum = sha1sum;
     218  39
         }
     219  
     
     220  
         /**
     221  
          * Returns a List of Identifiers.
     222  
          *
     223  
          * @return an ArrayList of Identifiers.
     224  
          */
     225  
         public Set<Identifier> getIdentifiers() {
     226  132
             return this.identifiers;
     227  
         }
     228  
     
     229  
         /**
     230  
          * Sets a List of Identifiers.
     231  
          *
     232  
          * @param identifiers A list of Identifiers.
     233  
          */
     234  
         public void setIdentifiers(Set<Identifier> identifiers) {
     235  1
             this.identifiers = identifiers;
     236  1
         }
     237  
     
     238  
         /**
     239  
          * Adds an entry to the list of detected Identifiers for the dependency
     240  
          * file.
     241  
          *
     242  
          * @param type the type of identifier (such as CPE)
     243  
          * @param value the value of the identifier
     244  
          * @param url the URL of the identifier
     245  
          */
     246  
         public void addIdentifier(String type, String value, String url) {
     247  5
             final Identifier i = new Identifier(type, value, url);
     248  5
             this.identifiers.add(i);
     249  5
         }
     250  
     
     251  
         /**
     252  
          * Adds an entry to the list of detected Identifiers for the dependency
     253  
          * file.
     254  
          *
     255  
          * @param identifier the identifier to add
     256  
          */
     257  
         public void addIdentifier(Identifier identifier) {
     258  88
             this.identifiers.add(identifier);
     259  88
         }
     260  
     
     261  
         /**
     262  
          * Returns the evidence used to identify this dependency.
     263  
          *
     264  
          * @return an EvidenceCollection.
     265  
          */
     266  
         public EvidenceCollection getEvidence() {
     267  1
             return EvidenceCollection.merge(this.productEvidence, this.vendorEvidence, this.versionEvidence);
     268  
         }
     269  
     
     270  
         /**
     271  
          * Returns the evidence used to identify this dependency.
     272  
          *
     273  
          * @return an EvidenceCollection.
     274  
          */
     275  
         public EvidenceCollection getEvidenceUsed() {
     276  4
             return EvidenceCollection.mergeUsed(this.productEvidence, this.vendorEvidence, this.versionEvidence);
     277  
         }
     278  
     
     279  
         /**
     280  
          * Gets the Vendor Evidence.
     281  
          *
     282  
          * @return an EvidenceCollection.
     283  
          */
     284  
         public EvidenceCollection getVendorEvidence() {
     285  451
             return this.vendorEvidence;
     286  
         }
     287  
     
     288  
         /**
     289  
          * Gets the Product Evidence.
     290  
          *
     291  
          * @return an EvidenceCollection.
     292  
          */
     293  
         public EvidenceCollection getProductEvidence() {
     294  1082
             return this.productEvidence;
     295  
         }
     296  
     
     297  
         /**
     298  
          * Gets the Version Evidence.
     299  
          *
     300  
          * @return an EvidenceCollection.
     301  
          */
     302  
         public EvidenceCollection getVersionEvidence() {
     303  328
             return this.versionEvidence;
     304  
         }
     305  
         /**
     306  
          * A list of exceptions that occurred during analysis of this dependency.
     307  
          */
     308  54
         private List<Exception> analysisExceptions = new ArrayList<Exception>();
     309  
     
     310  
         /**
     311  
          * Get the value of analysisExceptions.
     312  
          *
     313  
          * @return the value of analysisExceptions
     314  
          */
     315  
         public List<Exception> getAnalysisExceptions() {
     316  3
             return analysisExceptions;
     317  
         }
     318  
     
     319  
         /**
     320  
          * Set the value of analysisExceptions.
     321  
          *
     322  
          * @param analysisExceptions new value of analysisExceptions
     323  
          */
     324  
         public void setAnalysisExceptions(List<Exception> analysisExceptions) {
     325  0
             this.analysisExceptions = analysisExceptions;
     326  0
         }
     327  
     
     328  
         /**
     329  
          * Adds an exception to the analysis exceptions collection.
     330  
          *
     331  
          * @param ex an exception.
     332  
          */
     333  
         public void addAnalysisException(Exception ex) {
     334  0
             this.analysisExceptions.add(ex);
     335  0
         }
     336  
         /**
     337  
          * The description of the JAR file.
     338  
          */
     339  
         private String description;
     340  
     
     341  
         /**
     342  
          * Get the value of description.
     343  
          *
     344  
          * @return the value of description
     345  
          */
     346  
         public String getDescription() {
     347  15
             return description;
     348  
         }
     349  
     
     350  
         /**
     351  
          * Set the value of description.
     352  
          *
     353  
          * @param description new value of description
     354  
          */
     355  
         public void setDescription(String description) {
     356  19
             this.description = description;
     357  19
         }
     358  
         /**
     359  
          * The license that this dependency uses.
     360  
          */
     361  
         private String license;
     362  
     
     363  
         /**
     364  
          * Get the value of license.
     365  
          *
     366  
          * @return the value of license
     367  
          */
     368  
         public String getLicense() {
     369  11
             return license;
     370  
         }
     371  
     
     372  
         /**
     373  
          * Set the value of license.
     374  
          *
     375  
          * @param license new value of license
     376  
          */
     377  
         public void setLicense(String license) {
     378  7
             this.license = license;
     379  7
         }
     380  
         /**
     381  
          * A list of vulnerabilities for this dependency.
     382  
          */
     383  
         private SortedSet<Vulnerability> vulnerabilities;
     384  
     
     385  
         /**
     386  
          * Get the list of vulnerabilities.
     387  
          *
     388  
          * @return the list of vulnerabilities
     389  
          */
     390  
         public SortedSet<Vulnerability> getVulnerabilities() {
     391  28
             return vulnerabilities;
     392  
         }
     393  
     
     394  
         /**
     395  
          * Set the value of vulnerabilities.
     396  
          *
     397  
          * @param vulnerabilities new value of vulnerabilities
     398  
          */
     399  
         public void setVulnerabilities(SortedSet<Vulnerability> vulnerabilities) {
     400  0
             this.vulnerabilities = vulnerabilities;
     401  0
         }
     402  
     
     403  
         /**
     404  
          * Determines the sha1 and md5 sum for the given file.
     405  
          *
     406  
          * @param file the file to create checksums for
     407  
          */
     408  
         private void determineHashes(File file) {
     409  36
             String md5 = null;
     410  36
             String sha1 = null;
     411  
             try {
     412  36
                 md5 = Checksum.getMD5Checksum(file);
     413  36
                 sha1 = Checksum.getSHA1Checksum(file);
     414  0
             } catch (IOException ex) {
     415  0
                 final String msg = String.format("Unable to read '%s' to determine hashes.", file.getName());
     416  0
                 Logger.getLogger(Dependency.class.getName()).log(Level.WARNING, msg);
     417  0
                 Logger.getLogger(Dependency.class.getName()).log(Level.FINE, null, ex);
     418  0
             } catch (NoSuchAlgorithmException ex) {
     419  0
                 final String msg = "Unable to use MD5 of SHA1 checksums.";
     420  0
                 Logger.getLogger(Dependency.class.getName()).log(Level.WARNING, msg);
     421  0
                 Logger.getLogger(Dependency.class.getName()).log(Level.FINE, null, ex);
     422  36
             }
     423  36
             this.setMd5sum(md5);
     424  36
             this.setSha1sum(sha1);
     425  36
         }
     426  
     
     427  
         /**
     428  
          * Adds a vulnerability to the dependency.
     429  
          *
     430  
          * @param vulnerability a vulnerability outlining a vulnerability.
     431  
          */
     432  
         public void addVulnerability(Vulnerability vulnerability) {
     433  3
             this.vulnerabilities.add(vulnerability);
     434  3
         }
     435  
         /**
     436  
          * A collection of related dependencies.
     437  
          */
     438  54
         private Set<Dependency> relatedDependencies = new TreeSet<Dependency>();
     439  
     
     440  
         /**
     441  
          * Get the value of relatedDependencies.
     442  
          *
     443  
          * @return the value of relatedDependencies
     444  
          */
     445  
         public Set<Dependency> getRelatedDependencies() {
     446  3
             return relatedDependencies;
     447  
         }
     448  
     
     449  
         /**
     450  
          * Set the value of relatedDependencies.
     451  
          *
     452  
          * @param relatedDependencies new value of relatedDependencies
     453  
          */
     454  
         public void setRelatedDependencies(Set<Dependency> relatedDependencies) {
     455  0
             this.relatedDependencies = relatedDependencies;
     456  0
         }
     457  
     
     458  
         /**
     459  
          * Adds a related dependency.
     460  
          *
     461  
          * @param dependency a reference to the related dependency
     462  
          */
     463  
         public void addRelatedDependency(Dependency dependency) {
     464  0
             relatedDependencies.add(dependency);
     465  0
         }
     466  
     
     467  
         /**
     468  
          * Implementation of the Comparable<Dependency> interface. The comparison is
     469  
          * solely based on the file name.
     470  
          *
     471  
          * @param o a dependency to compare
     472  
          * @return an integer representing the natural ordering
     473  
          */
     474  
         public int compareTo(Dependency o) {
     475  20
             return this.getFileName().compareToIgnoreCase(o.getFileName());
     476  
         }
     477  
     
     478  
         /**
     479  
          * Implementation of the equals method.
     480  
          *
     481  
          * @param obj the object to compare
     482  
          * @return true if the objects are equal, otherwise false
     483  
          */
     484  
         @Override
     485  
         public boolean equals(Object obj) {
     486  0
             if (obj == null) {
     487  0
                 return false;
     488  
             }
     489  0
             if (getClass() != obj.getClass()) {
     490  0
                 return false;
     491  
             }
     492  0
             final Dependency other = (Dependency) obj;
     493  0
             if ((this.actualFilePath == null) ? (other.actualFilePath != null) : !this.actualFilePath.equals(other.actualFilePath)) {
     494  0
                 return false;
     495  
             }
     496  0
             if ((this.filePath == null) ? (other.filePath != null) : !this.filePath.equals(other.filePath)) {
     497  0
                 return false;
     498  
             }
     499  0
             if ((this.fileName == null) ? (other.fileName != null) : !this.fileName.equals(other.fileName)) {
     500  0
                 return false;
     501  
             }
     502  0
             if ((this.fileExtension == null) ? (other.fileExtension != null) : !this.fileExtension.equals(other.fileExtension)) {
     503  0
                 return false;
     504  
             }
     505  0
             if ((this.md5sum == null) ? (other.md5sum != null) : !this.md5sum.equals(other.md5sum)) {
     506  0
                 return false;
     507  
             }
     508  0
             if ((this.sha1sum == null) ? (other.sha1sum != null) : !this.sha1sum.equals(other.sha1sum)) {
     509  0
                 return false;
     510  
             }
     511  0
             if (this.identifiers != other.identifiers && (this.identifiers == null || !this.identifiers.equals(other.identifiers))) {
     512  0
                 return false;
     513  
             }
     514  0
             if (this.vendorEvidence != other.vendorEvidence && (this.vendorEvidence == null || !this.vendorEvidence.equals(other.vendorEvidence))) {
     515  0
                 return false;
     516  
             }
     517  0
             if (this.productEvidence != other.productEvidence && (this.productEvidence == null || !this.productEvidence.equals(other.productEvidence))) {
     518  0
                 return false;
     519  
             }
     520  0
             if (this.versionEvidence != other.versionEvidence && (this.versionEvidence == null || !this.versionEvidence.equals(other.versionEvidence))) {
     521  0
                 return false;
     522  
             }
     523  0
             if (this.analysisExceptions != other.analysisExceptions
     524  
                     && (this.analysisExceptions == null || !this.analysisExceptions.equals(other.analysisExceptions))) {
     525  0
                 return false;
     526  
             }
     527  0
             if ((this.description == null) ? (other.description != null) : !this.description.equals(other.description)) {
     528  0
                 return false;
     529  
             }
     530  0
             if ((this.license == null) ? (other.license != null) : !this.license.equals(other.license)) {
     531  0
                 return false;
     532  
             }
     533  0
             if (this.vulnerabilities != other.vulnerabilities && (this.vulnerabilities == null || !this.vulnerabilities.equals(other.vulnerabilities))) {
     534  0
                 return false;
     535  
             }
     536  0
             if (this.relatedDependencies != other.relatedDependencies
     537  
                     && (this.relatedDependencies == null || !this.relatedDependencies.equals(other.relatedDependencies))) {
     538  0
                 return false;
     539  
             }
     540  0
             return true;
     541  
         }
     542  
     
     543  
         /**
     544  
          * Generates the HashCode.
     545  
          *
     546  
          * @return the HashCode
     547  
          */
     548  
         @Override
     549  
         public int hashCode() {
     550  108
             int hash = 3;
     551  108
             hash = 47 * hash + (this.actualFilePath != null ? this.actualFilePath.hashCode() : 0);
     552  108
             hash = 47 * hash + (this.filePath != null ? this.filePath.hashCode() : 0);
     553  108
             hash = 47 * hash + (this.fileName != null ? this.fileName.hashCode() : 0);
     554  108
             hash = 47 * hash + (this.fileExtension != null ? this.fileExtension.hashCode() : 0);
     555  108
             hash = 47 * hash + (this.md5sum != null ? this.md5sum.hashCode() : 0);
     556  108
             hash = 47 * hash + (this.sha1sum != null ? this.sha1sum.hashCode() : 0);
     557  108
             hash = 47 * hash + (this.identifiers != null ? this.identifiers.hashCode() : 0);
     558  108
             hash = 47 * hash + (this.vendorEvidence != null ? this.vendorEvidence.hashCode() : 0);
     559  108
             hash = 47 * hash + (this.productEvidence != null ? this.productEvidence.hashCode() : 0);
     560  108
             hash = 47 * hash + (this.versionEvidence != null ? this.versionEvidence.hashCode() : 0);
     561  108
             hash = 47 * hash + (this.analysisExceptions != null ? this.analysisExceptions.hashCode() : 0);
     562  108
             hash = 47 * hash + (this.description != null ? this.description.hashCode() : 0);
     563  108
             hash = 47 * hash + (this.license != null ? this.license.hashCode() : 0);
     564  108
             hash = 47 * hash + (this.vulnerabilities != null ? this.vulnerabilities.hashCode() : 0);
     565  108
             hash = 47 * hash + (this.relatedDependencies != null ? this.relatedDependencies.hashCode() : 0);
     566  108
             return hash;
     567  
         }
     568  
     
     569  
         /**
     570  
          * Standard toString() implementation showing the filename, actualFilePath,
     571  
          * and filePath.
     572  
          *
     573  
          * @return the string representation of the file
     574  
          */
     575  
         @Override
     576  
         public String toString() {
     577  0
             return "Dependency{ fileName='" + fileName + "', actualFilePath='" + actualFilePath + "', filePath='" + filePath + "'}";
     578  
         }
     579  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html new file mode 100644 index 000000000..a6f06ded4 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html @@ -0,0 +1,507 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.Evidence
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Evidence
    48%
    24/49
    25%
    10/40
    2.294
    Evidence$Confidence
    100%
    5/5
    N/A
    2.294
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     /**
     22  
      * Evidence is a piece of information about a Dependency.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  121377
     public class Evidence implements Comparable<Evidence> {
     27  
     
     28  
         /**
     29  
          * The confidence that the evidence is "high" quality.
     30  
          */
     31  76
         public enum Confidence {
     32  
     
     33  
             /**
     34  
              * High confidence evidence.
     35  
              */
     36  1
             HIGHEST,
     37  
             /**
     38  
              * High confidence evidence.
     39  
              */
     40  1
             HIGH,
     41  
             /**
     42  
              * Medium confidence evidence.
     43  
              */
     44  1
             MEDIUM,
     45  
             /**
     46  
              * Low confidence evidence.
     47  
              */
     48  1
             LOW
     49  
         }
     50  
     
     51  
         /**
     52  
          * Creates a new Evidence object.
     53  
          */
     54  0
         public Evidence() {
     55  0
         }
     56  
     
     57  
         /**
     58  
          * Creates a new Evidence objects.
     59  
          *
     60  
          * @param source the source of the evidence.
     61  
          * @param name the name of the evidence.
     62  
          * @param value the value of the evidence.
     63  
          * @param confidence the confidence of the evidence.
     64  
          */
     65  70882
         public Evidence(String source, String name, String value, Confidence confidence) {
     66  70882
             this.source = source;
     67  70882
             this.name = name;
     68  70882
             this.value = value;
     69  70882
             this.confidence = confidence;
     70  70882
         }
     71  
         /**
     72  
          * The name of the evidence.
     73  
          */
     74  
         private String name;
     75  
     
     76  
         /**
     77  
          * Get the value of name.
     78  
          *
     79  
          * @return the value of name
     80  
          */
     81  
         public String getName() {
     82  52
             return name;
     83  
         }
     84  
     
     85  
         /**
     86  
          * Set the value of name.
     87  
          *
     88  
          * @param name new value of name
     89  
          */
     90  
         public void setName(String name) {
     91  0
             this.name = name;
     92  0
         }
     93  
         /**
     94  
          * The source of the evidence.
     95  
          */
     96  
         private String source;
     97  
     
     98  
         /**
     99  
          * Get the value of source.
     100  
          *
     101  
          * @return the value of source
     102  
          */
     103  
         public String getSource() {
     104  41
             return source;
     105  
         }
     106  
     
     107  
         /**
     108  
          * Set the value of source.
     109  
          *
     110  
          * @param source new value of source
     111  
          */
     112  
         public void setSource(String source) {
     113  0
             this.source = source;
     114  0
         }
     115  
         /**
     116  
          * The value of the evidence.
     117  
          */
     118  
         private String value;
     119  
     
     120  
         /**
     121  
          * Get the value of value.
     122  
          *
     123  
          * @return the value of value
     124  
          */
     125  
         public String getValue() {
     126  6726
             used = true;
     127  6726
             return value;
     128  
         }
     129  
     
     130  
         /**
     131  
          * Get the value of value. If setUsed is set to false this call to get will
     132  
          * not mark the evidence as used.
     133  
          *
     134  
          * @param setUsed whether or not this call to getValue should cause the used
     135  
          * flag to be updated
     136  
          * @return the value of value
     137  
          */
     138  
         public String getValue(Boolean setUsed) {
     139  210
             used = used || setUsed;
     140  210
             return value;
     141  
         }
     142  
     
     143  
         /**
     144  
          * Set the value of value.
     145  
          *
     146  
          * @param value new value of value
     147  
          */
     148  
         public void setValue(String value) {
     149  0
             this.value = value;
     150  0
         }
     151  
         /**
     152  
          * A value indicating if the Evidence has been "used" (aka read).
     153  
          */
     154  
         private boolean used;
     155  
     
     156  
         /**
     157  
          * Get the value of used.
     158  
          *
     159  
          * @return the value of used
     160  
          */
     161  
         public boolean isUsed() {
     162  9263
             return used;
     163  
         }
     164  
     
     165  
         /**
     166  
          * Set the value of used.
     167  
          *
     168  
          * @param used new value of used
     169  
          */
     170  
         public void setUsed(boolean used) {
     171  0
             this.used = used;
     172  0
         }
     173  
         /**
     174  
          * The confidence level for the evidence.
     175  
          */
     176  
         private Confidence confidence;
     177  
     
     178  
         /**
     179  
          * Get the value of confidence.
     180  
          *
     181  
          * @return the value of confidence
     182  
          */
     183  
         public Confidence getConfidence() {
     184  2551
             return confidence;
     185  
         }
     186  
     
     187  
         /**
     188  
          * Set the value of confidence.
     189  
          *
     190  
          * @param confidence new value of confidence
     191  
          */
     192  
         public void setConfidence(Confidence confidence) {
     193  0
             this.confidence = confidence;
     194  0
         }
     195  
     
     196  
         /**
     197  
          * Implements the hashCode for Evidence.
     198  
          *
     199  
          * @return hash code.
     200  
          */
     201  
         @Override
     202  
         public int hashCode() {
     203  0
             int hash = 3;
     204  0
             hash = 67 * hash + (this.name != null ? this.name.hashCode() : 0);
     205  0
             hash = 67 * hash + (this.source != null ? this.source.hashCode() : 0);
     206  0
             hash = 67 * hash + (this.value != null ? this.value.hashCode() : 0);
     207  0
             hash = 67 * hash + (this.confidence != null ? this.confidence.hashCode() : 0);
     208  0
             return hash;
     209  
         }
     210  
     
     211  
         /**
     212  
          * Implements equals for Evidence.
     213  
          *
     214  
          * @param that an object to check the equality of.
     215  
          * @return whether the two objects are equal.
     216  
          */
     217  
         @Override
     218  
         public boolean equals(Object that) {
     219  0
             if (this == that) {
     220  0
                 return true;
     221  
             }
     222  0
             if (!(that instanceof Evidence)) {
     223  0
                 return false;
     224  
             }
     225  0
             final Evidence e = (Evidence) that;
     226  
     
     227  0
             return testEquality(name, e.name) && testEquality(source, e.source) && testEquality(value, e.value)
     228  
                     && (confidence == null ? e.confidence == null : confidence == e.confidence);
     229  
         }
     230  
     
     231  
         /**
     232  
          * Simple equality test for use within the equals method. This does a case
     233  
          * insensitive compare.
     234  
          *
     235  
          * @param l a string to compare.
     236  
          * @param r another string to compare.
     237  
          * @return whether the two strings are the same.
     238  
          */
     239  
         private boolean testEquality(String l, String r) {
     240  0
             return l == null ? r == null : l.equalsIgnoreCase(r);
     241  
         }
     242  
     
     243  
         /**
     244  
          * Implementation of the comparable interface.
     245  
          *
     246  
          * @param o the evidence being compared
     247  
          * @return an integer indicating the ordering of the two objects
     248  
          */
     249  
         public int compareTo(Evidence o) {
     250  121377
             if (source.equals(o.source)) {
     251  99684
                 if (name.equals(o.name)) {
     252  99381
                     if (value.equals(o.value)) {
     253  70476
                         if (confidence.equals(o.confidence)) {
     254  70471
                             return 0; //they are equal
     255  
                         } else {
     256  5
                             return confidence.compareTo(o.confidence);
     257  
                         }
     258  
                     } else {
     259  28905
                         return value.compareToIgnoreCase(o.value);
     260  
                     }
     261  
                 } else {
     262  303
                     return name.compareToIgnoreCase(o.name);
     263  
                 }
     264  
             } else {
     265  21693
                 return source.compareToIgnoreCase(o.source);
     266  
             }
     267  
         }
     268  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html new file mode 100644 index 000000000..47a5c1b6f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html @@ -0,0 +1,701 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.EvidenceCollection
    +
     
    + + + + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    EvidenceCollection
    70%
    64/91
    53%
    31/58
    2.783
    EvidenceCollection$1
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$2
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$3
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$4
    100%
    2/2
    100%
    2/2
    2.783
    EvidenceCollection$5
    100%
    2/2
    N/A
    2.783
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     import java.net.MalformedURLException;
     22  
     import java.util.HashSet;
     23  
     import java.util.Iterator;
     24  
     import java.util.List;
     25  
     import java.util.Set;
     26  
     import java.util.TreeSet;
     27  
     import java.util.logging.Level;
     28  
     import java.util.logging.Logger;
     29  
     import org.apache.commons.lang.StringUtils;
     30  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     31  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     32  
     import org.owasp.dependencycheck.utils.Filter;
     33  
     import org.owasp.dependencycheck.utils.UrlStringUtils;
     34  
     
     35  
     /**
     36  
      * Used to maintain a collection of Evidence.
     37  
      *
     38  
      * @author Jeremy Long (jeremy.long@owasp.org)
     39  
      */
     40  
     public class EvidenceCollection implements Iterable<Evidence> {
     41  
     
     42  
         /**
     43  
          * Used to iterate over highest confidence evidence contained in the
     44  
          * collection.
     45  
          */
     46  442
         private static final Filter<Evidence> HIGHEST_CONFIDENCE = new Filter<Evidence>() {
     47  
             public boolean passes(Evidence evidence) {
     48  441
                 return evidence.getConfidence() == Evidence.Confidence.HIGHEST;
     49  
             }
     50  
         };
     51  
         /**
     52  
          * Used to iterate over high confidence evidence contained in the
     53  
          * collection.
     54  
          */
     55  439
         private static final Filter<Evidence> HIGH_CONFIDENCE = new Filter<Evidence>() {
     56  
             public boolean passes(Evidence evidence) {
     57  438
                 return evidence.getConfidence() == Evidence.Confidence.HIGH;
     58  
             }
     59  
         };
     60  
         /**
     61  
          * Used to iterate over medium confidence evidence contained in the
     62  
          * collection.
     63  
          */
     64  1
         private static final Filter<Evidence> MEDIUM_CONFIDENCE = new Filter<Evidence>() {
     65  
             public boolean passes(Evidence evidence) {
     66  419
                 return evidence.getConfidence() == Evidence.Confidence.MEDIUM;
     67  
             }
     68  
         };
     69  
         /**
     70  
          * Used to iterate over low confidence evidence contained in the collection.
     71  
          */
     72  1
         private static final Filter<Evidence> LOW_CONFIDENCE = new Filter<Evidence>() {
     73  
             public boolean passes(Evidence evidence) {
     74  706
                 return evidence.getConfidence() == Evidence.Confidence.LOW;
     75  
             }
     76  
         };
     77  
         /**
     78  
          * Used to iterate over evidence that has was used (aka read) from the
     79  
          * collection.
     80  
          */
     81  1
         private static final Filter<Evidence> EVIDENCE_USED = new Filter<Evidence>() {
     82  
             public boolean passes(Evidence evidence) {
     83  9204
                 return evidence.isUsed();
     84  
             }
     85  
         };
     86  
     
     87  
         /**
     88  
          * Used to iterate over evidence of the specified confidence.
     89  
          *
     90  
          * @param confidence the confidence level for the evidence to be iterated
     91  
          * over.
     92  
          * @return Iterable<Evidence> an iterable collectoin of evidence
     93  
          */
     94  
         public final Iterable<Evidence> iterator(Evidence.Confidence confidence) {
     95  448
             if (confidence == Evidence.Confidence.HIGHEST) {
     96  109
                 return EvidenceCollection.HIGHEST_CONFIDENCE.filter(this.list);
     97  339
             } else if (confidence == Evidence.Confidence.HIGH) {
     98  109
                 return EvidenceCollection.HIGH_CONFIDENCE.filter(this.list);
     99  230
             } else if (confidence == Evidence.Confidence.MEDIUM) {
     100  99
                 return EvidenceCollection.MEDIUM_CONFIDENCE.filter(this.list);
     101  
             } else {
     102  131
                 return EvidenceCollection.LOW_CONFIDENCE.filter(this.list);
     103  
             }
     104  
         }
     105  
         /**
     106  
          * A collection of evidence.
     107  
          */
     108  
         private final Set<Evidence> list;
     109  
         /**
     110  
          * A collection of strings used to adjust Lucene's term weighting.
     111  
          */
     112  
         private final Set<String> weightedStrings;
     113  
     
     114  
         /**
     115  
          * Creates a new EvidenceCollection.
     116  
          */
     117  167
         public EvidenceCollection() {
     118  167
             list = new TreeSet<Evidence>();
     119  167
             weightedStrings = new HashSet<String>();
     120  167
         }
     121  
     
     122  
         /**
     123  
          * Adds evidence to the collection.
     124  
          *
     125  
          * @param e Evidence.
     126  
          */
     127  
         public void addEvidence(Evidence e) {
     128  70895
             list.add(e);
     129  70895
         }
     130  
     
     131  
         /**
     132  
          * Creates an Evidence object from the parameters and adds the resulting
     133  
          * object to the collection.
     134  
          *
     135  
          * @param source the source of the Evidence.
     136  
          * @param name the name of the Evidence.
     137  
          * @param value the value of the Evidence.
     138  
          * @param confidence the confidence of the Evidence.
     139  
          */
     140  
         public void addEvidence(String source, String name, String value, Evidence.Confidence confidence) {
     141  70835
             final Evidence e = new Evidence(source, name, value, confidence);
     142  70835
             addEvidence(e);
     143  70835
         }
     144  
     
     145  
         /**
     146  
          * Adds term to the weighting collection. The terms added here are used
     147  
          * later to boost the score of other terms. This is a way of combining
     148  
          * evidence from multiple sources to boost the confidence of the given
     149  
          * evidence.
     150  
          *
     151  
          * Example: The term 'Apache' is found in the manifest of a JAR and is added
     152  
          * to the Collection. When we parse the package names within the JAR file we
     153  
          * may add these package names to the "weighted" strings collection to boost
     154  
          * the score in the Lucene query. That way when we construct the Lucene
     155  
          * query we find the term Apache in the collection AND in the weighted
     156  
          * strings; as such, we will boost the confidence of the term Apache.
     157  
          *
     158  
          * @param str to add to the weighting collection.
     159  
          */
     160  
         public void addWeighting(String str) {
     161  57
             weightedStrings.add(str);
     162  57
         }
     163  
     
     164  
         /**
     165  
          * Returns a set of Weightings - a list of terms that are believed to be of
     166  
          * higher confidence when also found in another location.
     167  
          *
     168  
          * @return Set<String>
     169  
          */
     170  
         public Set<String> getWeighting() {
     171  145
             return weightedStrings;
     172  
         }
     173  
     
     174  
         /**
     175  
          * Returns the set of evidence.
     176  
          *
     177  
          * @return the set of evidence.
     178  
          */
     179  
         public Set<Evidence> getEvidence() {
     180  30
             return list;
     181  
         }
     182  
     
     183  
         /**
     184  
          * Returns the set of evidence from a given source.
     185  
          *
     186  
          * @param source the source of the evidence
     187  
          * @return the set of evidence.
     188  
          */
     189  
         public Set<Evidence> getEvidence(String source) {
     190  0
             if (source == null) {
     191  0
                 return null;
     192  
             }
     193  0
             final Set<Evidence> ret = new HashSet<Evidence>();
     194  0
             for (Evidence e : list) {
     195  0
                 if (source.equals(e.getSource())) {
     196  0
                     ret.add(e);
     197  
                 }
     198  
             }
     199  0
             return ret;
     200  
         }
     201  
     
     202  
         /**
     203  
          * Returns the set of evidence from a given source and name.
     204  
          *
     205  
          * @param source the source of the evidence
     206  
          * @param name the name of the evidence to return
     207  
          * @return the set of evidence.
     208  
          */
     209  
         public Set<Evidence> getEvidence(String source, String name) {
     210  0
             if (source == null || name == null) {
     211  0
                 return null;
     212  
             }
     213  0
             final Set<Evidence> ret = new HashSet<Evidence>();
     214  0
             for (Evidence e : list) {
     215  0
                 if (source.equals(e.getSource()) && name.equals(e.getName())) {
     216  0
                     ret.add(e);
     217  
                 }
     218  
             }
     219  0
             return ret;
     220  
         }
     221  
     
     222  
         /**
     223  
          * Implements the iterator interface for the Evidence Collection.
     224  
          *
     225  
          * @return an Iterator<Evidence>.
     226  
          */
     227  
         public Iterator<Evidence> iterator() {
     228  1455
             return list.iterator();
     229  
         }
     230  
     
     231  
         /**
     232  
          * Used to determine if a given string was used (aka read).
     233  
          *
     234  
          * @param text the string to search for.
     235  
          * @return whether or not the string was used.
     236  
          */
     237  
         public boolean containsUsedString(String text) {
     238  1434
             if (text == null) {
     239  0
                 return false;
     240  
             }
     241  1434
             final String textToTest = text.toLowerCase();
     242  
     
     243  1434
             for (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(this)) {
     244  
                 //TODO consider changing the regex to only compare alpha-numeric (i.e. strip everything else)
     245  6157
                 final String value = urlCorrection(e.getValue().toLowerCase()).replaceAll("[\\s_-]", "");
     246  6157
                 if (value.contains(textToTest)) {
     247  506
                     return true;
     248  
                 }
     249  5651
             }
     250  928
             return false;
     251  
         }
     252  
     
     253  
         /**
     254  
          * Used to determine if a given version was used (aka read) from the
     255  
          * EvidenceCollection.
     256  
          *
     257  
          * @param version the version to search for within the collected evidence.
     258  
          * @return whether or not the string was used.
     259  
          */
     260  
         public boolean containsUsedVersion(DependencyVersion version) {
     261  0
             if (version == null) {
     262  0
                 return false;
     263  
             }
     264  
     
     265  0
             for (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(this)) {
     266  0
                 final DependencyVersion value = DependencyVersionUtil.parseVersion(e.getValue());
     267  0
                 if (value != null && value.matchesAtLeastThreeLevels(version)) {
     268  0
                     return true;
     269  
                 }
     270  0
             }
     271  0
             return false;
     272  
         }
     273  
     
     274  
         /**
     275  
          * Returns whether or not the collection contains evidence of a specified
     276  
          * Confidence.
     277  
          *
     278  
          * @param confidence A Confidence value.
     279  
          * @return boolean.
     280  
          */
     281  
         public boolean contains(Evidence.Confidence confidence) {
     282  152
             for (Evidence e : list) {
     283  545
                 if (e.getConfidence().equals(confidence)) {
     284  125
                     return true;
     285  
                 }
     286  
             }
     287  27
             return false;
     288  
         }
     289  
     
     290  
         /**
     291  
          * Merges multiple EvidenceCollections together, only merging evidence that
     292  
          * was used, into a new EvidenceCollection.
     293  
          *
     294  
          * @param ec One or more EvidenceCollections.
     295  
          * @return a new EvidenceCollection containing the used evidence.
     296  
          */
     297  
         public static EvidenceCollection mergeUsed(EvidenceCollection... ec) {
     298  4
             final EvidenceCollection ret = new EvidenceCollection();
     299  16
             for (EvidenceCollection col : ec) {
     300  12
                 for (Evidence e : col.list) {
     301  59
                     if (e.isUsed()) {
     302  58
                         ret.addEvidence(e);
     303  
                     }
     304  
                 }
     305  
             }
     306  4
             return ret;
     307  
         }
     308  
     
     309  
         /**
     310  
          * Merges multiple EvidenceCollections together.
     311  
          *
     312  
          * @param ec One or more EvidenceCollections.
     313  
          * @return a new EvidenceCollection.
     314  
          */
     315  
         public static EvidenceCollection merge(EvidenceCollection... ec) {
     316  1
             final EvidenceCollection ret = new EvidenceCollection();
     317  4
             for (EvidenceCollection col : ec) {
     318  3
                 ret.list.addAll(col.list);
     319  3
                 ret.weightedStrings.addAll(col.weightedStrings);
     320  
             }
     321  1
             return ret;
     322  
         }
     323  
     
     324  
         /**
     325  
          * Returns a string of evidence 'values'.
     326  
          *
     327  
          * @return a string containing the evidence.
     328  
          */
     329  
         @Override
     330  
         public String toString() {
     331  3
             final StringBuilder sb = new StringBuilder();
     332  3
             for (Evidence e : this.list) {
     333  11
                 sb.append(e.getValue()).append(' ');
     334  
             }
     335  3
             return sb.toString();
     336  
         }
     337  
     
     338  
         /**
     339  
          * Returns the number of elements in the EvidenceCollection.
     340  
          *
     341  
          * @return the number of elements in the collection.
     342  
          */
     343  
         public int size() {
     344  165
             return list.size();
     345  
         }
     346  
     
     347  
         /**
     348  
          * <p>Takes a string that may contain a fully qualified domain and it will
     349  
          * return the string having removed the query string, the protocol, the
     350  
          * sub-domain of 'www', and the file extension of the path.</p>
     351  
          * <p>This is useful for checking if the evidence contains a specific
     352  
          * string. The presence of the protocol, file extension, etc. may produce
     353  
          * false positives.
     354  
          *
     355  
          * <p>Example, given the following input:</p>
     356  
          * <code>'Please visit https://www.somedomain.com/path1/path2/file.php?id=439'</code>
     357  
          * <p>The function would return:</p>
     358  
          * <code>'Please visit somedomain path1 path2 file'</code>
     359  
          *
     360  
          * @param value the value that may contain a url
     361  
          * @return the modified string
     362  
          */
     363  
         private String urlCorrection(String value) {
     364  6157
             if (value == null || !UrlStringUtils.containsUrl(value)) {
     365  6024
                 return value;
     366  
             }
     367  133
             final StringBuilder sb = new StringBuilder(value.length());
     368  133
             final String[] parts = value.split("\\s");
     369  266
             for (String part : parts) {
     370  133
                 if (UrlStringUtils.isUrl(part)) {
     371  
                     try {
     372  133
                         final List<String> data = UrlStringUtils.extractImportantUrlData(part);
     373  133
                         sb.append(' ').append(StringUtils.join(data, ' '));
     374  0
                     } catch (MalformedURLException ex) {
     375  0
                         Logger.getLogger(EvidenceCollection.class.getName()).log(Level.INFO, "error parsing " + part, ex);
     376  0
                         sb.append(' ').append(part);
     377  133
                     }
     378  
                 } else {
     379  0
                     sb.append(' ').append(part);
     380  
                 }
     381  
             }
     382  133
             return sb.toString().trim();
     383  
         }
     384  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html new file mode 100644 index 000000000..5000de366 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html @@ -0,0 +1,365 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.Identifier
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Identifier
    41%
    16/39
    13%
    3/22
    2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     /**
     22  
      *
     23  
      * @author Jeremy Long (jeremy.long@owasp.org)
     24  
      */
     25  131
     public class Identifier implements Comparable<Identifier> {
     26  
     
     27  
         /**
     28  
          * Constructs a new Identifier with the specified data.
     29  
          *
     30  
          * @param type the identifier type.
     31  
          * @param value the identifier value.
     32  
          * @param url the identifier url.
     33  
          */
     34  251
         public Identifier(String type, String value, String url) {
     35  251
             this.type = type;
     36  251
             this.value = value;
     37  251
             this.url = url;
     38  251
         }
     39  
     
     40  
         /**
     41  
          * Constructs a new Identifier with the specified data.
     42  
          *
     43  
          * @param type the identifier type.
     44  
          * @param value the identifier value.
     45  
          * @param url the identifier url.
     46  
          * @param description the description of the identifier.
     47  
          */
     48  
         public Identifier(String type, String value, String url, String description) {
     49  0
             this(type, value, url);
     50  0
             this.description = description;
     51  0
         }
     52  
         /**
     53  
          * The value of the identifier
     54  
          */
     55  
         private String value;
     56  
     
     57  
         /**
     58  
          * Get the value of value.
     59  
          *
     60  
          * @return the value of value
     61  
          */
     62  
         public String getValue() {
     63  384
             return value;
     64  
         }
     65  
     
     66  
         /**
     67  
          * Set the value of value.
     68  
          *
     69  
          * @param value new value of value
     70  
          */
     71  
         public void setValue(String value) {
     72  0
             this.value = value;
     73  0
         }
     74  
         /**
     75  
          * The url for the identifier.
     76  
          */
     77  
         private String url;
     78  
     
     79  
         /**
     80  
          * Get the value of url.
     81  
          *
     82  
          * @return the value of url
     83  
          */
     84  
         public String getUrl() {
     85  9
             return url;
     86  
         }
     87  
     
     88  
         /**
     89  
          * Set the value of url.
     90  
          *
     91  
          * @param url new value of url
     92  
          */
     93  
         public void setUrl(String url) {
     94  0
             this.url = url;
     95  0
         }
     96  
         /**
     97  
          * The type of the identifier.
     98  
          */
     99  
         private String type;
     100  
     
     101  
         /**
     102  
          * Get the value of type.
     103  
          *
     104  
          * @return the value of type
     105  
          */
     106  
         public String getType() {
     107  90
             return type;
     108  
         }
     109  
     
     110  
         /**
     111  
          * <p>Set the value of type.</p><p>Example would be "CPE".</p>
     112  
          *
     113  
          * @param type new value of type
     114  
          */
     115  
         public void setType(String type) {
     116  0
             this.type = type;
     117  0
         }
     118  
         /**
     119  
          * A description of the identifier.
     120  
          */
     121  
         private String description;
     122  
     
     123  
         /**
     124  
          * Get the value of description.
     125  
          *
     126  
          * @return the value of description
     127  
          */
     128  
         public String getDescription() {
     129  5
             return description;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Set the value of description.
     134  
          *
     135  
          * @param description new value of description
     136  
          */
     137  
         public void setDescription(String description) {
     138  0
             this.description = description;
     139  0
         }
     140  
     
     141  
         @Override
     142  
         public boolean equals(Object obj) {
     143  0
             if (obj == null) {
     144  0
                 return false;
     145  
             }
     146  0
             if (getClass() != obj.getClass()) {
     147  0
                 return false;
     148  
             }
     149  0
             final Identifier other = (Identifier) obj;
     150  0
             if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
     151  0
                 return false;
     152  
             }
     153  0
             if ((this.type == null) ? (other.type != null) : !this.type.equals(other.type)) {
     154  0
                 return false;
     155  
             }
     156  0
             return true;
     157  
         }
     158  
     
     159  
         @Override
     160  
         public int hashCode() {
     161  59
             int hash = 5;
     162  59
             hash = 53 * hash + (this.value != null ? this.value.hashCode() : 0);
     163  59
             hash = 53 * hash + (this.type != null ? this.type.hashCode() : 0);
     164  59
             return hash;
     165  
         }
     166  
     
     167  
         /**
     168  
          * Standard implementation of toString; displays identifier value and type.
     169  
          *
     170  
          * @return a String representation of the object
     171  
          */
     172  
         @Override
     173  
         public String toString() {
     174  0
             return "Identifier{" + "value=" + value + ", type=" + type + '}';
     175  
         }
     176  
     
     177  
         /**
     178  
          * Implementation of the comparator interface. This compares the value of
     179  
          * the identifier only.
     180  
          *
     181  
          * @param o the object being compared
     182  
          * @return an integer indicating the ordering
     183  
          */
     184  
         public int compareTo(Identifier o) {
     185  214
             if (o == null) {
     186  0
                 return -1;
     187  
             }
     188  214
             return this.value.compareTo(o.value);
     189  
         }
     190  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html new file mode 100644 index 000000000..47c632f62 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html @@ -0,0 +1,296 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.Reference
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Reference
    41%
    14/34
    8%
    3/34
    3.444
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     import java.io.Serializable;
     22  
     
     23  
     /**
     24  
      * An external reference for a vulnerability. This contains a name, URL, and a
     25  
      * source.
     26  
      *
     27  
      * @author Jeremy Long (jeremy.long@owasp.org)
     28  
      */
     29  1608
     public class Reference implements Serializable, Comparable<Reference> {
     30  
     
     31  
         /**
     32  
          * the serial version uid.
     33  
          */
     34  
         private static final long serialVersionUID = -3444464824563008021L;
     35  
         /**
     36  
          * The name of the reference.
     37  
          */
     38  
         private String name;
     39  
     
     40  
         /**
     41  
          * Get the value of name.
     42  
          *
     43  
          * @return the value of name
     44  
          */
     45  
         public String getName() {
     46  217
             return name;
     47  
         }
     48  
     
     49  
         /**
     50  
          * Set the value of name.
     51  
          *
     52  
          * @param name new value of name
     53  
          */
     54  
         public void setName(String name) {
     55  506
             this.name = name;
     56  506
         }
     57  
         /**
     58  
          * the url for the reference.
     59  
          */
     60  
         private String url;
     61  
     
     62  
         /**
     63  
          * Get the value of url.
     64  
          *
     65  
          * @return the value of url
     66  
          */
     67  
         public String getUrl() {
     68  217
             return url;
     69  
         }
     70  
     
     71  
         /**
     72  
          * Set the value of url.
     73  
          *
     74  
          * @param url new value of url
     75  
          */
     76  
         public void setUrl(String url) {
     77  506
             this.url = url;
     78  506
         }
     79  
         /**
     80  
          * the source of the reference.
     81  
          */
     82  
         private String source;
     83  
     
     84  
         /**
     85  
          * Get the value of source.
     86  
          *
     87  
          * @return the value of source
     88  
          */
     89  
         public String getSource() {
     90  217
             return source;
     91  
         }
     92  
     
     93  
         /**
     94  
          * Set the value of source.
     95  
          *
     96  
          * @param source new value of source
     97  
          */
     98  
         public void setSource(String source) {
     99  506
             this.source = source;
     100  506
         }
     101  
     
     102  
         @Override
     103  
         public boolean equals(Object obj) {
     104  0
             if (obj == null) {
     105  0
                 return false;
     106  
             }
     107  0
             if (getClass() != obj.getClass()) {
     108  0
                 return false;
     109  
             }
     110  0
             final Reference other = (Reference) obj;
     111  0
             if ((this.name == null) ? (other.name != null) : !this.name.equals(other.name)) {
     112  0
                 return false;
     113  
             }
     114  0
             if ((this.url == null) ? (other.url != null) : !this.url.equals(other.url)) {
     115  0
                 return false;
     116  
             }
     117  0
             if ((this.source == null) ? (other.source != null) : !this.source.equals(other.source)) {
     118  0
                 return false;
     119  
             }
     120  0
             return true;
     121  
         }
     122  
     
     123  
         @Override
     124  
         public int hashCode() {
     125  0
             int hash = 5;
     126  0
             hash = 67 * hash + (this.name != null ? this.name.hashCode() : 0);
     127  0
             hash = 67 * hash + (this.url != null ? this.url.hashCode() : 0);
     128  0
             hash = 67 * hash + (this.source != null ? this.source.hashCode() : 0);
     129  0
             return hash;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Implementation of the comparable interface.
     134  
          *
     135  
          * @param o the Reference being compared
     136  
          * @return an integer indicating the ordering of the two objects
     137  
          */
     138  
         public int compareTo(Reference o) {
     139  1102
             if (source.equals(o.source)) {
     140  176
                 if (name.equals(o.name)) {
     141  0
                     if (url.equals(o.url)) {
     142  0
                         return 0; //they are equal
     143  
                     } else {
     144  0
                         return url.compareTo(o.url);
     145  
                     }
     146  
                 } else {
     147  176
                     return name.compareTo(o.name);
     148  
                 }
     149  
             } else {
     150  926
                 return source.compareTo(o.source);
     151  
             }
     152  
         }
     153  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html new file mode 100644 index 000000000..81c7f3bbf --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html @@ -0,0 +1,752 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.Vulnerability
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Vulnerability
    70%
    48/68
    25%
    4/16
    1.312
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     import java.io.Serializable;
     22  
     import java.util.Set;
     23  
     import java.util.SortedSet;
     24  
     import java.util.TreeSet;
     25  
     
     26  
     /**
     27  
      * Contains the information about a vulnerability.
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  89
     public class Vulnerability implements Serializable, Comparable<Vulnerability> {
     32  
     
     33  
         /**
     34  
          * The serial version uid.
     35  
          */
     36  
         private static final long serialVersionUID = 307319490326651052L;
     37  
         /**
     38  
          * The name of the vulnerability.
     39  
          */
     40  
         private String name;
     41  
     
     42  
         /**
     43  
          * Get the value of name.
     44  
          *
     45  
          * @return the value of name
     46  
          */
     47  
         public String getName() {
     48  232
             return name;
     49  
         }
     50  
     
     51  
         /**
     52  
          * Set the value of name.
     53  
          *
     54  
          * @param name new value of name
     55  
          */
     56  
         public void setName(String name) {
     57  89
             this.name = name;
     58  89
         }
     59  
         /**
     60  
          * the description of the vulnerability.
     61  
          */
     62  
         private String description;
     63  
     
     64  
         /**
     65  
          * Get the value of description.
     66  
          *
     67  
          * @return the value of description
     68  
          */
     69  
         public String getDescription() {
     70  31
             return description;
     71  
         }
     72  
     
     73  
         /**
     74  
          * Set the value of description.
     75  
          *
     76  
          * @param description new value of description
     77  
          */
     78  
         public void setDescription(String description) {
     79  88
             this.description = description;
     80  88
         }
     81  
         /**
     82  
          * References for this vulnerability.
     83  
          */
     84  89
         private SortedSet<Reference> references = new TreeSet<Reference>();
     85  
     
     86  
         /**
     87  
          * Get the value of references.
     88  
          *
     89  
          * @return the value of references
     90  
          */
     91  
         public Set<Reference> getReferences() {
     92  31
             return references;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Set the value of references.
     97  
          *
     98  
          * @param references new value of references
     99  
          */
     100  
         public void setReferences(SortedSet<Reference> references) {
     101  0
             this.references = references;
     102  0
         }
     103  
     
     104  
         /**
     105  
          * Adds a reference to the references collection.
     106  
          *
     107  
          * @param ref a reference for the vulnerability
     108  
          */
     109  
         public void addReference(Reference ref) {
     110  90
             this.references.add(ref);
     111  90
         }
     112  
     
     113  
         /**
     114  
          * Adds a reference.
     115  
          *
     116  
          * @param referenceSource the source of the reference
     117  
          * @param referenceName the referenceName of the reference
     118  
          * @param referenceUrl the url of the reference
     119  
          */
     120  
         public void addReference(String referenceSource, String referenceName, String referenceUrl) {
     121  416
             final Reference ref = new Reference();
     122  416
             ref.setSource(referenceSource);
     123  416
             ref.setName(referenceName);
     124  416
             ref.setUrl(referenceUrl);
     125  416
             this.references.add(ref);
     126  416
         }
     127  
         /**
     128  
          * A set of vulnerable software.
     129  
          */
     130  89
         private SortedSet<VulnerableSoftware> vulnerableSoftware = new TreeSet<VulnerableSoftware>();
     131  
     
     132  
         /**
     133  
          * Get the value of vulnerableSoftware.
     134  
          *
     135  
          * @return the value of vulnerableSoftware
     136  
          */
     137  
         public Set<VulnerableSoftware> getVulnerableSoftware() {
     138  31
             return vulnerableSoftware;
     139  
         }
     140  
     
     141  
         /**
     142  
          * Set the value of vulnerableSoftware.
     143  
          *
     144  
          * @param vulnerableSoftware new value of vulnerableSoftware
     145  
          */
     146  
         public void setVulnerableSoftware(SortedSet<VulnerableSoftware> vulnerableSoftware) {
     147  0
             this.vulnerableSoftware = vulnerableSoftware;
     148  0
         }
     149  
     
     150  
         /**
     151  
          * Adds an entry for vulnerable software.
     152  
          *
     153  
          * @param cpe string representation of a CPE entry
     154  
          * @return if the add succeeded
     155  
          */
     156  
         public boolean addVulnerableSoftware(String cpe) {
     157  3276
             return addVulnerableSoftware(cpe, null);
     158  
         }
     159  
     
     160  
         /**
     161  
          * Adds an entry for vulnerable software.
     162  
          *
     163  
          * @param cpe string representation of a cpe
     164  
          * @param previousVersion the previous version (previousVersion - cpe would
     165  
          * be considered vulnerable)
     166  
          * @return if the add succeeded
     167  
          */
     168  
         public boolean addVulnerableSoftware(String cpe, String previousVersion) {
     169  3318
             final VulnerableSoftware vs = new VulnerableSoftware();
     170  3318
             vs.setCpe(cpe);
     171  3318
             if (previousVersion != null) {
     172  42
                 vs.setPreviousVersion(previousVersion);
     173  
             }
     174  3318
             return updateVulnerableSoftware(vs);
     175  
         }
     176  
     
     177  
         /**
     178  
          * Adds or updates a vulnerable software entry.
     179  
          *
     180  
          * @param vulnSoftware the vulnerable software
     181  
          * @return if the update succeeded
     182  
          */
     183  
         public boolean updateVulnerableSoftware(VulnerableSoftware vulnSoftware) {
     184  3318
             if (vulnerableSoftware.contains(vulnSoftware)) {
     185  0
                 vulnerableSoftware.remove(vulnSoftware);
     186  
             }
     187  3318
             return vulnerableSoftware.add(vulnSoftware);
     188  
         }
     189  
         /**
     190  
          * The CWE for the vulnerability.
     191  
          */
     192  
         private String cwe;
     193  
     
     194  
         /**
     195  
          * Get the value of cwe.
     196  
          *
     197  
          * @return the value of cwe
     198  
          */
     199  
         public String getCwe() {
     200  62
             return cwe;
     201  
         }
     202  
     
     203  
         /**
     204  
          * Set the value of cwe.
     205  
          *
     206  
          * @param cwe new value of cwe
     207  
          */
     208  
         public void setCwe(String cwe) {
     209  81
             this.cwe = cwe;
     210  81
         }
     211  
         /**
     212  
          * CVSS Score.
     213  
          */
     214  
         private float cvssScore;
     215  
     
     216  
         /**
     217  
          * Get the value of cvssScore.
     218  
          *
     219  
          * @return the value of cvssScore
     220  
          */
     221  
         public float getCvssScore() {
     222  95
             return cvssScore;
     223  
         }
     224  
     
     225  
         /**
     226  
          * Set the value of cvssScore.
     227  
          *
     228  
          * @param cvssScore new value of cvssScore
     229  
          */
     230  
         public void setCvssScore(float cvssScore) {
     231  88
             this.cvssScore = cvssScore;
     232  88
         }
     233  
         /**
     234  
          * CVSS Access Vector.
     235  
          */
     236  
         private String cvssAccessVector;
     237  
     
     238  
         /**
     239  
          * Get the value of cvssAccessVector.
     240  
          *
     241  
          * @return the value of cvssAccessVector
     242  
          */
     243  
         public String getCvssAccessVector() {
     244  0
             return cvssAccessVector;
     245  
         }
     246  
     
     247  
         /**
     248  
          * Set the value of cvssAccessVector.
     249  
          *
     250  
          * @param cvssAccessVector new value of cvssAccessVector
     251  
          */
     252  
         public void setCvssAccessVector(String cvssAccessVector) {
     253  87
             this.cvssAccessVector = cvssAccessVector;
     254  87
         }
     255  
         /**
     256  
          * CVSS Access Complexity.
     257  
          */
     258  
         private String cvssAccessComplexity;
     259  
     
     260  
         /**
     261  
          * Get the value of cvssAccessComplexity.
     262  
          *
     263  
          * @return the value of cvssAccessComplexity
     264  
          */
     265  
         public String getCvssAccessComplexity() {
     266  0
             return cvssAccessComplexity;
     267  
         }
     268  
     
     269  
         /**
     270  
          * Set the value of cvssAccessComplexity.
     271  
          *
     272  
          * @param cvssAccessComplexity new value of cvssAccessComplexity
     273  
          */
     274  
         public void setCvssAccessComplexity(String cvssAccessComplexity) {
     275  87
             this.cvssAccessComplexity = cvssAccessComplexity;
     276  87
         }
     277  
         /**
     278  
          * CVSS Authentication.
     279  
          */
     280  
         private String cvssAuthentication;
     281  
     
     282  
         /**
     283  
          * Get the value of cvssAuthentication.
     284  
          *
     285  
          * @return the value of cvssAuthentication
     286  
          */
     287  
         public String getCvssAuthentication() {
     288  0
             return cvssAuthentication;
     289  
         }
     290  
     
     291  
         /**
     292  
          * Set the value of cvssAuthentication.
     293  
          *
     294  
          * @param cvssAuthentication new value of cvssAuthentication
     295  
          */
     296  
         public void setCvssAuthentication(String cvssAuthentication) {
     297  87
             this.cvssAuthentication = cvssAuthentication;
     298  87
         }
     299  
         /**
     300  
          * CVSS Confidentiality Impact.
     301  
          */
     302  
         private String cvssConfidentialityImpact;
     303  
     
     304  
         /**
     305  
          * Get the value of cvssConfidentialityImpact.
     306  
          *
     307  
          * @return the value of cvssConfidentialityImpact
     308  
          */
     309  
         public String getCvssConfidentialityImpact() {
     310  0
             return cvssConfidentialityImpact;
     311  
         }
     312  
     
     313  
         /**
     314  
          * Set the value of cvssConfidentialityImpact.
     315  
          *
     316  
          * @param cvssConfidentialityImpact new value of cvssConfidentialityImpact
     317  
          */
     318  
         public void setCvssConfidentialityImpact(String cvssConfidentialityImpact) {
     319  87
             this.cvssConfidentialityImpact = cvssConfidentialityImpact;
     320  87
         }
     321  
         /**
     322  
          * CVSS Integrity Impact.
     323  
          */
     324  
         private String cvssIntegrityImpact;
     325  
     
     326  
         /**
     327  
          * Get the value of cvssIntegrityImpact.
     328  
          *
     329  
          * @return the value of cvssIntegrityImpact
     330  
          */
     331  
         public String getCvssIntegrityImpact() {
     332  0
             return cvssIntegrityImpact;
     333  
         }
     334  
     
     335  
         /**
     336  
          * Set the value of cvssIntegrityImpact.
     337  
          *
     338  
          * @param cvssIntegrityImpact new value of cvssIntegrityImpact
     339  
          */
     340  
         public void setCvssIntegrityImpact(String cvssIntegrityImpact) {
     341  87
             this.cvssIntegrityImpact = cvssIntegrityImpact;
     342  87
         }
     343  
         /**
     344  
          * CVSS Availability Impact.
     345  
          */
     346  
         private String cvssAvailabilityImpact;
     347  
     
     348  
         /**
     349  
          * Get the value of cvssAvailabilityImpact.
     350  
          *
     351  
          * @return the value of cvssAvailabilityImpact
     352  
          */
     353  
         public String getCvssAvailabilityImpact() {
     354  0
             return cvssAvailabilityImpact;
     355  
         }
     356  
     
     357  
         /**
     358  
          * Set the value of cvssAvailabilityImpact.
     359  
          *
     360  
          * @param cvssAvailabilityImpact new value of cvssAvailabilityImpact
     361  
          */
     362  
         public void setCvssAvailabilityImpact(String cvssAvailabilityImpact) {
     363  87
             this.cvssAvailabilityImpact = cvssAvailabilityImpact;
     364  87
         }
     365  
     
     366  
         @Override
     367  
         public boolean equals(Object obj) {
     368  0
             if (obj == null) {
     369  0
                 return false;
     370  
             }
     371  0
             if (getClass() != obj.getClass()) {
     372  0
                 return false;
     373  
             }
     374  0
             final Vulnerability other = (Vulnerability) obj;
     375  0
             if ((this.name == null) ? (other.name != null) : !this.name.equals(other.name)) {
     376  0
                 return false;
     377  
             }
     378  0
             return true;
     379  
         }
     380  
     
     381  
         @Override
     382  
         public int hashCode() {
     383  41
             int hash = 5;
     384  41
             hash = 41 * hash + (this.name != null ? this.name.hashCode() : 0);
     385  41
             return hash;
     386  
         }
     387  
     
     388  
         /**
     389  
          * Compares two vulnerabilities.
     390  
          *
     391  
          * @param v a vulnerability to be compared
     392  
          * @return a negative integer, zero, or a positive integer as this object is
     393  
          * less than, equal to, or greater than the specified vulnerability
     394  
          */
     395  
         public int compareTo(Vulnerability v) {
     396  0
             return v.getName().compareTo(this.getName());
     397  
         }
     398  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html new file mode 100644 index 000000000..8b6599a1f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html @@ -0,0 +1,114 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.VulnerabilityComparator
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VulnerabilityComparator
    100%
    2/2
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     import java.io.Serializable;
     22  
     import java.util.Comparator;
     23  
     
     24  
     /**
     25  
      * Comparator for Vulnerability objects.
     26  
      *
     27  
      * @author Jeremy Long (jeremy.long@owasp.org)
     28  
      */
     29  153
     public class VulnerabilityComparator implements Comparator<Vulnerability>, Serializable {
     30  
     
     31  
         /**
     32  
          * The serial version UID.
     33  
          */
     34  
         private static final long serialVersionUID = 1L;
     35  
     
     36  
         /**
     37  
          * Implements the comparison of vulnerabilities.
     38  
          *
     39  
          * @param o1 a vulnerability
     40  
          * @param o2 a second vulnerability
     41  
          * @return the comparison
     42  
          */
     43  
         public int compare(Vulnerability o1, Vulnerability o2) {
     44  99
             return o2.getName().compareTo(o1.getName());
     45  
         }
     46  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html new file mode 100644 index 000000000..1a2bcbe49 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html @@ -0,0 +1,599 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.dependency.VulnerableSoftware
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VulnerableSoftware
    76%
    70/91
    81%
    60/74
    3.278
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.dependency;
     20  
     
     21  
     import java.io.Serializable;
     22  
     import java.io.UnsupportedEncodingException;
     23  
     import java.net.URLDecoder;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.Logger;
     26  
     import org.owasp.dependencycheck.data.cpe.IndexEntry;
     27  
     
     28  
     /**
     29  
      * A record containing information about vulnerable software. This is referenced
     30  
      * from a vulnerability.
     31  
      *
     32  
      * @author Jeremy Long (jeremy.long@owasp.org)
     33  
      */
     34  62226
     public class VulnerableSoftware extends IndexEntry implements Serializable, Comparable<VulnerableSoftware> {
     35  
     
     36  
         /**
     37  
          * The serial version UID.
     38  
          */
     39  
         private static final long serialVersionUID = 307319490326651052L;
     40  
     
     41  
         /**
     42  
          * Parse a CPE entry from the cpe string representation.
     43  
          *
     44  
          * @param cpe a cpe entry (e.g. cpe:/a:vendor:software:version)
     45  
          */
     46  
         public void setCpe(String cpe) {
     47  
             try {
     48  7714
                 parseName(cpe);
     49  0
             } catch (UnsupportedEncodingException ex) {
     50  0
                 final String msg = String.format("Character encoding is unsupported for CPE '%s'.", cpe);
     51  0
                 Logger.getLogger(VulnerableSoftware.class.getName()).log(Level.WARNING, msg);
     52  0
                 Logger.getLogger(VulnerableSoftware.class.getName()).log(Level.FINE, null, ex);
     53  0
                 setName(cpe);
     54  7714
             }
     55  7714
         }
     56  
     
     57  
         /**
     58  
          * <p>Parses a name attribute value, from the cpe.xml, into its
     59  
          * corresponding parts: vendor, product, version, revision.</p>
     60  
          * <p>Example:</p>
     61  
          * <code>&nbsp;&nbsp;&nbsp;cpe:/a:apache:struts:1.1:rc2</code>
     62  
          *
     63  
          * <p>Results in:</p> <ul> <li>Vendor: apache</li> <li>Product: struts</li>
     64  
          * <li>Version: 1.1</li> <li>Revision: rc2</li> </ul>
     65  
          *
     66  
          * @param cpeName the cpe name
     67  
          * @throws UnsupportedEncodingException should never be thrown...
     68  
          */
     69  
         @Override
     70  
         public void parseName(String cpeName) throws UnsupportedEncodingException {
     71  11286
             this.name = cpeName;
     72  11286
             if (cpeName != null && cpeName.length() > 7) {
     73  11286
                 final String[] data = cpeName.substring(7).split(":");
     74  11286
                 if (data.length >= 1) {
     75  11286
                     this.setVendor(URLDecoder.decode(data[0].replace("+", "%2B"), "UTF-8")); //.replaceAll("[_-]", " ")
     76  11286
                     if (data.length >= 2) {
     77  11286
                         this.setProduct(URLDecoder.decode(data[1].replace("+", "%2B"), "UTF-8")); //.replaceAll("[_-]", " ")
     78  11286
                         if (data.length >= 3) {
     79  11258
                             version = URLDecoder.decode(data[2].replace("+", "%2B"), "UTF-8");
     80  11258
                             if (data.length >= 4) {
     81  2318
                                 revision = URLDecoder.decode(data[3].replace("+", "%2B"), "UTF-8");
     82  2318
                                 if (data.length >= 5) {
     83  1
                                     edition = URLDecoder.decode(data[4].replace("+", "%2B"), "UTF-8");
     84  
                                 }
     85  
                             }
     86  
                         }
     87  
                     }
     88  
                 }
     89  
             }
     90  11286
         }
     91  
         /**
     92  
          * If present, indicates that previous version are vulnerable.
     93  
          */
     94  
         private String previousVersion;
     95  
     
     96  
         /**
     97  
          * Indicates if previous versions of this software are vulnerable.
     98  
          *
     99  
          * @return if previous versions of this software are vulnerable
     100  
          */
     101  
         public boolean hasPreviousVersion() {
     102  1985
             return previousVersion != null;
     103  
         }
     104  
     
     105  
         /**
     106  
          * Get the value of previousVersion.
     107  
          *
     108  
          * @return the value of previousVersion
     109  
          */
     110  
         public String getPreviousVersion() {
     111  0
             return previousVersion;
     112  
         }
     113  
     
     114  
         /**
     115  
          * Set the value of previousVersion.
     116  
          *
     117  
          * @param previousVersion new value of previousVersion
     118  
          */
     119  
         public void setPreviousVersion(String previousVersion) {
     120  43
             this.previousVersion = previousVersion;
     121  43
         }
     122  
     
     123  
         /**
     124  
          * Standard equals implementation to compare this VulnerableSoftware to
     125  
          * another object.
     126  
          *
     127  
          * @param obj the object to compare
     128  
          * @return whether or not the objects are equal
     129  
          */
     130  
         @Override
     131  
         public boolean equals(Object obj) {
     132  1
             if (obj == null) {
     133  0
                 return false;
     134  
             }
     135  1
             if (getClass() != obj.getClass()) {
     136  0
                 return false;
     137  
             }
     138  1
             final VulnerableSoftware other = (VulnerableSoftware) obj;
     139  1
             if ((this.getName() == null) ? (other.getName() != null) : !this.getName().equals(other.getName())) {
     140  1
                 return false;
     141  
             }
     142  0
             return true;
     143  
         }
     144  
     
     145  
         /**
     146  
          * Standard implementation of hashCode.
     147  
          *
     148  
          * @return the hashCode for the object
     149  
          */
     150  
         @Override
     151  
         public int hashCode() {
     152  4391
             int hash = 7;
     153  4391
             hash = 83 * hash + (this.getName() != null ? this.getName().hashCode() : 0);
     154  4391
             return hash;
     155  
         }
     156  
     
     157  
         /**
     158  
          * Standard toString() implementation display the name and whether or not
     159  
          * previous versions are also affected.
     160  
          *
     161  
          * @return a string representation of the object
     162  
          */
     163  
         @Override
     164  
         public String toString() {
     165  0
             return "VulnerableSoftware{ name=" + name + ", previousVersion=" + previousVersion + '}';
     166  
         }
     167  
     
     168  
         /**
     169  
          * Implementation of the comparable interface.
     170  
          *
     171  
          * @param vs the VulnerableSoftware to compare
     172  
          * @return an integer indicating the ordering of the two objects
     173  
          */
     174  
         @Override
     175  
         public int compareTo(VulnerableSoftware vs) {
     176  50941
             int result = 0;
     177  50941
             final String[] left = this.getName().split(":");
     178  50941
             final String[] right = vs.getName().split(":");
     179  50941
             final int max = (left.length <= right.length) ? left.length : right.length;
     180  50941
             if (max > 0) {
     181  307860
                 for (int i = 0; result == 0 && i < max; i++) {
     182  256919
                     final String[] subLeft = left[i].split("\\.");
     183  256919
                     final String[] subRight = right[i].split("\\.");
     184  256919
                     final int subMax = (subLeft.length <= subRight.length) ? subLeft.length : subRight.length;
     185  256919
                     if (subMax > 0) {
     186  577349
                         for (int x = 0; result == 0 && x < subMax; x++) {
     187  320430
                             if (isPositiveInteger(subLeft[x]) && isPositiveInteger(subRight[x])) {
     188  111444
                                 final int iLeft = Integer.parseInt(subLeft[x]);
     189  111444
                                 final int iRight = Integer.parseInt(subRight[x]);
     190  111444
                                 if (iLeft != iRight) {
     191  43588
                                     if (iLeft > iRight) {
     192  40124
                                         result = 2;
     193  
                                     } else {
     194  3464
                                         result = -2;
     195  
                                     }
     196  
                                 }
     197  111444
                             } else {
     198  208986
                                 result = subLeft[x].compareToIgnoreCase(subRight[x]);
     199  
                             }
     200  
                         }
     201  256919
                         if (result == 0) {
     202  207915
                             if (subLeft.length > subRight.length) {
     203  1442
                                 result = 2;
     204  
                             }
     205  207915
                             if (subRight.length > subLeft.length) {
     206  7
                                 result = -2;
     207  
                             }
     208  
                         }
     209  
                     } else {
     210  0
                         result = left[i].compareToIgnoreCase(right[i]);
     211  
                     }
     212  
                 }
     213  50941
                 if (result == 0) {
     214  488
                     if (left.length > right.length) {
     215  474
                         result = 2;
     216  
                     }
     217  488
                     if (right.length > left.length) {
     218  14
                         result = -2;
     219  
                     }
     220  
                 }
     221  
             } else {
     222  0
                 result = this.getName().compareToIgnoreCase(vs.getName());
     223  
             }
     224  50941
             return result;
     225  
         }
     226  
     
     227  
         /**
     228  
          * Determines if the string passed in is a positive integer.
     229  
          *
     230  
          * @param str the string to test
     231  
          * @return true if the string only contains 0-9, otherwise false.
     232  
          */
     233  
         private static boolean isPositiveInteger(final String str) {
     234  432036
             if (str == null || str.isEmpty()) {
     235  12
                 return false;
     236  
             }
     237  672648
             for (int i = 0; i < str.length(); i++) {
     238  449598
                 final char c = str.charAt(i);
     239  449598
                 if (c < '0' || c > '9') {
     240  208974
                     return false;
     241  
                 }
     242  
             }
     243  223050
             return true;
     244  
         }
     245  
         /**
     246  
          * The name of the cpe.
     247  
          */
     248  
         private String name;
     249  
     
     250  
         /**
     251  
          * Get the value of name.
     252  
          *
     253  
          * @return the value of name
     254  
          */
     255  
         public String getName() {
     256  112990
             return name;
     257  
         }
     258  
     
     259  
         /**
     260  
          * Set the value of name.
     261  
          *
     262  
          * @param name new value of name
     263  
          */
     264  
         public void setName(String name) {
     265  0
             this.name = name;
     266  0
         }
     267  
         /**
     268  
          * The product version number.
     269  
          */
     270  
         private String version;
     271  
     
     272  
         /**
     273  
          * Get the value of version.
     274  
          *
     275  
          * @return the value of version
     276  
          */
     277  
         public String getVersion() {
     278  19722
             return version;
     279  
         }
     280  
     
     281  
         /**
     282  
          * Set the value of version.
     283  
          *
     284  
          * @param version new value of version
     285  
          */
     286  
         public void setVersion(String version) {
     287  0
             this.version = version;
     288  0
         }
     289  
         /**
     290  
          * The product revision version.
     291  
          */
     292  
         private String revision;
     293  
     
     294  
         /**
     295  
          * Get the value of revision.
     296  
          *
     297  
          * @return the value of revision
     298  
          */
     299  
         public String getRevision() {
     300  19232
             return revision;
     301  
         }
     302  
     
     303  
         /**
     304  
          * Set the value of revision.
     305  
          *
     306  
          * @param revision new value of revision
     307  
          */
     308  
         public void setRevision(String revision) {
     309  0
             this.revision = revision;
     310  0
         }
     311  
         /**
     312  
          * The product edition.
     313  
          */
     314  
         private String edition;
     315  
     
     316  
         /**
     317  
          * Get the value of edition.
     318  
          *
     319  
          * @return the value of edition
     320  
          */
     321  
         public String getEdition() {
     322  0
             return edition;
     323  
         }
     324  
     
     325  
         /**
     326  
          * Set the value of edition.
     327  
          *
     328  
          * @param edition new value of edition
     329  
          */
     330  
         public void setEdition(String edition) {
     331  0
             this.edition = edition;
     332  0
         }
     333  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html new file mode 100644 index 000000000..39690b519 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html @@ -0,0 +1,203 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    MavenNamespaceFilter
    100%
    13/13
    50%
    1/2
    1.25
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.jaxb.pom;
     20  
     
     21  
     import org.xml.sax.Attributes;
     22  
     import org.xml.sax.SAXException;
     23  
     import org.xml.sax.helpers.XMLFilterImpl;
     24  
     
     25  
     /**
     26  
      * This filter is used when parsing POM documents. Some POM documents do not
     27  
      * specify the xmlns="http://maven.apache.org/POM/4.0.0". This filter ensures
     28  
      * that the correct namespace is added so that both types of POMs can be read.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  7
     public class MavenNamespaceFilter extends XMLFilterImpl {
     33  
     
     34  
         /**
     35  
          * The namespace to add for Maven POMs.
     36  
          */
     37  
         private static final String NAMESPACE = "http://maven.apache.org/POM/4.0.0";
     38  
         /**
     39  
          * A flag indicating whether or not the namespace (prefix) has been added.
     40  
          */
     41  7
         private boolean namespaceAdded = false;
     42  
     
     43  
         /**
     44  
          * Called at the start of the document parsing.
     45  
          *
     46  
          * @throws SAXException thrown if there is a SAXException
     47  
          */
     48  
         @Override
     49  
         public void startDocument() throws SAXException {
     50  7
             super.startDocument();
     51  7
             startPrefixMapping("", NAMESPACE);
     52  7
         }
     53  
     
     54  
         /**
     55  
          * Called when an element is started.
     56  
          *
     57  
          * @param uri the uri
     58  
          * @param localName the localName
     59  
          * @param qName the qualified name
     60  
          * @param atts the attributes
     61  
          * @throws SAXException thrown if there is a SAXException
     62  
          */
     63  
         @Override
     64  
         public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
     65  1545
             super.startElement(NAMESPACE, localName, qName, atts);
     66  1545
         }
     67  
     
     68  
         /**
     69  
          * Indicatees the start of the document.
     70  
          *
     71  
          * @param uri the uri
     72  
          * @param localName the localName
     73  
          * @param qName the qualified name
     74  
          * @throws SAXException thrown if there is a SAXException
     75  
          */
     76  
         @Override
     77  
         public void endElement(String uri, String localName, String qName)
     78  
                 throws SAXException {
     79  1545
             super.endElement(NAMESPACE, localName, qName);
     80  1545
         }
     81  
     
     82  
         /**
     83  
          * Called when prefix mapping is started.
     84  
          *
     85  
          * @param prefix the prefix
     86  
          * @param url the url
     87  
          * @throws SAXException thrown if there is a SAXException
     88  
          */
     89  
         @Override
     90  
         public void startPrefixMapping(String prefix, String url) throws SAXException {
     91  7
             if (!this.namespaceAdded) {
     92  7
                 namespaceAdded = true;
     93  7
                 super.startPrefixMapping("", NAMESPACE);
     94  
             }
     95  7
         }
     96  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html new file mode 100644 index 000000000..329a2c10d --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html @@ -0,0 +1,398 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Activation
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Activation
    6%
    1/16
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      *
     20  
      *         The conditions within the build runtime environment which will trigger
     21  
      *         the automatic inclusion of the build profile.
     22  
      *
     23  
      *
     24  
      * <p>Java class for Activation complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="Activation">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="activeByDefault" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     34  
      *         &lt;element name="jdk" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="os" type="{http://maven.apache.org/POM/4.0.0}ActivationOS" minOccurs="0"/>
     36  
      *         &lt;element name="property" type="{http://maven.apache.org/POM/4.0.0}ActivationProperty" minOccurs="0"/>
     37  
      *         &lt;element name="file" type="{http://maven.apache.org/POM/4.0.0}ActivationFile" minOccurs="0"/>
     38  
      *       &lt;/all>
     39  
      *     &lt;/restriction>
     40  
      *   &lt;/complexContent>
     41  
      * &lt;/complexType>
     42  
      * </pre>
     43  
      *
     44  
      *
     45  
      */
     46  
     @XmlAccessorType(XmlAccessType.FIELD)
     47  
     @XmlType(name = "Activation", propOrder = {
     48  
     
     49  
     })
     50  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     51  3
     public class Activation {
     52  
     
     53  
         @XmlElement(defaultValue = "false")
     54  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     55  
         protected Boolean activeByDefault;
     56  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  
         protected String jdk;
     58  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     59  
         protected ActivationOS os;
     60  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     61  
         protected ActivationProperty property;
     62  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     63  
         protected ActivationFile file;
     64  
     
     65  
         /**
     66  
          * Gets the value of the activeByDefault property.
     67  
          *
     68  
          * @return
     69  
          *     possible object is
     70  
          *     {@link Boolean }
     71  
          *
     72  
          */
     73  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     74  
         public Boolean isActiveByDefault() {
     75  0
             return activeByDefault;
     76  
         }
     77  
     
     78  
         /**
     79  
          * Sets the value of the activeByDefault property.
     80  
          *
     81  
          * @param value
     82  
          *     allowed object is
     83  
          *     {@link Boolean }
     84  
          *
     85  
          */
     86  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     87  
         public void setActiveByDefault(Boolean value) {
     88  0
             this.activeByDefault = value;
     89  0
         }
     90  
     
     91  
         /**
     92  
          * Gets the value of the jdk property.
     93  
          *
     94  
          * @return
     95  
          *     possible object is
     96  
          *     {@link String }
     97  
          *
     98  
          */
     99  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     100  
         public String getJdk() {
     101  0
             return jdk;
     102  
         }
     103  
     
     104  
         /**
     105  
          * Sets the value of the jdk property.
     106  
          *
     107  
          * @param value
     108  
          *     allowed object is
     109  
          *     {@link String }
     110  
          *
     111  
          */
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  
         public void setJdk(String value) {
     114  0
             this.jdk = value;
     115  0
         }
     116  
     
     117  
         /**
     118  
          * Gets the value of the os property.
     119  
          *
     120  
          * @return
     121  
          *     possible object is
     122  
          *     {@link ActivationOS }
     123  
          *
     124  
          */
     125  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     126  
         public ActivationOS getOs() {
     127  0
             return os;
     128  
         }
     129  
     
     130  
         /**
     131  
          * Sets the value of the os property.
     132  
          *
     133  
          * @param value
     134  
          *     allowed object is
     135  
          *     {@link ActivationOS }
     136  
          *
     137  
          */
     138  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     139  
         public void setOs(ActivationOS value) {
     140  0
             this.os = value;
     141  0
         }
     142  
     
     143  
         /**
     144  
          * Gets the value of the property property.
     145  
          *
     146  
          * @return
     147  
          *     possible object is
     148  
          *     {@link ActivationProperty }
     149  
          *
     150  
          */
     151  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     152  
         public ActivationProperty getProperty() {
     153  0
             return property;
     154  
         }
     155  
     
     156  
         /**
     157  
          * Sets the value of the property property.
     158  
          *
     159  
          * @param value
     160  
          *     allowed object is
     161  
          *     {@link ActivationProperty }
     162  
          *
     163  
          */
     164  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     165  
         public void setProperty(ActivationProperty value) {
     166  0
             this.property = value;
     167  0
         }
     168  
     
     169  
         /**
     170  
          * Gets the value of the file property.
     171  
          *
     172  
          * @return
     173  
          *     possible object is
     174  
          *     {@link ActivationFile }
     175  
          *
     176  
          */
     177  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     178  
         public ActivationFile getFile() {
     179  0
             return file;
     180  
         }
     181  
     
     182  
         /**
     183  
          * Sets the value of the file property.
     184  
          *
     185  
          * @param value
     186  
          *     allowed object is
     187  
          *     {@link ActivationFile }
     188  
          *
     189  
          */
     190  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     191  
         public void setFile(ActivationFile value) {
     192  0
             this.file = value;
     193  0
         }
     194  
     
     195  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html new file mode 100644 index 000000000..5afae884c --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html @@ -0,0 +1,231 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ActivationFile
    0%
    0/7
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *         This is the file specification used to activate the profile. The missing value will be the location
     20  
      *         of a file that needs to exist, and if it doesn't the profile will be activated.  On the other hand exists will test
     21  
      *         for the existence of the file and if it is there the profile will be activated.
     22  
      *
     23  
      *
     24  
      * <p>Java class for ActivationFile complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="ActivationFile">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="missing" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="exists" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *       &lt;/all>
     36  
      *     &lt;/restriction>
     37  
      *   &lt;/complexContent>
     38  
      * &lt;/complexType>
     39  
      * </pre>
     40  
      *
     41  
      *
     42  
      */
     43  
     @XmlAccessorType(XmlAccessType.FIELD)
     44  
     @XmlType(name = "ActivationFile", propOrder = {
     45  
     
     46  
     })
     47  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     48  0
     public class ActivationFile {
     49  
     
     50  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     51  
         protected String missing;
     52  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     53  
         protected String exists;
     54  
     
     55  
         /**
     56  
          * Gets the value of the missing property.
     57  
          *
     58  
          * @return
     59  
          *     possible object is
     60  
          *     {@link String }
     61  
          *
     62  
          */
     63  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     64  
         public String getMissing() {
     65  0
             return missing;
     66  
         }
     67  
     
     68  
         /**
     69  
          * Sets the value of the missing property.
     70  
          *
     71  
          * @param value
     72  
          *     allowed object is
     73  
          *     {@link String }
     74  
          *
     75  
          */
     76  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     77  
         public void setMissing(String value) {
     78  0
             this.missing = value;
     79  0
         }
     80  
     
     81  
         /**
     82  
          * Gets the value of the exists property.
     83  
          *
     84  
          * @return
     85  
          *     possible object is
     86  
          *     {@link String }
     87  
          *
     88  
          */
     89  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     90  
         public String getExists() {
     91  0
             return exists;
     92  
         }
     93  
     
     94  
         /**
     95  
          * Sets the value of the exists property.
     96  
          *
     97  
          * @param value
     98  
          *     allowed object is
     99  
          *     {@link String }
     100  
          *
     101  
          */
     102  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     103  
         public void setExists(String value) {
     104  0
             this.exists = value;
     105  0
         }
     106  
     
     107  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html new file mode 100644 index 000000000..6f9853584 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html @@ -0,0 +1,339 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ActivationOS
    0%
    0/13
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *         This is an activator which will detect an operating system's attributes in order to activate
     20  
      *         its profile.
     21  
      *
     22  
      *
     23  
      * <p>Java class for ActivationOS complex type.
     24  
      *
     25  
      * <p>The following schema fragment specifies the expected content contained within this class.
     26  
      *
     27  
      * <pre>
     28  
      * &lt;complexType name="ActivationOS">
     29  
      *   &lt;complexContent>
     30  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     31  
      *       &lt;all>
     32  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="family" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="arch" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *       &lt;/all>
     37  
      *     &lt;/restriction>
     38  
      *   &lt;/complexContent>
     39  
      * &lt;/complexType>
     40  
      * </pre>
     41  
      *
     42  
      *
     43  
      */
     44  
     @XmlAccessorType(XmlAccessType.FIELD)
     45  
     @XmlType(name = "ActivationOS", propOrder = {
     46  
     
     47  
     })
     48  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     49  0
     public class ActivationOS {
     50  
     
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String name;
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected String family;
     55  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     56  
         protected String arch;
     57  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     58  
         protected String version;
     59  
     
     60  
         /**
     61  
          * Gets the value of the name property.
     62  
          *
     63  
          * @return
     64  
          *     possible object is
     65  
          *     {@link String }
     66  
          *
     67  
          */
     68  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     69  
         public String getName() {
     70  0
             return name;
     71  
         }
     72  
     
     73  
         /**
     74  
          * Sets the value of the name property.
     75  
          *
     76  
          * @param value
     77  
          *     allowed object is
     78  
          *     {@link String }
     79  
          *
     80  
          */
     81  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     82  
         public void setName(String value) {
     83  0
             this.name = value;
     84  0
         }
     85  
     
     86  
         /**
     87  
          * Gets the value of the family property.
     88  
          *
     89  
          * @return
     90  
          *     possible object is
     91  
          *     {@link String }
     92  
          *
     93  
          */
     94  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     95  
         public String getFamily() {
     96  0
             return family;
     97  
         }
     98  
     
     99  
         /**
     100  
          * Sets the value of the family property.
     101  
          *
     102  
          * @param value
     103  
          *     allowed object is
     104  
          *     {@link String }
     105  
          *
     106  
          */
     107  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     108  
         public void setFamily(String value) {
     109  0
             this.family = value;
     110  0
         }
     111  
     
     112  
         /**
     113  
          * Gets the value of the arch property.
     114  
          *
     115  
          * @return
     116  
          *     possible object is
     117  
          *     {@link String }
     118  
          *
     119  
          */
     120  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     121  
         public String getArch() {
     122  0
             return arch;
     123  
         }
     124  
     
     125  
         /**
     126  
          * Sets the value of the arch property.
     127  
          *
     128  
          * @param value
     129  
          *     allowed object is
     130  
          *     {@link String }
     131  
          *
     132  
          */
     133  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     134  
         public void setArch(String value) {
     135  0
             this.arch = value;
     136  0
         }
     137  
     
     138  
         /**
     139  
          * Gets the value of the version property.
     140  
          *
     141  
          * @return
     142  
          *     possible object is
     143  
          *     {@link String }
     144  
          *
     145  
          */
     146  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     147  
         public String getVersion() {
     148  0
             return version;
     149  
         }
     150  
     
     151  
         /**
     152  
          * Sets the value of the version property.
     153  
          *
     154  
          * @param value
     155  
          *     allowed object is
     156  
          *     {@link String }
     157  
          *
     158  
          */
     159  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     160  
         public void setVersion(String value) {
     161  0
             this.version = value;
     162  0
         }
     163  
     
     164  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html new file mode 100644 index 000000000..c5c120348 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html @@ -0,0 +1,231 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ActivationProperty
    14%
    1/7
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *         This is the property specification used to activate a profile. If the value field is empty,
     20  
      *         then the existence of the named property will activate the profile, otherwise it does a case-sensitive
     21  
      *         match against the property value as well.
     22  
      *
     23  
      *
     24  
      * <p>Java class for ActivationProperty complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="ActivationProperty">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="value" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *       &lt;/all>
     36  
      *     &lt;/restriction>
     37  
      *   &lt;/complexContent>
     38  
      * &lt;/complexType>
     39  
      * </pre>
     40  
      *
     41  
      *
     42  
      */
     43  
     @XmlAccessorType(XmlAccessType.FIELD)
     44  
     @XmlType(name = "ActivationProperty", propOrder = {
     45  
     
     46  
     })
     47  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     48  3
     public class ActivationProperty {
     49  
     
     50  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     51  
         protected String name;
     52  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     53  
         protected String value;
     54  
     
     55  
         /**
     56  
          * Gets the value of the name property.
     57  
          *
     58  
          * @return
     59  
          *     possible object is
     60  
          *     {@link String }
     61  
          *
     62  
          */
     63  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     64  
         public String getName() {
     65  0
             return name;
     66  
         }
     67  
     
     68  
         /**
     69  
          * Sets the value of the name property.
     70  
          *
     71  
          * @param value
     72  
          *     allowed object is
     73  
          *     {@link String }
     74  
          *
     75  
          */
     76  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     77  
         public void setName(String value) {
     78  0
             this.name = value;
     79  0
         }
     80  
     
     81  
         /**
     82  
          * Gets the value of the value property.
     83  
          *
     84  
          * @return
     85  
          *     possible object is
     86  
          *     {@link String }
     87  
          *
     88  
          */
     89  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     90  
         public String getValue() {
     91  0
             return value;
     92  
         }
     93  
     
     94  
         /**
     95  
          * Sets the value of the value property.
     96  
          *
     97  
          * @param value
     98  
          *     allowed object is
     99  
          *     {@link String }
     100  
          *
     101  
          */
     102  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     103  
         public void setValue(String value) {
     104  0
             this.value = value;
     105  0
         }
     106  
     
     107  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html new file mode 100644 index 000000000..88c6f8380 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html @@ -0,0 +1,1591 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Build
    +
     
    + + + + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Build
    4%
    2/44
    N/A
    1.152
    Build$Extensions
    0%
    0/4
    0%
    0/2
    1.152
    Build$Filters
    25%
    1/4
    0%
    0/2
    1.152
    Build$Plugins
    25%
    1/4
    0%
    0/2
    1.152
    Build$Resources
    25%
    1/4
    0%
    0/2
    1.152
    Build$TestResources
    25%
    1/4
    0%
    0/2
    1.152
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlType;
     17  
     
     18  
     
     19  
     /**
     20  
      *  3.0.0+
     21  
      *
     22  
      * <p>Java class for Build complex type.
     23  
      *
     24  
      * <p>The following schema fragment specifies the expected content contained within this class.
     25  
      *
     26  
      * <pre>
     27  
      * &lt;complexType name="Build">
     28  
      *   &lt;complexContent>
     29  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     30  
      *       &lt;all>
     31  
      *         &lt;element name="sourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="scriptSourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="testSourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="outputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="testOutputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="extensions" minOccurs="0">
     37  
      *           &lt;complexType>
     38  
      *             &lt;complexContent>
     39  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     40  
      *                 &lt;sequence>
     41  
      *                   &lt;element name="extension" type="{http://maven.apache.org/POM/4.0.0}Extension" maxOccurs="unbounded" minOccurs="0"/>
     42  
      *                 &lt;/sequence>
     43  
      *               &lt;/restriction>
     44  
      *             &lt;/complexContent>
     45  
      *           &lt;/complexType>
     46  
      *         &lt;/element>
     47  
      *         &lt;element name="defaultGoal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     48  
      *         &lt;element name="resources" minOccurs="0">
     49  
      *           &lt;complexType>
     50  
      *             &lt;complexContent>
     51  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     52  
      *                 &lt;sequence>
     53  
      *                   &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     54  
      *                 &lt;/sequence>
     55  
      *               &lt;/restriction>
     56  
      *             &lt;/complexContent>
     57  
      *           &lt;/complexType>
     58  
      *         &lt;/element>
     59  
      *         &lt;element name="testResources" minOccurs="0">
     60  
      *           &lt;complexType>
     61  
      *             &lt;complexContent>
     62  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     63  
      *                 &lt;sequence>
     64  
      *                   &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     65  
      *                 &lt;/sequence>
     66  
      *               &lt;/restriction>
     67  
      *             &lt;/complexContent>
     68  
      *           &lt;/complexType>
     69  
      *         &lt;/element>
     70  
      *         &lt;element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     71  
      *         &lt;element name="finalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     72  
      *         &lt;element name="filters" minOccurs="0">
     73  
      *           &lt;complexType>
     74  
      *             &lt;complexContent>
     75  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     76  
      *                 &lt;sequence>
     77  
      *                   &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     78  
      *                 &lt;/sequence>
     79  
      *               &lt;/restriction>
     80  
      *             &lt;/complexContent>
     81  
      *           &lt;/complexType>
     82  
      *         &lt;/element>
     83  
      *         &lt;element name="pluginManagement" type="{http://maven.apache.org/POM/4.0.0}PluginManagement" minOccurs="0"/>
     84  
      *         &lt;element name="plugins" minOccurs="0">
     85  
      *           &lt;complexType>
     86  
      *             &lt;complexContent>
     87  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     88  
      *                 &lt;sequence>
     89  
      *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
     90  
      *                 &lt;/sequence>
     91  
      *               &lt;/restriction>
     92  
      *             &lt;/complexContent>
     93  
      *           &lt;/complexType>
     94  
      *         &lt;/element>
     95  
      *       &lt;/all>
     96  
      *     &lt;/restriction>
     97  
      *   &lt;/complexContent>
     98  
      * &lt;/complexType>
     99  
      * </pre>
     100  
      *
     101  
      *
     102  
      */
     103  
     @XmlAccessorType(XmlAccessType.FIELD)
     104  
     @XmlType(name = "Build", propOrder = {
     105  
     
     106  
     })
     107  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     108  7
     public class Build {
     109  
     
     110  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     111  
         protected String sourceDirectory;
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  
         protected String scriptSourceDirectory;
     114  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     115  
         protected String testSourceDirectory;
     116  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     117  
         protected String outputDirectory;
     118  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     119  
         protected String testOutputDirectory;
     120  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     121  
         protected Build.Extensions extensions;
     122  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     123  
         protected String defaultGoal;
     124  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     125  
         protected Build.Resources resources;
     126  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     127  
         protected Build.TestResources testResources;
     128  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     129  
         protected String directory;
     130  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     131  
         protected String finalName;
     132  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     133  
         protected Build.Filters filters;
     134  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     135  
         protected PluginManagement pluginManagement;
     136  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     137  
         protected Build.Plugins plugins;
     138  
     
     139  
         /**
     140  
          * Gets the value of the sourceDirectory property.
     141  
          *
     142  
          * @return
     143  
          *     possible object is
     144  
          *     {@link String }
     145  
          *
     146  
          */
     147  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     148  
         public String getSourceDirectory() {
     149  0
             return sourceDirectory;
     150  
         }
     151  
     
     152  
         /**
     153  
          * Sets the value of the sourceDirectory property.
     154  
          *
     155  
          * @param value
     156  
          *     allowed object is
     157  
          *     {@link String }
     158  
          *
     159  
          */
     160  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     161  
         public void setSourceDirectory(String value) {
     162  0
             this.sourceDirectory = value;
     163  0
         }
     164  
     
     165  
         /**
     166  
          * Gets the value of the scriptSourceDirectory property.
     167  
          *
     168  
          * @return
     169  
          *     possible object is
     170  
          *     {@link String }
     171  
          *
     172  
          */
     173  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     174  
         public String getScriptSourceDirectory() {
     175  0
             return scriptSourceDirectory;
     176  
         }
     177  
     
     178  
         /**
     179  
          * Sets the value of the scriptSourceDirectory property.
     180  
          *
     181  
          * @param value
     182  
          *     allowed object is
     183  
          *     {@link String }
     184  
          *
     185  
          */
     186  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     187  
         public void setScriptSourceDirectory(String value) {
     188  0
             this.scriptSourceDirectory = value;
     189  0
         }
     190  
     
     191  
         /**
     192  
          * Gets the value of the testSourceDirectory property.
     193  
          *
     194  
          * @return
     195  
          *     possible object is
     196  
          *     {@link String }
     197  
          *
     198  
          */
     199  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     200  
         public String getTestSourceDirectory() {
     201  0
             return testSourceDirectory;
     202  
         }
     203  
     
     204  
         /**
     205  
          * Sets the value of the testSourceDirectory property.
     206  
          *
     207  
          * @param value
     208  
          *     allowed object is
     209  
          *     {@link String }
     210  
          *
     211  
          */
     212  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     213  
         public void setTestSourceDirectory(String value) {
     214  0
             this.testSourceDirectory = value;
     215  0
         }
     216  
     
     217  
         /**
     218  
          * Gets the value of the outputDirectory property.
     219  
          *
     220  
          * @return
     221  
          *     possible object is
     222  
          *     {@link String }
     223  
          *
     224  
          */
     225  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     226  
         public String getOutputDirectory() {
     227  0
             return outputDirectory;
     228  
         }
     229  
     
     230  
         /**
     231  
          * Sets the value of the outputDirectory property.
     232  
          *
     233  
          * @param value
     234  
          *     allowed object is
     235  
          *     {@link String }
     236  
          *
     237  
          */
     238  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     239  
         public void setOutputDirectory(String value) {
     240  0
             this.outputDirectory = value;
     241  0
         }
     242  
     
     243  
         /**
     244  
          * Gets the value of the testOutputDirectory property.
     245  
          *
     246  
          * @return
     247  
          *     possible object is
     248  
          *     {@link String }
     249  
          *
     250  
          */
     251  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     252  
         public String getTestOutputDirectory() {
     253  0
             return testOutputDirectory;
     254  
         }
     255  
     
     256  
         /**
     257  
          * Sets the value of the testOutputDirectory property.
     258  
          *
     259  
          * @param value
     260  
          *     allowed object is
     261  
          *     {@link String }
     262  
          *
     263  
          */
     264  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     265  
         public void setTestOutputDirectory(String value) {
     266  0
             this.testOutputDirectory = value;
     267  0
         }
     268  
     
     269  
         /**
     270  
          * Gets the value of the extensions property.
     271  
          *
     272  
          * @return
     273  
          *     possible object is
     274  
          *     {@link Build.Extensions }
     275  
          *
     276  
          */
     277  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     278  
         public Build.Extensions getExtensions() {
     279  0
             return extensions;
     280  
         }
     281  
     
     282  
         /**
     283  
          * Sets the value of the extensions property.
     284  
          *
     285  
          * @param value
     286  
          *     allowed object is
     287  
          *     {@link Build.Extensions }
     288  
          *
     289  
          */
     290  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     291  
         public void setExtensions(Build.Extensions value) {
     292  0
             this.extensions = value;
     293  0
         }
     294  
     
     295  
         /**
     296  
          * Gets the value of the defaultGoal property.
     297  
          *
     298  
          * @return
     299  
          *     possible object is
     300  
          *     {@link String }
     301  
          *
     302  
          */
     303  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     304  
         public String getDefaultGoal() {
     305  0
             return defaultGoal;
     306  
         }
     307  
     
     308  
         /**
     309  
          * Sets the value of the defaultGoal property.
     310  
          *
     311  
          * @param value
     312  
          *     allowed object is
     313  
          *     {@link String }
     314  
          *
     315  
          */
     316  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     317  
         public void setDefaultGoal(String value) {
     318  0
             this.defaultGoal = value;
     319  0
         }
     320  
     
     321  
         /**
     322  
          * Gets the value of the resources property.
     323  
          *
     324  
          * @return
     325  
          *     possible object is
     326  
          *     {@link Build.Resources }
     327  
          *
     328  
          */
     329  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     330  
         public Build.Resources getResources() {
     331  0
             return resources;
     332  
         }
     333  
     
     334  
         /**
     335  
          * Sets the value of the resources property.
     336  
          *
     337  
          * @param value
     338  
          *     allowed object is
     339  
          *     {@link Build.Resources }
     340  
          *
     341  
          */
     342  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     343  
         public void setResources(Build.Resources value) {
     344  0
             this.resources = value;
     345  0
         }
     346  
     
     347  
         /**
     348  
          * Gets the value of the testResources property.
     349  
          *
     350  
          * @return
     351  
          *     possible object is
     352  
          *     {@link Build.TestResources }
     353  
          *
     354  
          */
     355  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     356  
         public Build.TestResources getTestResources() {
     357  0
             return testResources;
     358  
         }
     359  
     
     360  
         /**
     361  
          * Sets the value of the testResources property.
     362  
          *
     363  
          * @param value
     364  
          *     allowed object is
     365  
          *     {@link Build.TestResources }
     366  
          *
     367  
          */
     368  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     369  
         public void setTestResources(Build.TestResources value) {
     370  0
             this.testResources = value;
     371  0
         }
     372  
     
     373  
         /**
     374  
          * Gets the value of the directory property.
     375  
          *
     376  
          * @return
     377  
          *     possible object is
     378  
          *     {@link String }
     379  
          *
     380  
          */
     381  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     382  
         public String getDirectory() {
     383  0
             return directory;
     384  
         }
     385  
     
     386  
         /**
     387  
          * Sets the value of the directory property.
     388  
          *
     389  
          * @param value
     390  
          *     allowed object is
     391  
          *     {@link String }
     392  
          *
     393  
          */
     394  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     395  
         public void setDirectory(String value) {
     396  0
             this.directory = value;
     397  0
         }
     398  
     
     399  
         /**
     400  
          * Gets the value of the finalName property.
     401  
          *
     402  
          * @return
     403  
          *     possible object is
     404  
          *     {@link String }
     405  
          *
     406  
          */
     407  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     408  
         public String getFinalName() {
     409  0
             return finalName;
     410  
         }
     411  
     
     412  
         /**
     413  
          * Sets the value of the finalName property.
     414  
          *
     415  
          * @param value
     416  
          *     allowed object is
     417  
          *     {@link String }
     418  
          *
     419  
          */
     420  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     421  
         public void setFinalName(String value) {
     422  0
             this.finalName = value;
     423  0
         }
     424  
     
     425  
         /**
     426  
          * Gets the value of the filters property.
     427  
          *
     428  
          * @return
     429  
          *     possible object is
     430  
          *     {@link Build.Filters }
     431  
          *
     432  
          */
     433  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     434  
         public Build.Filters getFilters() {
     435  0
             return filters;
     436  
         }
     437  
     
     438  
         /**
     439  
          * Sets the value of the filters property.
     440  
          *
     441  
          * @param value
     442  
          *     allowed object is
     443  
          *     {@link Build.Filters }
     444  
          *
     445  
          */
     446  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     447  
         public void setFilters(Build.Filters value) {
     448  0
             this.filters = value;
     449  0
         }
     450  
     
     451  
         /**
     452  
          * Gets the value of the pluginManagement property.
     453  
          *
     454  
          * @return
     455  
          *     possible object is
     456  
          *     {@link PluginManagement }
     457  
          *
     458  
          */
     459  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     460  
         public PluginManagement getPluginManagement() {
     461  0
             return pluginManagement;
     462  
         }
     463  
     
     464  
         /**
     465  
          * Sets the value of the pluginManagement property.
     466  
          *
     467  
          * @param value
     468  
          *     allowed object is
     469  
          *     {@link PluginManagement }
     470  
          *
     471  
          */
     472  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     473  
         public void setPluginManagement(PluginManagement value) {
     474  0
             this.pluginManagement = value;
     475  0
         }
     476  
     
     477  
         /**
     478  
          * Gets the value of the plugins property.
     479  
          *
     480  
          * @return
     481  
          *     possible object is
     482  
          *     {@link Build.Plugins }
     483  
          *
     484  
          */
     485  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     486  
         public Build.Plugins getPlugins() {
     487  0
             return plugins;
     488  
         }
     489  
     
     490  
         /**
     491  
          * Sets the value of the plugins property.
     492  
          *
     493  
          * @param value
     494  
          *     allowed object is
     495  
          *     {@link Build.Plugins }
     496  
          *
     497  
          */
     498  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     499  
         public void setPlugins(Build.Plugins value) {
     500  0
             this.plugins = value;
     501  0
         }
     502  
     
     503  
     
     504  
         /**
     505  
          * <p>Java class for anonymous complex type.
     506  
          *
     507  
          * <p>The following schema fragment specifies the expected content contained within this class.
     508  
          *
     509  
          * <pre>
     510  
          * &lt;complexType>
     511  
          *   &lt;complexContent>
     512  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     513  
          *       &lt;sequence>
     514  
          *         &lt;element name="extension" type="{http://maven.apache.org/POM/4.0.0}Extension" maxOccurs="unbounded" minOccurs="0"/>
     515  
          *       &lt;/sequence>
     516  
          *     &lt;/restriction>
     517  
          *   &lt;/complexContent>
     518  
          * &lt;/complexType>
     519  
          * </pre>
     520  
          *
     521  
          *
     522  
          */
     523  
         @XmlAccessorType(XmlAccessType.FIELD)
     524  
         @XmlType(name = "", propOrder = {
     525  
             "extension"
     526  
         })
     527  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     528  0
         public static class Extensions {
     529  
     
     530  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     531  
             protected List<Extension> extension;
     532  
     
     533  
             /**
     534  
              * Gets the value of the extension property.
     535  
              *
     536  
              * <p>
     537  
              * This accessor method returns a reference to the live list,
     538  
              * not a snapshot. Therefore any modification you make to the
     539  
              * returned list will be present inside the JAXB object.
     540  
              * This is why there is not a <CODE>set</CODE> method for the extension property.
     541  
              *
     542  
              * <p>
     543  
              * For example, to add a new item, do as follows:
     544  
              * <pre>
     545  
              *    getExtension().add(newItem);
     546  
              * </pre>
     547  
              *
     548  
              *
     549  
              * <p>
     550  
              * Objects of the following type(s) are allowed in the list
     551  
              * {@link Extension }
     552  
              *
     553  
              *
     554  
              */
     555  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     556  
             public List<Extension> getExtension() {
     557  0
                 if (extension == null) {
     558  0
                     extension = new ArrayList<Extension>();
     559  
                 }
     560  0
                 return this.extension;
     561  
             }
     562  
     
     563  
         }
     564  
     
     565  
     
     566  
         /**
     567  
          * <p>Java class for anonymous complex type.
     568  
          *
     569  
          * <p>The following schema fragment specifies the expected content contained within this class.
     570  
          *
     571  
          * <pre>
     572  
          * &lt;complexType>
     573  
          *   &lt;complexContent>
     574  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     575  
          *       &lt;sequence>
     576  
          *         &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     577  
          *       &lt;/sequence>
     578  
          *     &lt;/restriction>
     579  
          *   &lt;/complexContent>
     580  
          * &lt;/complexType>
     581  
          * </pre>
     582  
          *
     583  
          *
     584  
          */
     585  
         @XmlAccessorType(XmlAccessType.FIELD)
     586  
         @XmlType(name = "", propOrder = {
     587  
             "filter"
     588  
         })
     589  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     590  1
         public static class Filters {
     591  
     
     592  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     593  
             protected List<String> filter;
     594  
     
     595  
             /**
     596  
              * Gets the value of the filter property.
     597  
              *
     598  
              * <p>
     599  
              * This accessor method returns a reference to the live list,
     600  
              * not a snapshot. Therefore any modification you make to the
     601  
              * returned list will be present inside the JAXB object.
     602  
              * This is why there is not a <CODE>set</CODE> method for the filter property.
     603  
              *
     604  
              * <p>
     605  
              * For example, to add a new item, do as follows:
     606  
              * <pre>
     607  
              *    getFilter().add(newItem);
     608  
              * </pre>
     609  
              *
     610  
              *
     611  
              * <p>
     612  
              * Objects of the following type(s) are allowed in the list
     613  
              * {@link String }
     614  
              *
     615  
              *
     616  
              */
     617  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     618  
             public List<String> getFilter() {
     619  0
                 if (filter == null) {
     620  0
                     filter = new ArrayList<String>();
     621  
                 }
     622  0
                 return this.filter;
     623  
             }
     624  
     
     625  
         }
     626  
     
     627  
     
     628  
         /**
     629  
          * <p>Java class for anonymous complex type.
     630  
          *
     631  
          * <p>The following schema fragment specifies the expected content contained within this class.
     632  
          *
     633  
          * <pre>
     634  
          * &lt;complexType>
     635  
          *   &lt;complexContent>
     636  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     637  
          *       &lt;sequence>
     638  
          *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
     639  
          *       &lt;/sequence>
     640  
          *     &lt;/restriction>
     641  
          *   &lt;/complexContent>
     642  
          * &lt;/complexType>
     643  
          * </pre>
     644  
          *
     645  
          *
     646  
          */
     647  
         @XmlAccessorType(XmlAccessType.FIELD)
     648  
         @XmlType(name = "", propOrder = {
     649  
             "plugin"
     650  
         })
     651  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     652  7
         public static class Plugins {
     653  
     
     654  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     655  
             protected List<Plugin> plugin;
     656  
     
     657  
             /**
     658  
              * Gets the value of the plugin property.
     659  
              *
     660  
              * <p>
     661  
              * This accessor method returns a reference to the live list,
     662  
              * not a snapshot. Therefore any modification you make to the
     663  
              * returned list will be present inside the JAXB object.
     664  
              * This is why there is not a <CODE>set</CODE> method for the plugin property.
     665  
              *
     666  
              * <p>
     667  
              * For example, to add a new item, do as follows:
     668  
              * <pre>
     669  
              *    getPlugin().add(newItem);
     670  
              * </pre>
     671  
              *
     672  
              *
     673  
              * <p>
     674  
              * Objects of the following type(s) are allowed in the list
     675  
              * {@link Plugin }
     676  
              *
     677  
              *
     678  
              */
     679  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     680  
             public List<Plugin> getPlugin() {
     681  0
                 if (plugin == null) {
     682  0
                     plugin = new ArrayList<Plugin>();
     683  
                 }
     684  0
                 return this.plugin;
     685  
             }
     686  
     
     687  
         }
     688  
     
     689  
     
     690  
         /**
     691  
          * <p>Java class for anonymous complex type.
     692  
          *
     693  
          * <p>The following schema fragment specifies the expected content contained within this class.
     694  
          *
     695  
          * <pre>
     696  
          * &lt;complexType>
     697  
          *   &lt;complexContent>
     698  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     699  
          *       &lt;sequence>
     700  
          *         &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     701  
          *       &lt;/sequence>
     702  
          *     &lt;/restriction>
     703  
          *   &lt;/complexContent>
     704  
          * &lt;/complexType>
     705  
          * </pre>
     706  
          *
     707  
          *
     708  
          */
     709  
         @XmlAccessorType(XmlAccessType.FIELD)
     710  
         @XmlType(name = "", propOrder = {
     711  
             "resource"
     712  
         })
     713  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     714  3
         public static class Resources {
     715  
     
     716  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     717  
             protected List<Resource> resource;
     718  
     
     719  
             /**
     720  
              * Gets the value of the resource property.
     721  
              *
     722  
              * <p>
     723  
              * This accessor method returns a reference to the live list,
     724  
              * not a snapshot. Therefore any modification you make to the
     725  
              * returned list will be present inside the JAXB object.
     726  
              * This is why there is not a <CODE>set</CODE> method for the resource property.
     727  
              *
     728  
              * <p>
     729  
              * For example, to add a new item, do as follows:
     730  
              * <pre>
     731  
              *    getResource().add(newItem);
     732  
              * </pre>
     733  
              *
     734  
              *
     735  
              * <p>
     736  
              * Objects of the following type(s) are allowed in the list
     737  
              * {@link Resource }
     738  
              *
     739  
              *
     740  
              */
     741  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     742  
             public List<Resource> getResource() {
     743  0
                 if (resource == null) {
     744  0
                     resource = new ArrayList<Resource>();
     745  
                 }
     746  0
                 return this.resource;
     747  
             }
     748  
     
     749  
         }
     750  
     
     751  
     
     752  
         /**
     753  
          * <p>Java class for anonymous complex type.
     754  
          *
     755  
          * <p>The following schema fragment specifies the expected content contained within this class.
     756  
          *
     757  
          * <pre>
     758  
          * &lt;complexType>
     759  
          *   &lt;complexContent>
     760  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     761  
          *       &lt;sequence>
     762  
          *         &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     763  
          *       &lt;/sequence>
     764  
          *     &lt;/restriction>
     765  
          *   &lt;/complexContent>
     766  
          * &lt;/complexType>
     767  
          * </pre>
     768  
          *
     769  
          *
     770  
          */
     771  7
         @XmlAccessorType(XmlAccessType.FIELD)
     772  
         @XmlType(name = "", propOrder = {
     773  
             "testResource"
     774  
         })
     775  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     776  1
         public static class TestResources {
     777  
     
     778  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     779  
             protected List<Resource> testResource;
     780  
     
     781  
             /**
     782  
              * Gets the value of the testResource property.
     783  
              *
     784  
              * <p>
     785  
              * This accessor method returns a reference to the live list,
     786  
              * not a snapshot. Therefore any modification you make to the
     787  
              * returned list will be present inside the JAXB object.
     788  
              * This is why there is not a <CODE>set</CODE> method for the testResource property.
     789  
              *
     790  
              * <p>
     791  
              * For example, to add a new item, do as follows:
     792  
              * <pre>
     793  
              *    getTestResource().add(newItem);
     794  
              * </pre>
     795  
              *
     796  
              *
     797  
              * <p>
     798  
              * Objects of the following type(s) are allowed in the list
     799  
              * {@link Resource }
     800  
              *
     801  
              *
     802  
              */
     803  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     804  
             public List<Resource> getTestResource() {
     805  0
                 if (testResource == null) {
     806  0
                     testResource = new ArrayList<Resource>();
     807  
                 }
     808  0
                 return this.testResource;
     809  
             }
     810  
     
     811  
         }
     812  
     
     813  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html new file mode 100644 index 000000000..46142d3e9 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html @@ -0,0 +1,1120 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.BuildBase
    +
     
    + + + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    BuildBase
    7%
    2/26
    N/A
    1.2
    BuildBase$Filters
    0%
    0/4
    0%
    0/2
    1.2
    BuildBase$Plugins
    25%
    1/4
    0%
    0/2
    1.2
    BuildBase$Resources
    0%
    0/4
    0%
    0/2
    1.2
    BuildBase$TestResources
    0%
    0/4
    0%
    0/2
    1.2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlType;
     17  
     
     18  
     
     19  
     /**
     20  
      *  3.0.0+
     21  
      *
     22  
      * <p>Java class for BuildBase complex type.
     23  
      *
     24  
      * <p>The following schema fragment specifies the expected content contained within this class.
     25  
      *
     26  
      * <pre>
     27  
      * &lt;complexType name="BuildBase">
     28  
      *   &lt;complexContent>
     29  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     30  
      *       &lt;all>
     31  
      *         &lt;element name="defaultGoal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="resources" minOccurs="0">
     33  
      *           &lt;complexType>
     34  
      *             &lt;complexContent>
     35  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     36  
      *                 &lt;sequence>
     37  
      *                   &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     38  
      *                 &lt;/sequence>
     39  
      *               &lt;/restriction>
     40  
      *             &lt;/complexContent>
     41  
      *           &lt;/complexType>
     42  
      *         &lt;/element>
     43  
      *         &lt;element name="testResources" minOccurs="0">
     44  
      *           &lt;complexType>
     45  
      *             &lt;complexContent>
     46  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     47  
      *                 &lt;sequence>
     48  
      *                   &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     49  
      *                 &lt;/sequence>
     50  
      *               &lt;/restriction>
     51  
      *             &lt;/complexContent>
     52  
      *           &lt;/complexType>
     53  
      *         &lt;/element>
     54  
      *         &lt;element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     55  
      *         &lt;element name="finalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     56  
      *         &lt;element name="filters" minOccurs="0">
     57  
      *           &lt;complexType>
     58  
      *             &lt;complexContent>
     59  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     60  
      *                 &lt;sequence>
     61  
      *                   &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     62  
      *                 &lt;/sequence>
     63  
      *               &lt;/restriction>
     64  
      *             &lt;/complexContent>
     65  
      *           &lt;/complexType>
     66  
      *         &lt;/element>
     67  
      *         &lt;element name="pluginManagement" type="{http://maven.apache.org/POM/4.0.0}PluginManagement" minOccurs="0"/>
     68  
      *         &lt;element name="plugins" minOccurs="0">
     69  
      *           &lt;complexType>
     70  
      *             &lt;complexContent>
     71  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     72  
      *                 &lt;sequence>
     73  
      *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
     74  
      *                 &lt;/sequence>
     75  
      *               &lt;/restriction>
     76  
      *             &lt;/complexContent>
     77  
      *           &lt;/complexType>
     78  
      *         &lt;/element>
     79  
      *       &lt;/all>
     80  
      *     &lt;/restriction>
     81  
      *   &lt;/complexContent>
     82  
      * &lt;/complexType>
     83  
      * </pre>
     84  
      *
     85  
      *
     86  
      */
     87  
     @XmlAccessorType(XmlAccessType.FIELD)
     88  
     @XmlType(name = "BuildBase", propOrder = {
     89  
     
     90  
     })
     91  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     92  7
     public class BuildBase {
     93  
     
     94  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     95  
         protected String defaultGoal;
     96  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     97  
         protected BuildBase.Resources resources;
     98  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     99  
         protected BuildBase.TestResources testResources;
     100  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     101  
         protected String directory;
     102  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     103  
         protected String finalName;
     104  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     105  
         protected BuildBase.Filters filters;
     106  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     107  
         protected PluginManagement pluginManagement;
     108  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     109  
         protected BuildBase.Plugins plugins;
     110  
     
     111  
         /**
     112  
          * Gets the value of the defaultGoal property.
     113  
          *
     114  
          * @return
     115  
          *     possible object is
     116  
          *     {@link String }
     117  
          *
     118  
          */
     119  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     120  
         public String getDefaultGoal() {
     121  0
             return defaultGoal;
     122  
         }
     123  
     
     124  
         /**
     125  
          * Sets the value of the defaultGoal property.
     126  
          *
     127  
          * @param value
     128  
          *     allowed object is
     129  
          *     {@link String }
     130  
          *
     131  
          */
     132  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     133  
         public void setDefaultGoal(String value) {
     134  0
             this.defaultGoal = value;
     135  0
         }
     136  
     
     137  
         /**
     138  
          * Gets the value of the resources property.
     139  
          *
     140  
          * @return
     141  
          *     possible object is
     142  
          *     {@link BuildBase.Resources }
     143  
          *
     144  
          */
     145  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     146  
         public BuildBase.Resources getResources() {
     147  0
             return resources;
     148  
         }
     149  
     
     150  
         /**
     151  
          * Sets the value of the resources property.
     152  
          *
     153  
          * @param value
     154  
          *     allowed object is
     155  
          *     {@link BuildBase.Resources }
     156  
          *
     157  
          */
     158  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     159  
         public void setResources(BuildBase.Resources value) {
     160  0
             this.resources = value;
     161  0
         }
     162  
     
     163  
         /**
     164  
          * Gets the value of the testResources property.
     165  
          *
     166  
          * @return
     167  
          *     possible object is
     168  
          *     {@link BuildBase.TestResources }
     169  
          *
     170  
          */
     171  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     172  
         public BuildBase.TestResources getTestResources() {
     173  0
             return testResources;
     174  
         }
     175  
     
     176  
         /**
     177  
          * Sets the value of the testResources property.
     178  
          *
     179  
          * @param value
     180  
          *     allowed object is
     181  
          *     {@link BuildBase.TestResources }
     182  
          *
     183  
          */
     184  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     185  
         public void setTestResources(BuildBase.TestResources value) {
     186  0
             this.testResources = value;
     187  0
         }
     188  
     
     189  
         /**
     190  
          * Gets the value of the directory property.
     191  
          *
     192  
          * @return
     193  
          *     possible object is
     194  
          *     {@link String }
     195  
          *
     196  
          */
     197  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     198  
         public String getDirectory() {
     199  0
             return directory;
     200  
         }
     201  
     
     202  
         /**
     203  
          * Sets the value of the directory property.
     204  
          *
     205  
          * @param value
     206  
          *     allowed object is
     207  
          *     {@link String }
     208  
          *
     209  
          */
     210  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     211  
         public void setDirectory(String value) {
     212  0
             this.directory = value;
     213  0
         }
     214  
     
     215  
         /**
     216  
          * Gets the value of the finalName property.
     217  
          *
     218  
          * @return
     219  
          *     possible object is
     220  
          *     {@link String }
     221  
          *
     222  
          */
     223  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     224  
         public String getFinalName() {
     225  0
             return finalName;
     226  
         }
     227  
     
     228  
         /**
     229  
          * Sets the value of the finalName property.
     230  
          *
     231  
          * @param value
     232  
          *     allowed object is
     233  
          *     {@link String }
     234  
          *
     235  
          */
     236  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     237  
         public void setFinalName(String value) {
     238  0
             this.finalName = value;
     239  0
         }
     240  
     
     241  
         /**
     242  
          * Gets the value of the filters property.
     243  
          *
     244  
          * @return
     245  
          *     possible object is
     246  
          *     {@link BuildBase.Filters }
     247  
          *
     248  
          */
     249  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     250  
         public BuildBase.Filters getFilters() {
     251  0
             return filters;
     252  
         }
     253  
     
     254  
         /**
     255  
          * Sets the value of the filters property.
     256  
          *
     257  
          * @param value
     258  
          *     allowed object is
     259  
          *     {@link BuildBase.Filters }
     260  
          *
     261  
          */
     262  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     263  
         public void setFilters(BuildBase.Filters value) {
     264  0
             this.filters = value;
     265  0
         }
     266  
     
     267  
         /**
     268  
          * Gets the value of the pluginManagement property.
     269  
          *
     270  
          * @return
     271  
          *     possible object is
     272  
          *     {@link PluginManagement }
     273  
          *
     274  
          */
     275  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     276  
         public PluginManagement getPluginManagement() {
     277  0
             return pluginManagement;
     278  
         }
     279  
     
     280  
         /**
     281  
          * Sets the value of the pluginManagement property.
     282  
          *
     283  
          * @param value
     284  
          *     allowed object is
     285  
          *     {@link PluginManagement }
     286  
          *
     287  
          */
     288  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     289  
         public void setPluginManagement(PluginManagement value) {
     290  0
             this.pluginManagement = value;
     291  0
         }
     292  
     
     293  
         /**
     294  
          * Gets the value of the plugins property.
     295  
          *
     296  
          * @return
     297  
          *     possible object is
     298  
          *     {@link BuildBase.Plugins }
     299  
          *
     300  
          */
     301  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     302  
         public BuildBase.Plugins getPlugins() {
     303  0
             return plugins;
     304  
         }
     305  
     
     306  
         /**
     307  
          * Sets the value of the plugins property.
     308  
          *
     309  
          * @param value
     310  
          *     allowed object is
     311  
          *     {@link BuildBase.Plugins }
     312  
          *
     313  
          */
     314  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     315  
         public void setPlugins(BuildBase.Plugins value) {
     316  0
             this.plugins = value;
     317  0
         }
     318  
     
     319  
     
     320  
         /**
     321  
          * <p>Java class for anonymous complex type.
     322  
          *
     323  
          * <p>The following schema fragment specifies the expected content contained within this class.
     324  
          *
     325  
          * <pre>
     326  
          * &lt;complexType>
     327  
          *   &lt;complexContent>
     328  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     329  
          *       &lt;sequence>
     330  
          *         &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     331  
          *       &lt;/sequence>
     332  
          *     &lt;/restriction>
     333  
          *   &lt;/complexContent>
     334  
          * &lt;/complexType>
     335  
          * </pre>
     336  
          *
     337  
          *
     338  
          */
     339  
         @XmlAccessorType(XmlAccessType.FIELD)
     340  
         @XmlType(name = "", propOrder = {
     341  
             "filter"
     342  
         })
     343  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     344  0
         public static class Filters {
     345  
     
     346  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     347  
             protected List<String> filter;
     348  
     
     349  
             /**
     350  
              * Gets the value of the filter property.
     351  
              *
     352  
              * <p>
     353  
              * This accessor method returns a reference to the live list,
     354  
              * not a snapshot. Therefore any modification you make to the
     355  
              * returned list will be present inside the JAXB object.
     356  
              * This is why there is not a <CODE>set</CODE> method for the filter property.
     357  
              *
     358  
              * <p>
     359  
              * For example, to add a new item, do as follows:
     360  
              * <pre>
     361  
              *    getFilter().add(newItem);
     362  
              * </pre>
     363  
              *
     364  
              *
     365  
              * <p>
     366  
              * Objects of the following type(s) are allowed in the list
     367  
              * {@link String }
     368  
              *
     369  
              *
     370  
              */
     371  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     372  
             public List<String> getFilter() {
     373  0
                 if (filter == null) {
     374  0
                     filter = new ArrayList<String>();
     375  
                 }
     376  0
                 return this.filter;
     377  
             }
     378  
     
     379  
         }
     380  
     
     381  
     
     382  
         /**
     383  
          * <p>Java class for anonymous complex type.
     384  
          *
     385  
          * <p>The following schema fragment specifies the expected content contained within this class.
     386  
          *
     387  
          * <pre>
     388  
          * &lt;complexType>
     389  
          *   &lt;complexContent>
     390  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     391  
          *       &lt;sequence>
     392  
          *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
     393  
          *       &lt;/sequence>
     394  
          *     &lt;/restriction>
     395  
          *   &lt;/complexContent>
     396  
          * &lt;/complexType>
     397  
          * </pre>
     398  
          *
     399  
          *
     400  
          */
     401  
         @XmlAccessorType(XmlAccessType.FIELD)
     402  
         @XmlType(name = "", propOrder = {
     403  
             "plugin"
     404  
         })
     405  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     406  7
         public static class Plugins {
     407  
     
     408  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     409  
             protected List<Plugin> plugin;
     410  
     
     411  
             /**
     412  
              * Gets the value of the plugin property.
     413  
              *
     414  
              * <p>
     415  
              * This accessor method returns a reference to the live list,
     416  
              * not a snapshot. Therefore any modification you make to the
     417  
              * returned list will be present inside the JAXB object.
     418  
              * This is why there is not a <CODE>set</CODE> method for the plugin property.
     419  
              *
     420  
              * <p>
     421  
              * For example, to add a new item, do as follows:
     422  
              * <pre>
     423  
              *    getPlugin().add(newItem);
     424  
              * </pre>
     425  
              *
     426  
              *
     427  
              * <p>
     428  
              * Objects of the following type(s) are allowed in the list
     429  
              * {@link Plugin }
     430  
              *
     431  
              *
     432  
              */
     433  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     434  
             public List<Plugin> getPlugin() {
     435  0
                 if (plugin == null) {
     436  0
                     plugin = new ArrayList<Plugin>();
     437  
                 }
     438  0
                 return this.plugin;
     439  
             }
     440  
     
     441  
         }
     442  
     
     443  
     
     444  
         /**
     445  
          * <p>Java class for anonymous complex type.
     446  
          *
     447  
          * <p>The following schema fragment specifies the expected content contained within this class.
     448  
          *
     449  
          * <pre>
     450  
          * &lt;complexType>
     451  
          *   &lt;complexContent>
     452  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     453  
          *       &lt;sequence>
     454  
          *         &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     455  
          *       &lt;/sequence>
     456  
          *     &lt;/restriction>
     457  
          *   &lt;/complexContent>
     458  
          * &lt;/complexType>
     459  
          * </pre>
     460  
          *
     461  
          *
     462  
          */
     463  
         @XmlAccessorType(XmlAccessType.FIELD)
     464  
         @XmlType(name = "", propOrder = {
     465  
             "resource"
     466  
         })
     467  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     468  0
         public static class Resources {
     469  
     
     470  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     471  
             protected List<Resource> resource;
     472  
     
     473  
             /**
     474  
              * Gets the value of the resource property.
     475  
              *
     476  
              * <p>
     477  
              * This accessor method returns a reference to the live list,
     478  
              * not a snapshot. Therefore any modification you make to the
     479  
              * returned list will be present inside the JAXB object.
     480  
              * This is why there is not a <CODE>set</CODE> method for the resource property.
     481  
              *
     482  
              * <p>
     483  
              * For example, to add a new item, do as follows:
     484  
              * <pre>
     485  
              *    getResource().add(newItem);
     486  
              * </pre>
     487  
              *
     488  
              *
     489  
              * <p>
     490  
              * Objects of the following type(s) are allowed in the list
     491  
              * {@link Resource }
     492  
              *
     493  
              *
     494  
              */
     495  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     496  
             public List<Resource> getResource() {
     497  0
                 if (resource == null) {
     498  0
                     resource = new ArrayList<Resource>();
     499  
                 }
     500  0
                 return this.resource;
     501  
             }
     502  
     
     503  
         }
     504  
     
     505  
     
     506  
         /**
     507  
          * <p>Java class for anonymous complex type.
     508  
          *
     509  
          * <p>The following schema fragment specifies the expected content contained within this class.
     510  
          *
     511  
          * <pre>
     512  
          * &lt;complexType>
     513  
          *   &lt;complexContent>
     514  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     515  
          *       &lt;sequence>
     516  
          *         &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
     517  
          *       &lt;/sequence>
     518  
          *     &lt;/restriction>
     519  
          *   &lt;/complexContent>
     520  
          * &lt;/complexType>
     521  
          * </pre>
     522  
          *
     523  
          *
     524  
          */
     525  7
         @XmlAccessorType(XmlAccessType.FIELD)
     526  
         @XmlType(name = "", propOrder = {
     527  
             "testResource"
     528  
         })
     529  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     530  0
         public static class TestResources {
     531  
     
     532  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     533  
             protected List<Resource> testResource;
     534  
     
     535  
             /**
     536  
              * Gets the value of the testResource property.
     537  
              *
     538  
              * <p>
     539  
              * This accessor method returns a reference to the live list,
     540  
              * not a snapshot. Therefore any modification you make to the
     541  
              * returned list will be present inside the JAXB object.
     542  
              * This is why there is not a <CODE>set</CODE> method for the testResource property.
     543  
              *
     544  
              * <p>
     545  
              * For example, to add a new item, do as follows:
     546  
              * <pre>
     547  
              *    getTestResource().add(newItem);
     548  
              * </pre>
     549  
              *
     550  
              *
     551  
              * <p>
     552  
              * Objects of the following type(s) are allowed in the list
     553  
              * {@link Resource }
     554  
              *
     555  
              *
     556  
              */
     557  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     558  
             public List<Resource> getTestResource() {
     559  0
                 if (testResource == null) {
     560  0
                     testResource = new ArrayList<Resource>();
     561  
                 }
     562  0
                 return this.testResource;
     563  
             }
     564  
     
     565  
         }
     566  
     
     567  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html new file mode 100644 index 000000000..b4940d33d --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html @@ -0,0 +1,422 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.CiManagement
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CiManagement
    0%
    0/11
    N/A
    1.143
    CiManagement$Notifiers
    0%
    0/4
    0%
    0/2
    1.143
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlType;
     17  
     
     18  
     
     19  
     /**
     20  
      *  4.0.0
     21  
      *
     22  
      * <p>Java class for CiManagement complex type.
     23  
      *
     24  
      * <p>The following schema fragment specifies the expected content contained within this class.
     25  
      *
     26  
      * <pre>
     27  
      * &lt;complexType name="CiManagement">
     28  
      *   &lt;complexContent>
     29  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     30  
      *       &lt;all>
     31  
      *         &lt;element name="system" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="notifiers" minOccurs="0">
     34  
      *           &lt;complexType>
     35  
      *             &lt;complexContent>
     36  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     37  
      *                 &lt;sequence>
     38  
      *                   &lt;element name="notifier" type="{http://maven.apache.org/POM/4.0.0}Notifier" maxOccurs="unbounded" minOccurs="0"/>
     39  
      *                 &lt;/sequence>
     40  
      *               &lt;/restriction>
     41  
      *             &lt;/complexContent>
     42  
      *           &lt;/complexType>
     43  
      *         &lt;/element>
     44  
      *       &lt;/all>
     45  
      *     &lt;/restriction>
     46  
      *   &lt;/complexContent>
     47  
      * &lt;/complexType>
     48  
      * </pre>
     49  
      *
     50  
      *
     51  
      */
     52  
     @XmlAccessorType(XmlAccessType.FIELD)
     53  
     @XmlType(name = "CiManagement", propOrder = {
     54  
     
     55  
     })
     56  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  0
     public class CiManagement {
     58  
     
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         protected String system;
     61  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     62  
         protected String url;
     63  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     64  
         protected CiManagement.Notifiers notifiers;
     65  
     
     66  
         /**
     67  
          * Gets the value of the system property.
     68  
          *
     69  
          * @return
     70  
          *     possible object is
     71  
          *     {@link String }
     72  
          *
     73  
          */
     74  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     75  
         public String getSystem() {
     76  0
             return system;
     77  
         }
     78  
     
     79  
         /**
     80  
          * Sets the value of the system property.
     81  
          *
     82  
          * @param value
     83  
          *     allowed object is
     84  
          *     {@link String }
     85  
          *
     86  
          */
     87  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     88  
         public void setSystem(String value) {
     89  0
             this.system = value;
     90  0
         }
     91  
     
     92  
         /**
     93  
          * Gets the value of the url property.
     94  
          *
     95  
          * @return
     96  
          *     possible object is
     97  
          *     {@link String }
     98  
          *
     99  
          */
     100  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     101  
         public String getUrl() {
     102  0
             return url;
     103  
         }
     104  
     
     105  
         /**
     106  
          * Sets the value of the url property.
     107  
          *
     108  
          * @param value
     109  
          *     allowed object is
     110  
          *     {@link String }
     111  
          *
     112  
          */
     113  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     114  
         public void setUrl(String value) {
     115  0
             this.url = value;
     116  0
         }
     117  
     
     118  
         /**
     119  
          * Gets the value of the notifiers property.
     120  
          *
     121  
          * @return
     122  
          *     possible object is
     123  
          *     {@link CiManagement.Notifiers }
     124  
          *
     125  
          */
     126  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     127  
         public CiManagement.Notifiers getNotifiers() {
     128  0
             return notifiers;
     129  
         }
     130  
     
     131  
         /**
     132  
          * Sets the value of the notifiers property.
     133  
          *
     134  
          * @param value
     135  
          *     allowed object is
     136  
          *     {@link CiManagement.Notifiers }
     137  
          *
     138  
          */
     139  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     140  
         public void setNotifiers(CiManagement.Notifiers value) {
     141  0
             this.notifiers = value;
     142  0
         }
     143  
     
     144  
     
     145  
         /**
     146  
          * <p>Java class for anonymous complex type.
     147  
          *
     148  
          * <p>The following schema fragment specifies the expected content contained within this class.
     149  
          *
     150  
          * <pre>
     151  
          * &lt;complexType>
     152  
          *   &lt;complexContent>
     153  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     154  
          *       &lt;sequence>
     155  
          *         &lt;element name="notifier" type="{http://maven.apache.org/POM/4.0.0}Notifier" maxOccurs="unbounded" minOccurs="0"/>
     156  
          *       &lt;/sequence>
     157  
          *     &lt;/restriction>
     158  
          *   &lt;/complexContent>
     159  
          * &lt;/complexType>
     160  
          * </pre>
     161  
          *
     162  
          *
     163  
          */
     164  0
         @XmlAccessorType(XmlAccessType.FIELD)
     165  
         @XmlType(name = "", propOrder = {
     166  
             "notifier"
     167  
         })
     168  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     169  0
         public static class Notifiers {
     170  
     
     171  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     172  
             protected List<Notifier> notifier;
     173  
     
     174  
             /**
     175  
              * Gets the value of the notifier property.
     176  
              *
     177  
              * <p>
     178  
              * This accessor method returns a reference to the live list,
     179  
              * not a snapshot. Therefore any modification you make to the
     180  
              * returned list will be present inside the JAXB object.
     181  
              * This is why there is not a <CODE>set</CODE> method for the notifier property.
     182  
              *
     183  
              * <p>
     184  
              * For example, to add a new item, do as follows:
     185  
              * <pre>
     186  
              *    getNotifier().add(newItem);
     187  
              * </pre>
     188  
              *
     189  
              *
     190  
              * <p>
     191  
              * Objects of the following type(s) are allowed in the list
     192  
              * {@link Notifier }
     193  
              *
     194  
              *
     195  
              */
     196  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     197  
             public List<Notifier> getNotifier() {
     198  0
                 if (notifier == null) {
     199  0
                     notifier = new ArrayList<Notifier>();
     200  
                 }
     201  0
                 return this.notifier;
     202  
             }
     203  
     
     204  
         }
     205  
     
     206  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html new file mode 100644 index 000000000..824e5aad2 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html @@ -0,0 +1,852 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Contributor
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Contributor
    7%
    2/26
    N/A
    1.111
    Contributor$Properties
    0%
    0/4
    0%
    0/2
    1.111
    Contributor$Roles
    0%
    0/4
    0%
    0/2
    1.111
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlType;
     18  
     import org.w3c.dom.Element;
     19  
     
     20  
     
     21  
     /**
     22  
      *
     23  
      *         Description of a person who has contributed to the project, but who does
     24  
      *         not have commit privileges. Usually, these contributions come in the
     25  
      *         form of patches submitted.
     26  
      *
     27  
      *
     28  
      * <p>Java class for Contributor complex type.
     29  
      *
     30  
      * <p>The following schema fragment specifies the expected content contained within this class.
     31  
      *
     32  
      * <pre>
     33  
      * &lt;complexType name="Contributor">
     34  
      *   &lt;complexContent>
     35  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     36  
      *       &lt;all>
     37  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *         &lt;element name="email" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     39  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     40  
      *         &lt;element name="organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     41  
      *         &lt;element name="organizationUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     42  
      *         &lt;element name="roles" minOccurs="0">
     43  
      *           &lt;complexType>
     44  
      *             &lt;complexContent>
     45  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     46  
      *                 &lt;sequence>
     47  
      *                   &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     48  
      *                 &lt;/sequence>
     49  
      *               &lt;/restriction>
     50  
      *             &lt;/complexContent>
     51  
      *           &lt;/complexType>
     52  
      *         &lt;/element>
     53  
      *         &lt;element name="timezone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     54  
      *         &lt;element name="properties" minOccurs="0">
     55  
      *           &lt;complexType>
     56  
      *             &lt;complexContent>
     57  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     58  
      *                 &lt;sequence>
     59  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     60  
      *                 &lt;/sequence>
     61  
      *               &lt;/restriction>
     62  
      *             &lt;/complexContent>
     63  
      *           &lt;/complexType>
     64  
      *         &lt;/element>
     65  
      *       &lt;/all>
     66  
      *     &lt;/restriction>
     67  
      *   &lt;/complexContent>
     68  
      * &lt;/complexType>
     69  
      * </pre>
     70  
      *
     71  
      *
     72  
      */
     73  
     @XmlAccessorType(XmlAccessType.FIELD)
     74  
     @XmlType(name = "Contributor", propOrder = {
     75  
     
     76  
     })
     77  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     78  1
     public class Contributor {
     79  
     
     80  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     81  
         protected String name;
     82  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     83  
         protected String email;
     84  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     85  
         protected String url;
     86  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     87  
         protected String organization;
     88  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     89  
         protected String organizationUrl;
     90  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     91  
         protected Contributor.Roles roles;
     92  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     93  
         protected String timezone;
     94  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     95  
         protected Contributor.Properties properties;
     96  
     
     97  
         /**
     98  
          * Gets the value of the name property.
     99  
          *
     100  
          * @return
     101  
          *     possible object is
     102  
          *     {@link String }
     103  
          *
     104  
          */
     105  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     106  
         public String getName() {
     107  0
             return name;
     108  
         }
     109  
     
     110  
         /**
     111  
          * Sets the value of the name property.
     112  
          *
     113  
          * @param value
     114  
          *     allowed object is
     115  
          *     {@link String }
     116  
          *
     117  
          */
     118  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     119  
         public void setName(String value) {
     120  0
             this.name = value;
     121  0
         }
     122  
     
     123  
         /**
     124  
          * Gets the value of the email property.
     125  
          *
     126  
          * @return
     127  
          *     possible object is
     128  
          *     {@link String }
     129  
          *
     130  
          */
     131  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     132  
         public String getEmail() {
     133  0
             return email;
     134  
         }
     135  
     
     136  
         /**
     137  
          * Sets the value of the email property.
     138  
          *
     139  
          * @param value
     140  
          *     allowed object is
     141  
          *     {@link String }
     142  
          *
     143  
          */
     144  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     145  
         public void setEmail(String value) {
     146  0
             this.email = value;
     147  0
         }
     148  
     
     149  
         /**
     150  
          * Gets the value of the url property.
     151  
          *
     152  
          * @return
     153  
          *     possible object is
     154  
          *     {@link String }
     155  
          *
     156  
          */
     157  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     158  
         public String getUrl() {
     159  0
             return url;
     160  
         }
     161  
     
     162  
         /**
     163  
          * Sets the value of the url property.
     164  
          *
     165  
          * @param value
     166  
          *     allowed object is
     167  
          *     {@link String }
     168  
          *
     169  
          */
     170  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     171  
         public void setUrl(String value) {
     172  0
             this.url = value;
     173  0
         }
     174  
     
     175  
         /**
     176  
          * Gets the value of the organization property.
     177  
          *
     178  
          * @return
     179  
          *     possible object is
     180  
          *     {@link String }
     181  
          *
     182  
          */
     183  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     184  
         public String getOrganization() {
     185  0
             return organization;
     186  
         }
     187  
     
     188  
         /**
     189  
          * Sets the value of the organization property.
     190  
          *
     191  
          * @param value
     192  
          *     allowed object is
     193  
          *     {@link String }
     194  
          *
     195  
          */
     196  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     197  
         public void setOrganization(String value) {
     198  0
             this.organization = value;
     199  0
         }
     200  
     
     201  
         /**
     202  
          * Gets the value of the organizationUrl property.
     203  
          *
     204  
          * @return
     205  
          *     possible object is
     206  
          *     {@link String }
     207  
          *
     208  
          */
     209  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     210  
         public String getOrganizationUrl() {
     211  0
             return organizationUrl;
     212  
         }
     213  
     
     214  
         /**
     215  
          * Sets the value of the organizationUrl property.
     216  
          *
     217  
          * @param value
     218  
          *     allowed object is
     219  
          *     {@link String }
     220  
          *
     221  
          */
     222  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     223  
         public void setOrganizationUrl(String value) {
     224  0
             this.organizationUrl = value;
     225  0
         }
     226  
     
     227  
         /**
     228  
          * Gets the value of the roles property.
     229  
          *
     230  
          * @return
     231  
          *     possible object is
     232  
          *     {@link Contributor.Roles }
     233  
          *
     234  
          */
     235  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     236  
         public Contributor.Roles getRoles() {
     237  0
             return roles;
     238  
         }
     239  
     
     240  
         /**
     241  
          * Sets the value of the roles property.
     242  
          *
     243  
          * @param value
     244  
          *     allowed object is
     245  
          *     {@link Contributor.Roles }
     246  
          *
     247  
          */
     248  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     249  
         public void setRoles(Contributor.Roles value) {
     250  0
             this.roles = value;
     251  0
         }
     252  
     
     253  
         /**
     254  
          * Gets the value of the timezone property.
     255  
          *
     256  
          * @return
     257  
          *     possible object is
     258  
          *     {@link String }
     259  
          *
     260  
          */
     261  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     262  
         public String getTimezone() {
     263  0
             return timezone;
     264  
         }
     265  
     
     266  
         /**
     267  
          * Sets the value of the timezone property.
     268  
          *
     269  
          * @param value
     270  
          *     allowed object is
     271  
          *     {@link String }
     272  
          *
     273  
          */
     274  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     275  
         public void setTimezone(String value) {
     276  0
             this.timezone = value;
     277  0
         }
     278  
     
     279  
         /**
     280  
          * Gets the value of the properties property.
     281  
          *
     282  
          * @return
     283  
          *     possible object is
     284  
          *     {@link Contributor.Properties }
     285  
          *
     286  
          */
     287  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     288  
         public Contributor.Properties getProperties() {
     289  0
             return properties;
     290  
         }
     291  
     
     292  
         /**
     293  
          * Sets the value of the properties property.
     294  
          *
     295  
          * @param value
     296  
          *     allowed object is
     297  
          *     {@link Contributor.Properties }
     298  
          *
     299  
          */
     300  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     301  
         public void setProperties(Contributor.Properties value) {
     302  0
             this.properties = value;
     303  0
         }
     304  
     
     305  
     
     306  
         /**
     307  
          * <p>Java class for anonymous complex type.
     308  
          *
     309  
          * <p>The following schema fragment specifies the expected content contained within this class.
     310  
          *
     311  
          * <pre>
     312  
          * &lt;complexType>
     313  
          *   &lt;complexContent>
     314  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     315  
          *       &lt;sequence>
     316  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     317  
          *       &lt;/sequence>
     318  
          *     &lt;/restriction>
     319  
          *   &lt;/complexContent>
     320  
          * &lt;/complexType>
     321  
          * </pre>
     322  
          *
     323  
          *
     324  
          */
     325  
         @XmlAccessorType(XmlAccessType.FIELD)
     326  
         @XmlType(name = "", propOrder = {
     327  
             "any"
     328  
         })
     329  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     330  0
         public static class Properties {
     331  
     
     332  
             @XmlAnyElement
     333  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     334  
             protected List<Element> any;
     335  
     
     336  
             /**
     337  
              * Gets the value of the any property.
     338  
              *
     339  
              * <p>
     340  
              * This accessor method returns a reference to the live list,
     341  
              * not a snapshot. Therefore any modification you make to the
     342  
              * returned list will be present inside the JAXB object.
     343  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     344  
              *
     345  
              * <p>
     346  
              * For example, to add a new item, do as follows:
     347  
              * <pre>
     348  
              *    getAny().add(newItem);
     349  
              * </pre>
     350  
              *
     351  
              *
     352  
              * <p>
     353  
              * Objects of the following type(s) are allowed in the list
     354  
              * {@link Element }
     355  
              *
     356  
              *
     357  
              */
     358  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     359  
             public List<Element> getAny() {
     360  0
                 if (any == null) {
     361  0
                     any = new ArrayList<Element>();
     362  
                 }
     363  0
                 return this.any;
     364  
             }
     365  
     
     366  
         }
     367  
     
     368  
     
     369  
         /**
     370  
          * <p>Java class for anonymous complex type.
     371  
          *
     372  
          * <p>The following schema fragment specifies the expected content contained within this class.
     373  
          *
     374  
          * <pre>
     375  
          * &lt;complexType>
     376  
          *   &lt;complexContent>
     377  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     378  
          *       &lt;sequence>
     379  
          *         &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     380  
          *       &lt;/sequence>
     381  
          *     &lt;/restriction>
     382  
          *   &lt;/complexContent>
     383  
          * &lt;/complexType>
     384  
          * </pre>
     385  
          *
     386  
          *
     387  
          */
     388  1
         @XmlAccessorType(XmlAccessType.FIELD)
     389  
         @XmlType(name = "", propOrder = {
     390  
             "role"
     391  
         })
     392  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     393  0
         public static class Roles {
     394  
     
     395  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     396  
             protected List<String> role;
     397  
     
     398  
             /**
     399  
              * Gets the value of the role property.
     400  
              *
     401  
              * <p>
     402  
              * This accessor method returns a reference to the live list,
     403  
              * not a snapshot. Therefore any modification you make to the
     404  
              * returned list will be present inside the JAXB object.
     405  
              * This is why there is not a <CODE>set</CODE> method for the role property.
     406  
              *
     407  
              * <p>
     408  
              * For example, to add a new item, do as follows:
     409  
              * <pre>
     410  
              *    getRole().add(newItem);
     411  
              * </pre>
     412  
              *
     413  
              *
     414  
              * <p>
     415  
              * Objects of the following type(s) are allowed in the list
     416  
              * {@link String }
     417  
              *
     418  
              *
     419  
              */
     420  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     421  
             public List<String> getRole() {
     422  0
                 if (role == null) {
     423  0
                     role = new ArrayList<String>();
     424  
                 }
     425  0
                 return this.role;
     426  
             }
     427  
     
     428  
         }
     429  
     
     430  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html new file mode 100644 index 000000000..acd46c500 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html @@ -0,0 +1,758 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Dependency
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Dependency
    6%
    2/29
    N/A
    1.053
    Dependency$Exclusions
    25%
    1/4
    0%
    0/2
    1.053
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlElement;
     17  
     import javax.xml.bind.annotation.XmlType;
     18  
     
     19  
     
     20  
     /**
     21  
      *  3.0.0+
     22  
      *
     23  
      * <p>Java class for Dependency complex type.
     24  
      *
     25  
      * <p>The following schema fragment specifies the expected content contained within this class.
     26  
      *
     27  
      * <pre>
     28  
      * &lt;complexType name="Dependency">
     29  
      *   &lt;complexContent>
     30  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     31  
      *       &lt;all>
     32  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="type" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="classifier" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="scope" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *         &lt;element name="systemPath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     39  
      *         &lt;element name="exclusions" minOccurs="0">
     40  
      *           &lt;complexType>
     41  
      *             &lt;complexContent>
     42  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     43  
      *                 &lt;sequence>
     44  
      *                   &lt;element name="exclusion" type="{http://maven.apache.org/POM/4.0.0}Exclusion" maxOccurs="unbounded" minOccurs="0"/>
     45  
      *                 &lt;/sequence>
     46  
      *               &lt;/restriction>
     47  
      *             &lt;/complexContent>
     48  
      *           &lt;/complexType>
     49  
      *         &lt;/element>
     50  
      *         &lt;element name="optional" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     51  
      *       &lt;/all>
     52  
      *     &lt;/restriction>
     53  
      *   &lt;/complexContent>
     54  
      * &lt;/complexType>
     55  
      * </pre>
     56  
      *
     57  
      *
     58  
      */
     59  
     @XmlAccessorType(XmlAccessType.FIELD)
     60  
     @XmlType(name = "Dependency", propOrder = {
     61  
     
     62  
     })
     63  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     64  91
     public class Dependency {
     65  
     
     66  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     67  
         protected String groupId;
     68  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     69  
         protected String artifactId;
     70  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     71  
         protected String version;
     72  
         @XmlElement(defaultValue = "jar")
     73  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     74  
         protected String type;
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         protected String classifier;
     77  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     78  
         protected String scope;
     79  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     80  
         protected String systemPath;
     81  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     82  
         protected Dependency.Exclusions exclusions;
     83  
         @XmlElement(defaultValue = "false")
     84  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     85  
         protected Boolean optional;
     86  
     
     87  
         /**
     88  
          * Gets the value of the groupId property.
     89  
          *
     90  
          * @return
     91  
          *     possible object is
     92  
          *     {@link String }
     93  
          *
     94  
          */
     95  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     96  
         public String getGroupId() {
     97  0
             return groupId;
     98  
         }
     99  
     
     100  
         /**
     101  
          * Sets the value of the groupId property.
     102  
          *
     103  
          * @param value
     104  
          *     allowed object is
     105  
          *     {@link String }
     106  
          *
     107  
          */
     108  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     109  
         public void setGroupId(String value) {
     110  0
             this.groupId = value;
     111  0
         }
     112  
     
     113  
         /**
     114  
          * Gets the value of the artifactId property.
     115  
          *
     116  
          * @return
     117  
          *     possible object is
     118  
          *     {@link String }
     119  
          *
     120  
          */
     121  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     122  
         public String getArtifactId() {
     123  0
             return artifactId;
     124  
         }
     125  
     
     126  
         /**
     127  
          * Sets the value of the artifactId property.
     128  
          *
     129  
          * @param value
     130  
          *     allowed object is
     131  
          *     {@link String }
     132  
          *
     133  
          */
     134  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     135  
         public void setArtifactId(String value) {
     136  0
             this.artifactId = value;
     137  0
         }
     138  
     
     139  
         /**
     140  
          * Gets the value of the version property.
     141  
          *
     142  
          * @return
     143  
          *     possible object is
     144  
          *     {@link String }
     145  
          *
     146  
          */
     147  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     148  
         public String getVersion() {
     149  0
             return version;
     150  
         }
     151  
     
     152  
         /**
     153  
          * Sets the value of the version property.
     154  
          *
     155  
          * @param value
     156  
          *     allowed object is
     157  
          *     {@link String }
     158  
          *
     159  
          */
     160  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     161  
         public void setVersion(String value) {
     162  0
             this.version = value;
     163  0
         }
     164  
     
     165  
         /**
     166  
          * Gets the value of the type property.
     167  
          *
     168  
          * @return
     169  
          *     possible object is
     170  
          *     {@link String }
     171  
          *
     172  
          */
     173  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     174  
         public String getType() {
     175  0
             return type;
     176  
         }
     177  
     
     178  
         /**
     179  
          * Sets the value of the type property.
     180  
          *
     181  
          * @param value
     182  
          *     allowed object is
     183  
          *     {@link String }
     184  
          *
     185  
          */
     186  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     187  
         public void setType(String value) {
     188  0
             this.type = value;
     189  0
         }
     190  
     
     191  
         /**
     192  
          * Gets the value of the classifier property.
     193  
          *
     194  
          * @return
     195  
          *     possible object is
     196  
          *     {@link String }
     197  
          *
     198  
          */
     199  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     200  
         public String getClassifier() {
     201  0
             return classifier;
     202  
         }
     203  
     
     204  
         /**
     205  
          * Sets the value of the classifier property.
     206  
          *
     207  
          * @param value
     208  
          *     allowed object is
     209  
          *     {@link String }
     210  
          *
     211  
          */
     212  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     213  
         public void setClassifier(String value) {
     214  0
             this.classifier = value;
     215  0
         }
     216  
     
     217  
         /**
     218  
          * Gets the value of the scope property.
     219  
          *
     220  
          * @return
     221  
          *     possible object is
     222  
          *     {@link String }
     223  
          *
     224  
          */
     225  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     226  
         public String getScope() {
     227  0
             return scope;
     228  
         }
     229  
     
     230  
         /**
     231  
          * Sets the value of the scope property.
     232  
          *
     233  
          * @param value
     234  
          *     allowed object is
     235  
          *     {@link String }
     236  
          *
     237  
          */
     238  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     239  
         public void setScope(String value) {
     240  0
             this.scope = value;
     241  0
         }
     242  
     
     243  
         /**
     244  
          * Gets the value of the systemPath property.
     245  
          *
     246  
          * @return
     247  
          *     possible object is
     248  
          *     {@link String }
     249  
          *
     250  
          */
     251  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     252  
         public String getSystemPath() {
     253  0
             return systemPath;
     254  
         }
     255  
     
     256  
         /**
     257  
          * Sets the value of the systemPath property.
     258  
          *
     259  
          * @param value
     260  
          *     allowed object is
     261  
          *     {@link String }
     262  
          *
     263  
          */
     264  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     265  
         public void setSystemPath(String value) {
     266  0
             this.systemPath = value;
     267  0
         }
     268  
     
     269  
         /**
     270  
          * Gets the value of the exclusions property.
     271  
          *
     272  
          * @return
     273  
          *     possible object is
     274  
          *     {@link Dependency.Exclusions }
     275  
          *
     276  
          */
     277  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     278  
         public Dependency.Exclusions getExclusions() {
     279  0
             return exclusions;
     280  
         }
     281  
     
     282  
         /**
     283  
          * Sets the value of the exclusions property.
     284  
          *
     285  
          * @param value
     286  
          *     allowed object is
     287  
          *     {@link Dependency.Exclusions }
     288  
          *
     289  
          */
     290  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     291  
         public void setExclusions(Dependency.Exclusions value) {
     292  0
             this.exclusions = value;
     293  0
         }
     294  
     
     295  
         /**
     296  
          * Gets the value of the optional property.
     297  
          *
     298  
          * @return
     299  
          *     possible object is
     300  
          *     {@link Boolean }
     301  
          *
     302  
          */
     303  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     304  
         public Boolean isOptional() {
     305  0
             return optional;
     306  
         }
     307  
     
     308  
         /**
     309  
          * Sets the value of the optional property.
     310  
          *
     311  
          * @param value
     312  
          *     allowed object is
     313  
          *     {@link Boolean }
     314  
          *
     315  
          */
     316  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     317  
         public void setOptional(Boolean value) {
     318  0
             this.optional = value;
     319  0
         }
     320  
     
     321  
     
     322  
         /**
     323  
          * <p>Java class for anonymous complex type.
     324  
          *
     325  
          * <p>The following schema fragment specifies the expected content contained within this class.
     326  
          *
     327  
          * <pre>
     328  
          * &lt;complexType>
     329  
          *   &lt;complexContent>
     330  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     331  
          *       &lt;sequence>
     332  
          *         &lt;element name="exclusion" type="{http://maven.apache.org/POM/4.0.0}Exclusion" maxOccurs="unbounded" minOccurs="0"/>
     333  
          *       &lt;/sequence>
     334  
          *     &lt;/restriction>
     335  
          *   &lt;/complexContent>
     336  
          * &lt;/complexType>
     337  
          * </pre>
     338  
          *
     339  
          *
     340  
          */
     341  91
         @XmlAccessorType(XmlAccessType.FIELD)
     342  
         @XmlType(name = "", propOrder = {
     343  
             "exclusion"
     344  
         })
     345  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     346  4
         public static class Exclusions {
     347  
     
     348  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     349  
             protected List<Exclusion> exclusion;
     350  
     
     351  
             /**
     352  
              * Gets the value of the exclusion property.
     353  
              *
     354  
              * <p>
     355  
              * This accessor method returns a reference to the live list,
     356  
              * not a snapshot. Therefore any modification you make to the
     357  
              * returned list will be present inside the JAXB object.
     358  
              * This is why there is not a <CODE>set</CODE> method for the exclusion property.
     359  
              *
     360  
              * <p>
     361  
              * For example, to add a new item, do as follows:
     362  
              * <pre>
     363  
              *    getExclusion().add(newItem);
     364  
              * </pre>
     365  
              *
     366  
              *
     367  
              * <p>
     368  
              * Objects of the following type(s) are allowed in the list
     369  
              * {@link Exclusion }
     370  
              *
     371  
              *
     372  
              */
     373  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     374  
             public List<Exclusion> getExclusion() {
     375  0
                 if (exclusion == null) {
     376  0
                     exclusion = new ArrayList<Exclusion>();
     377  
                 }
     378  0
                 return this.exclusion;
     379  
             }
     380  
     
     381  
         }
     382  
     
     383  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html new file mode 100644 index 000000000..e1cafd049 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html @@ -0,0 +1,316 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyManagement
    0%
    0/5
    N/A
    1.333
    DependencyManagement$Dependencies
    0%
    0/4
    0%
    0/2
    1.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlType;
     17  
     
     18  
     
     19  
     /**
     20  
      *
     21  
      *         Section for management of default dependency information for use in a group of POMs.
     22  
      *
     23  
      *
     24  
      * <p>Java class for DependencyManagement complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="DependencyManagement">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="dependencies" minOccurs="0">
     34  
      *           &lt;complexType>
     35  
      *             &lt;complexContent>
     36  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     37  
      *                 &lt;sequence>
     38  
      *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     39  
      *                 &lt;/sequence>
     40  
      *               &lt;/restriction>
     41  
      *             &lt;/complexContent>
     42  
      *           &lt;/complexType>
     43  
      *         &lt;/element>
     44  
      *       &lt;/all>
     45  
      *     &lt;/restriction>
     46  
      *   &lt;/complexContent>
     47  
      * &lt;/complexType>
     48  
      * </pre>
     49  
      *
     50  
      *
     51  
      */
     52  
     @XmlAccessorType(XmlAccessType.FIELD)
     53  
     @XmlType(name = "DependencyManagement", propOrder = {
     54  
     
     55  
     })
     56  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  0
     public class DependencyManagement {
     58  
     
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         protected DependencyManagement.Dependencies dependencies;
     61  
     
     62  
         /**
     63  
          * Gets the value of the dependencies property.
     64  
          *
     65  
          * @return
     66  
          *     possible object is
     67  
          *     {@link DependencyManagement.Dependencies }
     68  
          *
     69  
          */
     70  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     71  
         public DependencyManagement.Dependencies getDependencies() {
     72  0
             return dependencies;
     73  
         }
     74  
     
     75  
         /**
     76  
          * Sets the value of the dependencies property.
     77  
          *
     78  
          * @param value
     79  
          *     allowed object is
     80  
          *     {@link DependencyManagement.Dependencies }
     81  
          *
     82  
          */
     83  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     84  
         public void setDependencies(DependencyManagement.Dependencies value) {
     85  0
             this.dependencies = value;
     86  0
         }
     87  
     
     88  
     
     89  
         /**
     90  
          * <p>Java class for anonymous complex type.
     91  
          *
     92  
          * <p>The following schema fragment specifies the expected content contained within this class.
     93  
          *
     94  
          * <pre>
     95  
          * &lt;complexType>
     96  
          *   &lt;complexContent>
     97  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     98  
          *       &lt;sequence>
     99  
          *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     100  
          *       &lt;/sequence>
     101  
          *     &lt;/restriction>
     102  
          *   &lt;/complexContent>
     103  
          * &lt;/complexType>
     104  
          * </pre>
     105  
          *
     106  
          *
     107  
          */
     108  0
         @XmlAccessorType(XmlAccessType.FIELD)
     109  
         @XmlType(name = "", propOrder = {
     110  
             "dependency"
     111  
         })
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  0
         public static class Dependencies {
     114  
     
     115  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     116  
             protected List<Dependency> dependency;
     117  
     
     118  
             /**
     119  
              * Gets the value of the dependency property.
     120  
              *
     121  
              * <p>
     122  
              * This accessor method returns a reference to the live list,
     123  
              * not a snapshot. Therefore any modification you make to the
     124  
              * returned list will be present inside the JAXB object.
     125  
              * This is why there is not a <CODE>set</CODE> method for the dependency property.
     126  
              *
     127  
              * <p>
     128  
              * For example, to add a new item, do as follows:
     129  
              * <pre>
     130  
              *    getDependency().add(newItem);
     131  
              * </pre>
     132  
              *
     133  
              *
     134  
              * <p>
     135  
              * Objects of the following type(s) are allowed in the list
     136  
              * {@link Dependency }
     137  
              *
     138  
              *
     139  
              */
     140  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     141  
             public List<Dependency> getDependency() {
     142  0
                 if (dependency == null) {
     143  0
                     dependency = new ArrayList<Dependency>();
     144  
                 }
     145  0
                 return this.dependency;
     146  
             }
     147  
     
     148  
         }
     149  
     
     150  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html new file mode 100644 index 000000000..ef768f0fe --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html @@ -0,0 +1,398 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DeploymentRepository
    6%
    1/16
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      *
     20  
      *         Repository contains the information needed for deploying to the remote repository.
     21  
      *
     22  
      *
     23  
      * <p>Java class for DeploymentRepository complex type.
     24  
      *
     25  
      * <p>The following schema fragment specifies the expected content contained within this class.
     26  
      *
     27  
      * <pre>
     28  
      * &lt;complexType name="DeploymentRepository">
     29  
      *   &lt;complexContent>
     30  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     31  
      *       &lt;all>
     32  
      *         &lt;element name="uniqueVersion" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     33  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="layout" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *       &lt;/all>
     38  
      *     &lt;/restriction>
     39  
      *   &lt;/complexContent>
     40  
      * &lt;/complexType>
     41  
      * </pre>
     42  
      *
     43  
      *
     44  
      */
     45  
     @XmlAccessorType(XmlAccessType.FIELD)
     46  
     @XmlType(name = "DeploymentRepository", propOrder = {
     47  
     
     48  
     })
     49  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  2
     public class DeploymentRepository {
     51  
     
     52  
         @XmlElement(defaultValue = "true")
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected Boolean uniqueVersion;
     55  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     56  
         protected String id;
     57  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     58  
         protected String name;
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         protected String url;
     61  
         @XmlElement(defaultValue = "default")
     62  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     63  
         protected String layout;
     64  
     
     65  
         /**
     66  
          * Gets the value of the uniqueVersion property.
     67  
          *
     68  
          * @return
     69  
          *     possible object is
     70  
          *     {@link Boolean }
     71  
          *
     72  
          */
     73  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     74  
         public Boolean isUniqueVersion() {
     75  0
             return uniqueVersion;
     76  
         }
     77  
     
     78  
         /**
     79  
          * Sets the value of the uniqueVersion property.
     80  
          *
     81  
          * @param value
     82  
          *     allowed object is
     83  
          *     {@link Boolean }
     84  
          *
     85  
          */
     86  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     87  
         public void setUniqueVersion(Boolean value) {
     88  0
             this.uniqueVersion = value;
     89  0
         }
     90  
     
     91  
         /**
     92  
          * Gets the value of the id property.
     93  
          *
     94  
          * @return
     95  
          *     possible object is
     96  
          *     {@link String }
     97  
          *
     98  
          */
     99  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     100  
         public String getId() {
     101  0
             return id;
     102  
         }
     103  
     
     104  
         /**
     105  
          * Sets the value of the id property.
     106  
          *
     107  
          * @param value
     108  
          *     allowed object is
     109  
          *     {@link String }
     110  
          *
     111  
          */
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  
         public void setId(String value) {
     114  0
             this.id = value;
     115  0
         }
     116  
     
     117  
         /**
     118  
          * Gets the value of the name property.
     119  
          *
     120  
          * @return
     121  
          *     possible object is
     122  
          *     {@link String }
     123  
          *
     124  
          */
     125  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     126  
         public String getName() {
     127  0
             return name;
     128  
         }
     129  
     
     130  
         /**
     131  
          * Sets the value of the name property.
     132  
          *
     133  
          * @param value
     134  
          *     allowed object is
     135  
          *     {@link String }
     136  
          *
     137  
          */
     138  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     139  
         public void setName(String value) {
     140  0
             this.name = value;
     141  0
         }
     142  
     
     143  
         /**
     144  
          * Gets the value of the url property.
     145  
          *
     146  
          * @return
     147  
          *     possible object is
     148  
          *     {@link String }
     149  
          *
     150  
          */
     151  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     152  
         public String getUrl() {
     153  0
             return url;
     154  
         }
     155  
     
     156  
         /**
     157  
          * Sets the value of the url property.
     158  
          *
     159  
          * @param value
     160  
          *     allowed object is
     161  
          *     {@link String }
     162  
          *
     163  
          */
     164  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     165  
         public void setUrl(String value) {
     166  0
             this.url = value;
     167  0
         }
     168  
     
     169  
         /**
     170  
          * Gets the value of the layout property.
     171  
          *
     172  
          * @return
     173  
          *     possible object is
     174  
          *     {@link String }
     175  
          *
     176  
          */
     177  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     178  
         public String getLayout() {
     179  0
             return layout;
     180  
         }
     181  
     
     182  
         /**
     183  
          * Sets the value of the layout property.
     184  
          *
     185  
          * @param value
     186  
          *     allowed object is
     187  
          *     {@link String }
     188  
          *
     189  
          */
     190  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     191  
         public void setLayout(String value) {
     192  0
             this.layout = value;
     193  0
         }
     194  
     
     195  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html new file mode 100644 index 000000000..dc0ab9229 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html @@ -0,0 +1,903 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Developer
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Developer
    6%
    2/29
    N/A
    1.1
    Developer$Properties
    0%
    0/4
    0%
    0/2
    1.1
    Developer$Roles
    0%
    0/4
    0%
    0/2
    1.1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlType;
     18  
     import org.w3c.dom.Element;
     19  
     
     20  
     
     21  
     /**
     22  
      *
     23  
      *         Information about one of the committers on this project.
     24  
      *
     25  
      *
     26  
      * <p>Java class for Developer complex type.
     27  
      *
     28  
      * <p>The following schema fragment specifies the expected content contained within this class.
     29  
      *
     30  
      * <pre>
     31  
      * &lt;complexType name="Developer">
     32  
      *   &lt;complexContent>
     33  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     34  
      *       &lt;all>
     35  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="email" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     39  
      *         &lt;element name="organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     40  
      *         &lt;element name="organizationUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     41  
      *         &lt;element name="roles" minOccurs="0">
     42  
      *           &lt;complexType>
     43  
      *             &lt;complexContent>
     44  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     45  
      *                 &lt;sequence>
     46  
      *                   &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     47  
      *                 &lt;/sequence>
     48  
      *               &lt;/restriction>
     49  
      *             &lt;/complexContent>
     50  
      *           &lt;/complexType>
     51  
      *         &lt;/element>
     52  
      *         &lt;element name="timezone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     53  
      *         &lt;element name="properties" minOccurs="0">
     54  
      *           &lt;complexType>
     55  
      *             &lt;complexContent>
     56  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     57  
      *                 &lt;sequence>
     58  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     59  
      *                 &lt;/sequence>
     60  
      *               &lt;/restriction>
     61  
      *             &lt;/complexContent>
     62  
      *           &lt;/complexType>
     63  
      *         &lt;/element>
     64  
      *       &lt;/all>
     65  
      *     &lt;/restriction>
     66  
      *   &lt;/complexContent>
     67  
      * &lt;/complexType>
     68  
      * </pre>
     69  
      *
     70  
      *
     71  
      */
     72  
     @XmlAccessorType(XmlAccessType.FIELD)
     73  
     @XmlType(name = "Developer", propOrder = {
     74  
     
     75  
     })
     76  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     77  14
     public class Developer {
     78  
     
     79  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     80  
         protected String id;
     81  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     82  
         protected String name;
     83  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     84  
         protected String email;
     85  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     86  
         protected String url;
     87  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     88  
         protected String organization;
     89  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     90  
         protected String organizationUrl;
     91  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     92  
         protected Developer.Roles roles;
     93  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     94  
         protected String timezone;
     95  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     96  
         protected Developer.Properties properties;
     97  
     
     98  
         /**
     99  
          * Gets the value of the id property.
     100  
          *
     101  
          * @return
     102  
          *     possible object is
     103  
          *     {@link String }
     104  
          *
     105  
          */
     106  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     107  
         public String getId() {
     108  0
             return id;
     109  
         }
     110  
     
     111  
         /**
     112  
          * Sets the value of the id property.
     113  
          *
     114  
          * @param value
     115  
          *     allowed object is
     116  
          *     {@link String }
     117  
          *
     118  
          */
     119  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     120  
         public void setId(String value) {
     121  0
             this.id = value;
     122  0
         }
     123  
     
     124  
         /**
     125  
          * Gets the value of the name property.
     126  
          *
     127  
          * @return
     128  
          *     possible object is
     129  
          *     {@link String }
     130  
          *
     131  
          */
     132  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     133  
         public String getName() {
     134  0
             return name;
     135  
         }
     136  
     
     137  
         /**
     138  
          * Sets the value of the name property.
     139  
          *
     140  
          * @param value
     141  
          *     allowed object is
     142  
          *     {@link String }
     143  
          *
     144  
          */
     145  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     146  
         public void setName(String value) {
     147  0
             this.name = value;
     148  0
         }
     149  
     
     150  
         /**
     151  
          * Gets the value of the email property.
     152  
          *
     153  
          * @return
     154  
          *     possible object is
     155  
          *     {@link String }
     156  
          *
     157  
          */
     158  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     159  
         public String getEmail() {
     160  0
             return email;
     161  
         }
     162  
     
     163  
         /**
     164  
          * Sets the value of the email property.
     165  
          *
     166  
          * @param value
     167  
          *     allowed object is
     168  
          *     {@link String }
     169  
          *
     170  
          */
     171  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     172  
         public void setEmail(String value) {
     173  0
             this.email = value;
     174  0
         }
     175  
     
     176  
         /**
     177  
          * Gets the value of the url property.
     178  
          *
     179  
          * @return
     180  
          *     possible object is
     181  
          *     {@link String }
     182  
          *
     183  
          */
     184  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     185  
         public String getUrl() {
     186  0
             return url;
     187  
         }
     188  
     
     189  
         /**
     190  
          * Sets the value of the url property.
     191  
          *
     192  
          * @param value
     193  
          *     allowed object is
     194  
          *     {@link String }
     195  
          *
     196  
          */
     197  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     198  
         public void setUrl(String value) {
     199  0
             this.url = value;
     200  0
         }
     201  
     
     202  
         /**
     203  
          * Gets the value of the organization property.
     204  
          *
     205  
          * @return
     206  
          *     possible object is
     207  
          *     {@link String }
     208  
          *
     209  
          */
     210  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     211  
         public String getOrganization() {
     212  0
             return organization;
     213  
         }
     214  
     
     215  
         /**
     216  
          * Sets the value of the organization property.
     217  
          *
     218  
          * @param value
     219  
          *     allowed object is
     220  
          *     {@link String }
     221  
          *
     222  
          */
     223  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     224  
         public void setOrganization(String value) {
     225  0
             this.organization = value;
     226  0
         }
     227  
     
     228  
         /**
     229  
          * Gets the value of the organizationUrl property.
     230  
          *
     231  
          * @return
     232  
          *     possible object is
     233  
          *     {@link String }
     234  
          *
     235  
          */
     236  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     237  
         public String getOrganizationUrl() {
     238  0
             return organizationUrl;
     239  
         }
     240  
     
     241  
         /**
     242  
          * Sets the value of the organizationUrl property.
     243  
          *
     244  
          * @param value
     245  
          *     allowed object is
     246  
          *     {@link String }
     247  
          *
     248  
          */
     249  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     250  
         public void setOrganizationUrl(String value) {
     251  0
             this.organizationUrl = value;
     252  0
         }
     253  
     
     254  
         /**
     255  
          * Gets the value of the roles property.
     256  
          *
     257  
          * @return
     258  
          *     possible object is
     259  
          *     {@link Developer.Roles }
     260  
          *
     261  
          */
     262  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     263  
         public Developer.Roles getRoles() {
     264  0
             return roles;
     265  
         }
     266  
     
     267  
         /**
     268  
          * Sets the value of the roles property.
     269  
          *
     270  
          * @param value
     271  
          *     allowed object is
     272  
          *     {@link Developer.Roles }
     273  
          *
     274  
          */
     275  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     276  
         public void setRoles(Developer.Roles value) {
     277  0
             this.roles = value;
     278  0
         }
     279  
     
     280  
         /**
     281  
          * Gets the value of the timezone property.
     282  
          *
     283  
          * @return
     284  
          *     possible object is
     285  
          *     {@link String }
     286  
          *
     287  
          */
     288  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     289  
         public String getTimezone() {
     290  0
             return timezone;
     291  
         }
     292  
     
     293  
         /**
     294  
          * Sets the value of the timezone property.
     295  
          *
     296  
          * @param value
     297  
          *     allowed object is
     298  
          *     {@link String }
     299  
          *
     300  
          */
     301  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     302  
         public void setTimezone(String value) {
     303  0
             this.timezone = value;
     304  0
         }
     305  
     
     306  
         /**
     307  
          * Gets the value of the properties property.
     308  
          *
     309  
          * @return
     310  
          *     possible object is
     311  
          *     {@link Developer.Properties }
     312  
          *
     313  
          */
     314  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     315  
         public Developer.Properties getProperties() {
     316  0
             return properties;
     317  
         }
     318  
     
     319  
         /**
     320  
          * Sets the value of the properties property.
     321  
          *
     322  
          * @param value
     323  
          *     allowed object is
     324  
          *     {@link Developer.Properties }
     325  
          *
     326  
          */
     327  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     328  
         public void setProperties(Developer.Properties value) {
     329  0
             this.properties = value;
     330  0
         }
     331  
     
     332  
     
     333  
         /**
     334  
          * <p>Java class for anonymous complex type.
     335  
          *
     336  
          * <p>The following schema fragment specifies the expected content contained within this class.
     337  
          *
     338  
          * <pre>
     339  
          * &lt;complexType>
     340  
          *   &lt;complexContent>
     341  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     342  
          *       &lt;sequence>
     343  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     344  
          *       &lt;/sequence>
     345  
          *     &lt;/restriction>
     346  
          *   &lt;/complexContent>
     347  
          * &lt;/complexType>
     348  
          * </pre>
     349  
          *
     350  
          *
     351  
          */
     352  
         @XmlAccessorType(XmlAccessType.FIELD)
     353  
         @XmlType(name = "", propOrder = {
     354  
             "any"
     355  
         })
     356  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     357  0
         public static class Properties {
     358  
     
     359  
             @XmlAnyElement
     360  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     361  
             protected List<Element> any;
     362  
     
     363  
             /**
     364  
              * Gets the value of the any property.
     365  
              *
     366  
              * <p>
     367  
              * This accessor method returns a reference to the live list,
     368  
              * not a snapshot. Therefore any modification you make to the
     369  
              * returned list will be present inside the JAXB object.
     370  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     371  
              *
     372  
              * <p>
     373  
              * For example, to add a new item, do as follows:
     374  
              * <pre>
     375  
              *    getAny().add(newItem);
     376  
              * </pre>
     377  
              *
     378  
              *
     379  
              * <p>
     380  
              * Objects of the following type(s) are allowed in the list
     381  
              * {@link Element }
     382  
              *
     383  
              *
     384  
              */
     385  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     386  
             public List<Element> getAny() {
     387  0
                 if (any == null) {
     388  0
                     any = new ArrayList<Element>();
     389  
                 }
     390  0
                 return this.any;
     391  
             }
     392  
     
     393  
         }
     394  
     
     395  
     
     396  
         /**
     397  
          * <p>Java class for anonymous complex type.
     398  
          *
     399  
          * <p>The following schema fragment specifies the expected content contained within this class.
     400  
          *
     401  
          * <pre>
     402  
          * &lt;complexType>
     403  
          *   &lt;complexContent>
     404  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     405  
          *       &lt;sequence>
     406  
          *         &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     407  
          *       &lt;/sequence>
     408  
          *     &lt;/restriction>
     409  
          *   &lt;/complexContent>
     410  
          * &lt;/complexType>
     411  
          * </pre>
     412  
          *
     413  
          *
     414  
          */
     415  14
         @XmlAccessorType(XmlAccessType.FIELD)
     416  
         @XmlType(name = "", propOrder = {
     417  
             "role"
     418  
         })
     419  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     420  0
         public static class Roles {
     421  
     
     422  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     423  
             protected List<String> role;
     424  
     
     425  
             /**
     426  
              * Gets the value of the role property.
     427  
              *
     428  
              * <p>
     429  
              * This accessor method returns a reference to the live list,
     430  
              * not a snapshot. Therefore any modification you make to the
     431  
              * returned list will be present inside the JAXB object.
     432  
              * This is why there is not a <CODE>set</CODE> method for the role property.
     433  
              *
     434  
              * <p>
     435  
              * For example, to add a new item, do as follows:
     436  
              * <pre>
     437  
              *    getRole().add(newItem);
     438  
              * </pre>
     439  
              *
     440  
              *
     441  
              * <p>
     442  
              * Objects of the following type(s) are allowed in the list
     443  
              * {@link String }
     444  
              *
     445  
              *
     446  
              */
     447  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     448  
             public List<String> getRole() {
     449  0
                 if (role == null) {
     450  0
                     role = new ArrayList<String>();
     451  
                 }
     452  0
                 return this.role;
     453  
             }
     454  
     
     455  
         }
     456  
     
     457  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html new file mode 100644 index 000000000..a0b1c919e --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html @@ -0,0 +1,451 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DistributionManagement
    5%
    1/19
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *         This elements describes all that pertains to distribution for a project.
     20  
      *         It is primarily used for deployment of artifacts and the site
     21  
      *         produced by the build.
     22  
      *
     23  
      *
     24  
      * <p>Java class for DistributionManagement complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="DistributionManagement">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}DeploymentRepository" minOccurs="0"/>
     34  
      *         &lt;element name="snapshotRepository" type="{http://maven.apache.org/POM/4.0.0}DeploymentRepository" minOccurs="0"/>
     35  
      *         &lt;element name="site" type="{http://maven.apache.org/POM/4.0.0}Site" minOccurs="0"/>
     36  
      *         &lt;element name="downloadUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="relocation" type="{http://maven.apache.org/POM/4.0.0}Relocation" minOccurs="0"/>
     38  
      *         &lt;element name="status" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     39  
      *       &lt;/all>
     40  
      *     &lt;/restriction>
     41  
      *   &lt;/complexContent>
     42  
      * &lt;/complexType>
     43  
      * </pre>
     44  
      *
     45  
      *
     46  
      */
     47  
     @XmlAccessorType(XmlAccessType.FIELD)
     48  
     @XmlType(name = "DistributionManagement", propOrder = {
     49  
     
     50  
     })
     51  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  3
     public class DistributionManagement {
     53  
     
     54  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     55  
         protected DeploymentRepository repository;
     56  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  
         protected DeploymentRepository snapshotRepository;
     58  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     59  
         protected Site site;
     60  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     61  
         protected String downloadUrl;
     62  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     63  
         protected Relocation relocation;
     64  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     65  
         protected String status;
     66  
     
     67  
         /**
     68  
          * Gets the value of the repository property.
     69  
          *
     70  
          * @return
     71  
          *     possible object is
     72  
          *     {@link DeploymentRepository }
     73  
          *
     74  
          */
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         public DeploymentRepository getRepository() {
     77  0
             return repository;
     78  
         }
     79  
     
     80  
         /**
     81  
          * Sets the value of the repository property.
     82  
          *
     83  
          * @param value
     84  
          *     allowed object is
     85  
          *     {@link DeploymentRepository }
     86  
          *
     87  
          */
     88  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     89  
         public void setRepository(DeploymentRepository value) {
     90  0
             this.repository = value;
     91  0
         }
     92  
     
     93  
         /**
     94  
          * Gets the value of the snapshotRepository property.
     95  
          *
     96  
          * @return
     97  
          *     possible object is
     98  
          *     {@link DeploymentRepository }
     99  
          *
     100  
          */
     101  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     102  
         public DeploymentRepository getSnapshotRepository() {
     103  0
             return snapshotRepository;
     104  
         }
     105  
     
     106  
         /**
     107  
          * Sets the value of the snapshotRepository property.
     108  
          *
     109  
          * @param value
     110  
          *     allowed object is
     111  
          *     {@link DeploymentRepository }
     112  
          *
     113  
          */
     114  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     115  
         public void setSnapshotRepository(DeploymentRepository value) {
     116  0
             this.snapshotRepository = value;
     117  0
         }
     118  
     
     119  
         /**
     120  
          * Gets the value of the site property.
     121  
          *
     122  
          * @return
     123  
          *     possible object is
     124  
          *     {@link Site }
     125  
          *
     126  
          */
     127  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     128  
         public Site getSite() {
     129  0
             return site;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Sets the value of the site property.
     134  
          *
     135  
          * @param value
     136  
          *     allowed object is
     137  
          *     {@link Site }
     138  
          *
     139  
          */
     140  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     141  
         public void setSite(Site value) {
     142  0
             this.site = value;
     143  0
         }
     144  
     
     145  
         /**
     146  
          * Gets the value of the downloadUrl property.
     147  
          *
     148  
          * @return
     149  
          *     possible object is
     150  
          *     {@link String }
     151  
          *
     152  
          */
     153  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     154  
         public String getDownloadUrl() {
     155  0
             return downloadUrl;
     156  
         }
     157  
     
     158  
         /**
     159  
          * Sets the value of the downloadUrl property.
     160  
          *
     161  
          * @param value
     162  
          *     allowed object is
     163  
          *     {@link String }
     164  
          *
     165  
          */
     166  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     167  
         public void setDownloadUrl(String value) {
     168  0
             this.downloadUrl = value;
     169  0
         }
     170  
     
     171  
         /**
     172  
          * Gets the value of the relocation property.
     173  
          *
     174  
          * @return
     175  
          *     possible object is
     176  
          *     {@link Relocation }
     177  
          *
     178  
          */
     179  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     180  
         public Relocation getRelocation() {
     181  0
             return relocation;
     182  
         }
     183  
     
     184  
         /**
     185  
          * Sets the value of the relocation property.
     186  
          *
     187  
          * @param value
     188  
          *     allowed object is
     189  
          *     {@link Relocation }
     190  
          *
     191  
          */
     192  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     193  
         public void setRelocation(Relocation value) {
     194  0
             this.relocation = value;
     195  0
         }
     196  
     
     197  
         /**
     198  
          * Gets the value of the status property.
     199  
          *
     200  
          * @return
     201  
          *     possible object is
     202  
          *     {@link String }
     203  
          *
     204  
          */
     205  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     206  
         public String getStatus() {
     207  0
             return status;
     208  
         }
     209  
     
     210  
         /**
     211  
          * Sets the value of the status property.
     212  
          *
     213  
          * @param value
     214  
          *     allowed object is
     215  
          *     {@link String }
     216  
          *
     217  
          */
     218  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     219  
         public void setStatus(String value) {
     220  0
             this.status = value;
     221  0
         }
     222  
     
     223  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html new file mode 100644 index 000000000..8075edf5c --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html @@ -0,0 +1,223 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Exclusion
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Exclusion
    14%
    1/7
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *  4.0.0
     19  
      *
     20  
      * <p>Java class for Exclusion complex type.
     21  
      *
     22  
      * <p>The following schema fragment specifies the expected content contained within this class.
     23  
      *
     24  
      * <pre>
     25  
      * &lt;complexType name="Exclusion">
     26  
      *   &lt;complexContent>
     27  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     28  
      *       &lt;all>
     29  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     30  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *       &lt;/all>
     32  
      *     &lt;/restriction>
     33  
      *   &lt;/complexContent>
     34  
      * &lt;/complexType>
     35  
      * </pre>
     36  
      *
     37  
      *
     38  
      */
     39  
     @XmlAccessorType(XmlAccessType.FIELD)
     40  
     @XmlType(name = "Exclusion", propOrder = {
     41  
     
     42  
     })
     43  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     44  5
     public class Exclusion {
     45  
     
     46  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     47  
         protected String artifactId;
     48  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     49  
         protected String groupId;
     50  
     
     51  
         /**
     52  
          * Gets the value of the artifactId property.
     53  
          *
     54  
          * @return
     55  
          *     possible object is
     56  
          *     {@link String }
     57  
          *
     58  
          */
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         public String getArtifactId() {
     61  0
             return artifactId;
     62  
         }
     63  
     
     64  
         /**
     65  
          * Sets the value of the artifactId property.
     66  
          *
     67  
          * @param value
     68  
          *     allowed object is
     69  
          *     {@link String }
     70  
          *
     71  
          */
     72  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     73  
         public void setArtifactId(String value) {
     74  0
             this.artifactId = value;
     75  0
         }
     76  
     
     77  
         /**
     78  
          * Gets the value of the groupId property.
     79  
          *
     80  
          * @return
     81  
          *     possible object is
     82  
          *     {@link String }
     83  
          *
     84  
          */
     85  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     86  
         public String getGroupId() {
     87  0
             return groupId;
     88  
         }
     89  
     
     90  
         /**
     91  
          * Sets the value of the groupId property.
     92  
          *
     93  
          * @param value
     94  
          *     allowed object is
     95  
          *     {@link String }
     96  
          *
     97  
          */
     98  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     99  
         public void setGroupId(String value) {
     100  0
             this.groupId = value;
     101  0
         }
     102  
     
     103  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html new file mode 100644 index 000000000..7b30054be --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html @@ -0,0 +1,278 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Extension
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Extension
    0%
    0/10
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      * Describes a build extension to utilise.
     19  
      *
     20  
      * <p>Java class for Extension complex type.
     21  
      *
     22  
      * <p>The following schema fragment specifies the expected content contained within this class.
     23  
      *
     24  
      * <pre>
     25  
      * &lt;complexType name="Extension">
     26  
      *   &lt;complexContent>
     27  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     28  
      *       &lt;all>
     29  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     30  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *       &lt;/all>
     33  
      *     &lt;/restriction>
     34  
      *   &lt;/complexContent>
     35  
      * &lt;/complexType>
     36  
      * </pre>
     37  
      *
     38  
      *
     39  
      */
     40  
     @XmlAccessorType(XmlAccessType.FIELD)
     41  
     @XmlType(name = "Extension", propOrder = {
     42  
     
     43  
     })
     44  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     45  0
     public class Extension {
     46  
     
     47  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     48  
         protected String groupId;
     49  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  
         protected String artifactId;
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String version;
     53  
     
     54  
         /**
     55  
          * Gets the value of the groupId property.
     56  
          *
     57  
          * @return
     58  
          *     possible object is
     59  
          *     {@link String }
     60  
          *
     61  
          */
     62  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     63  
         public String getGroupId() {
     64  0
             return groupId;
     65  
         }
     66  
     
     67  
         /**
     68  
          * Sets the value of the groupId property.
     69  
          *
     70  
          * @param value
     71  
          *     allowed object is
     72  
          *     {@link String }
     73  
          *
     74  
          */
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         public void setGroupId(String value) {
     77  0
             this.groupId = value;
     78  0
         }
     79  
     
     80  
         /**
     81  
          * Gets the value of the artifactId property.
     82  
          *
     83  
          * @return
     84  
          *     possible object is
     85  
          *     {@link String }
     86  
          *
     87  
          */
     88  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     89  
         public String getArtifactId() {
     90  0
             return artifactId;
     91  
         }
     92  
     
     93  
         /**
     94  
          * Sets the value of the artifactId property.
     95  
          *
     96  
          * @param value
     97  
          *     allowed object is
     98  
          *     {@link String }
     99  
          *
     100  
          */
     101  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     102  
         public void setArtifactId(String value) {
     103  0
             this.artifactId = value;
     104  0
         }
     105  
     
     106  
         /**
     107  
          * Gets the value of the version property.
     108  
          *
     109  
          * @return
     110  
          *     possible object is
     111  
          *     {@link String }
     112  
          *
     113  
          */
     114  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     115  
         public String getVersion() {
     116  0
             return version;
     117  
         }
     118  
     
     119  
         /**
     120  
          * Sets the value of the version property.
     121  
          *
     122  
          * @param value
     123  
          *     allowed object is
     124  
          *     {@link String }
     125  
          *
     126  
          */
     127  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     128  
         public void setVersion(String value) {
     129  0
             this.version = value;
     130  0
         }
     131  
     
     132  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html new file mode 100644 index 000000000..4d52bead9 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html @@ -0,0 +1,227 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    IssueManagement
    14%
    1/7
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *         Information about the issue tracking (or bug tracking) system used to manage this project.
     20  
      *
     21  
      *
     22  
      * <p>Java class for IssueManagement complex type.
     23  
      *
     24  
      * <p>The following schema fragment specifies the expected content contained within this class.
     25  
      *
     26  
      * <pre>
     27  
      * &lt;complexType name="IssueManagement">
     28  
      *   &lt;complexContent>
     29  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     30  
      *       &lt;all>
     31  
      *         &lt;element name="system" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *       &lt;/all>
     34  
      *     &lt;/restriction>
     35  
      *   &lt;/complexContent>
     36  
      * &lt;/complexType>
     37  
      * </pre>
     38  
      *
     39  
      *
     40  
      */
     41  
     @XmlAccessorType(XmlAccessType.FIELD)
     42  
     @XmlType(name = "IssueManagement", propOrder = {
     43  
     
     44  
     })
     45  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     46  2
     public class IssueManagement {
     47  
     
     48  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     49  
         protected String system;
     50  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     51  
         protected String url;
     52  
     
     53  
         /**
     54  
          * Gets the value of the system property.
     55  
          *
     56  
          * @return
     57  
          *     possible object is
     58  
          *     {@link String }
     59  
          *
     60  
          */
     61  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     62  
         public String getSystem() {
     63  0
             return system;
     64  
         }
     65  
     
     66  
         /**
     67  
          * Sets the value of the system property.
     68  
          *
     69  
          * @param value
     70  
          *     allowed object is
     71  
          *     {@link String }
     72  
          *
     73  
          */
     74  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     75  
         public void setSystem(String value) {
     76  0
             this.system = value;
     77  0
         }
     78  
     
     79  
         /**
     80  
          * Gets the value of the url property.
     81  
          *
     82  
          * @return
     83  
          *     possible object is
     84  
          *     {@link String }
     85  
          *
     86  
          */
     87  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     88  
         public String getUrl() {
     89  0
             return url;
     90  
         }
     91  
     
     92  
         /**
     93  
          * Sets the value of the url property.
     94  
          *
     95  
          * @param value
     96  
          *     allowed object is
     97  
          *     {@link String }
     98  
          *
     99  
          */
     100  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     101  
         public void setUrl(String value) {
     102  0
             this.url = value;
     103  0
         }
     104  
     
     105  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html new file mode 100644 index 000000000..36c5fad0a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html @@ -0,0 +1,341 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.License
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    License
    23%
    3/13
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *         Describes the licenses for this project.  This is used to generate
     20  
      *         the license page of the project's web site, as well as being taken into consideration in other reporting and
     21  
      *         validation. The licenses listed for the project are that of the project itself, and not of dependencies.
     22  
      *
     23  
      *
     24  
      * <p>Java class for License complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="License">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="distribution" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="comments" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *       &lt;/all>
     38  
      *     &lt;/restriction>
     39  
      *   &lt;/complexContent>
     40  
      * &lt;/complexType>
     41  
      * </pre>
     42  
      *
     43  
      *
     44  
      */
     45  
     @XmlAccessorType(XmlAccessType.FIELD)
     46  
     @XmlType(name = "License", propOrder = {
     47  
     
     48  
     })
     49  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  1
     public class License {
     51  
     
     52  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     53  
         protected String name;
     54  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     55  
         protected String url;
     56  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  
         protected String distribution;
     58  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     59  
         protected String comments;
     60  
     
     61  
         /**
     62  
          * Gets the value of the name property.
     63  
          *
     64  
          * @return
     65  
          *     possible object is
     66  
          *     {@link String }
     67  
          *
     68  
          */
     69  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     70  
         public String getName() {
     71  2
             return name;
     72  
         }
     73  
     
     74  
         /**
     75  
          * Sets the value of the name property.
     76  
          *
     77  
          * @param value
     78  
          *     allowed object is
     79  
          *     {@link String }
     80  
          *
     81  
          */
     82  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     83  
         public void setName(String value) {
     84  0
             this.name = value;
     85  0
         }
     86  
     
     87  
         /**
     88  
          * Gets the value of the url property.
     89  
          *
     90  
          * @return
     91  
          *     possible object is
     92  
          *     {@link String }
     93  
          *
     94  
          */
     95  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     96  
         public String getUrl() {
     97  2
             return url;
     98  
         }
     99  
     
     100  
         /**
     101  
          * Sets the value of the url property.
     102  
          *
     103  
          * @param value
     104  
          *     allowed object is
     105  
          *     {@link String }
     106  
          *
     107  
          */
     108  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     109  
         public void setUrl(String value) {
     110  0
             this.url = value;
     111  0
         }
     112  
     
     113  
         /**
     114  
          * Gets the value of the distribution property.
     115  
          *
     116  
          * @return
     117  
          *     possible object is
     118  
          *     {@link String }
     119  
          *
     120  
          */
     121  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     122  
         public String getDistribution() {
     123  0
             return distribution;
     124  
         }
     125  
     
     126  
         /**
     127  
          * Sets the value of the distribution property.
     128  
          *
     129  
          * @param value
     130  
          *     allowed object is
     131  
          *     {@link String }
     132  
          *
     133  
          */
     134  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     135  
         public void setDistribution(String value) {
     136  0
             this.distribution = value;
     137  0
         }
     138  
     
     139  
         /**
     140  
          * Gets the value of the comments property.
     141  
          *
     142  
          * @return
     143  
          *     possible object is
     144  
          *     {@link String }
     145  
          *
     146  
          */
     147  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     148  
         public String getComments() {
     149  0
             return comments;
     150  
         }
     151  
     
     152  
         /**
     153  
          * Sets the value of the comments property.
     154  
          *
     155  
          * @param value
     156  
          *     allowed object is
     157  
          *     {@link String }
     158  
          *
     159  
          */
     160  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     161  
         public void setComments(String value) {
     162  0
             this.comments = value;
     163  0
         }
     164  
     
     165  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html new file mode 100644 index 000000000..f741f27fd --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html @@ -0,0 +1,593 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.MailingList
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    MailingList
    0%
    0/20
    N/A
    1.077
    MailingList$OtherArchives
    0%
    0/4
    0%
    0/2
    1.077
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlType;
     17  
     
     18  
     
     19  
     /**
     20  
      *
     21  
      *         This element describes all of the mailing lists associated with
     22  
      *         a project. The auto-generated site references this information.
     23  
      *
     24  
      *
     25  
      * <p>Java class for MailingList complex type.
     26  
      *
     27  
      * <p>The following schema fragment specifies the expected content contained within this class.
     28  
      *
     29  
      * <pre>
     30  
      * &lt;complexType name="MailingList">
     31  
      *   &lt;complexContent>
     32  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     33  
      *       &lt;all>
     34  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="subscribe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="unsubscribe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="post" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *         &lt;element name="archive" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     39  
      *         &lt;element name="otherArchives" minOccurs="0">
     40  
      *           &lt;complexType>
     41  
      *             &lt;complexContent>
     42  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     43  
      *                 &lt;sequence>
     44  
      *                   &lt;element name="otherArchive" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     45  
      *                 &lt;/sequence>
     46  
      *               &lt;/restriction>
     47  
      *             &lt;/complexContent>
     48  
      *           &lt;/complexType>
     49  
      *         &lt;/element>
     50  
      *       &lt;/all>
     51  
      *     &lt;/restriction>
     52  
      *   &lt;/complexContent>
     53  
      * &lt;/complexType>
     54  
      * </pre>
     55  
      *
     56  
      *
     57  
      */
     58  
     @XmlAccessorType(XmlAccessType.FIELD)
     59  
     @XmlType(name = "MailingList", propOrder = {
     60  
     
     61  
     })
     62  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     63  0
     public class MailingList {
     64  
     
     65  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     66  
         protected String name;
     67  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     68  
         protected String subscribe;
     69  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     70  
         protected String unsubscribe;
     71  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     72  
         protected String post;
     73  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     74  
         protected String archive;
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         protected MailingList.OtherArchives otherArchives;
     77  
     
     78  
         /**
     79  
          * Gets the value of the name property.
     80  
          *
     81  
          * @return
     82  
          *     possible object is
     83  
          *     {@link String }
     84  
          *
     85  
          */
     86  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     87  
         public String getName() {
     88  0
             return name;
     89  
         }
     90  
     
     91  
         /**
     92  
          * Sets the value of the name property.
     93  
          *
     94  
          * @param value
     95  
          *     allowed object is
     96  
          *     {@link String }
     97  
          *
     98  
          */
     99  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     100  
         public void setName(String value) {
     101  0
             this.name = value;
     102  0
         }
     103  
     
     104  
         /**
     105  
          * Gets the value of the subscribe property.
     106  
          *
     107  
          * @return
     108  
          *     possible object is
     109  
          *     {@link String }
     110  
          *
     111  
          */
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  
         public String getSubscribe() {
     114  0
             return subscribe;
     115  
         }
     116  
     
     117  
         /**
     118  
          * Sets the value of the subscribe property.
     119  
          *
     120  
          * @param value
     121  
          *     allowed object is
     122  
          *     {@link String }
     123  
          *
     124  
          */
     125  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     126  
         public void setSubscribe(String value) {
     127  0
             this.subscribe = value;
     128  0
         }
     129  
     
     130  
         /**
     131  
          * Gets the value of the unsubscribe property.
     132  
          *
     133  
          * @return
     134  
          *     possible object is
     135  
          *     {@link String }
     136  
          *
     137  
          */
     138  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     139  
         public String getUnsubscribe() {
     140  0
             return unsubscribe;
     141  
         }
     142  
     
     143  
         /**
     144  
          * Sets the value of the unsubscribe property.
     145  
          *
     146  
          * @param value
     147  
          *     allowed object is
     148  
          *     {@link String }
     149  
          *
     150  
          */
     151  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     152  
         public void setUnsubscribe(String value) {
     153  0
             this.unsubscribe = value;
     154  0
         }
     155  
     
     156  
         /**
     157  
          * Gets the value of the post property.
     158  
          *
     159  
          * @return
     160  
          *     possible object is
     161  
          *     {@link String }
     162  
          *
     163  
          */
     164  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     165  
         public String getPost() {
     166  0
             return post;
     167  
         }
     168  
     
     169  
         /**
     170  
          * Sets the value of the post property.
     171  
          *
     172  
          * @param value
     173  
          *     allowed object is
     174  
          *     {@link String }
     175  
          *
     176  
          */
     177  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     178  
         public void setPost(String value) {
     179  0
             this.post = value;
     180  0
         }
     181  
     
     182  
         /**
     183  
          * Gets the value of the archive property.
     184  
          *
     185  
          * @return
     186  
          *     possible object is
     187  
          *     {@link String }
     188  
          *
     189  
          */
     190  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     191  
         public String getArchive() {
     192  0
             return archive;
     193  
         }
     194  
     
     195  
         /**
     196  
          * Sets the value of the archive property.
     197  
          *
     198  
          * @param value
     199  
          *     allowed object is
     200  
          *     {@link String }
     201  
          *
     202  
          */
     203  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     204  
         public void setArchive(String value) {
     205  0
             this.archive = value;
     206  0
         }
     207  
     
     208  
         /**
     209  
          * Gets the value of the otherArchives property.
     210  
          *
     211  
          * @return
     212  
          *     possible object is
     213  
          *     {@link MailingList.OtherArchives }
     214  
          *
     215  
          */
     216  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     217  
         public MailingList.OtherArchives getOtherArchives() {
     218  0
             return otherArchives;
     219  
         }
     220  
     
     221  
         /**
     222  
          * Sets the value of the otherArchives property.
     223  
          *
     224  
          * @param value
     225  
          *     allowed object is
     226  
          *     {@link MailingList.OtherArchives }
     227  
          *
     228  
          */
     229  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     230  
         public void setOtherArchives(MailingList.OtherArchives value) {
     231  0
             this.otherArchives = value;
     232  0
         }
     233  
     
     234  
     
     235  
         /**
     236  
          * <p>Java class for anonymous complex type.
     237  
          *
     238  
          * <p>The following schema fragment specifies the expected content contained within this class.
     239  
          *
     240  
          * <pre>
     241  
          * &lt;complexType>
     242  
          *   &lt;complexContent>
     243  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     244  
          *       &lt;sequence>
     245  
          *         &lt;element name="otherArchive" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     246  
          *       &lt;/sequence>
     247  
          *     &lt;/restriction>
     248  
          *   &lt;/complexContent>
     249  
          * &lt;/complexType>
     250  
          * </pre>
     251  
          *
     252  
          *
     253  
          */
     254  0
         @XmlAccessorType(XmlAccessType.FIELD)
     255  
         @XmlType(name = "", propOrder = {
     256  
             "otherArchive"
     257  
         })
     258  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     259  0
         public static class OtherArchives {
     260  
     
     261  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     262  
             protected List<String> otherArchive;
     263  
     
     264  
             /**
     265  
              * Gets the value of the otherArchive property.
     266  
              *
     267  
              * <p>
     268  
              * This accessor method returns a reference to the live list,
     269  
              * not a snapshot. Therefore any modification you make to the
     270  
              * returned list will be present inside the JAXB object.
     271  
              * This is why there is not a <CODE>set</CODE> method for the otherArchive property.
     272  
              *
     273  
              * <p>
     274  
              * For example, to add a new item, do as follows:
     275  
              * <pre>
     276  
              *    getOtherArchive().add(newItem);
     277  
              * </pre>
     278  
              *
     279  
              *
     280  
              * <p>
     281  
              * Objects of the following type(s) are allowed in the list
     282  
              * {@link String }
     283  
              *
     284  
              *
     285  
              */
     286  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     287  
             public List<String> getOtherArchive() {
     288  0
                 if (otherArchive == null) {
     289  0
                     otherArchive = new ArrayList<String>();
     290  
                 }
     291  0
                 return this.otherArchive;
     292  
             }
     293  
     
     294  
         }
     295  
     
     296  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html new file mode 100644 index 000000000..2359dc3c7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html @@ -0,0 +1,3335 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Model
    +
     
    + + + + + + + + + + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Model
    9%
    9/92
    N/A
    1.155
    Model$Contributors
    25%
    1/4
    0%
    0/2
    1.155
    Model$Dependencies
    25%
    1/4
    0%
    0/2
    1.155
    Model$Developers
    25%
    1/4
    0%
    0/2
    1.155
    Model$Licenses
    75%
    3/4
    50%
    1/2
    1.155
    Model$MailingLists
    0%
    0/4
    0%
    0/2
    1.155
    Model$Modules
    0%
    0/4
    0%
    0/2
    1.155
    Model$PluginRepositories
    25%
    1/4
    0%
    0/2
    1.155
    Model$Profiles
    25%
    1/4
    0%
    0/2
    1.155
    Model$Properties
    25%
    1/4
    0%
    0/2
    1.155
    Model$Reports
    0%
    0/4
    0%
    0/2
    1.155
    Model$Repositories
    25%
    1/4
    0%
    0/2
    1.155
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlElement;
     18  
     import javax.xml.bind.annotation.XmlType;
     19  
     import org.w3c.dom.Element;
     20  
     
     21  
     
     22  
     /**
     23  
      *
     24  
      *          The <code>&lt;project&gt;</code> element is the root of the descriptor.
     25  
      *          The following table lists all of the possible child elements.
     26  
      *
     27  
      *
     28  
      * <p>Java class for Model complex type.
     29  
      *
     30  
      * <p>The following schema fragment specifies the expected content contained within this class.
     31  
      *
     32  
      * <pre>
     33  
      * &lt;complexType name="Model">
     34  
      *   &lt;complexContent>
     35  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     36  
      *       &lt;all>
     37  
      *         &lt;element name="parent" type="{http://maven.apache.org/POM/4.0.0}Parent" minOccurs="0"/>
     38  
      *         &lt;element name="modelVersion" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     39  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     40  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     41  
      *         &lt;element name="packaging" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     42  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     43  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     44  
      *         &lt;element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     45  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     46  
      *         &lt;element name="prerequisites" type="{http://maven.apache.org/POM/4.0.0}Prerequisites" minOccurs="0"/>
     47  
      *         &lt;element name="issueManagement" type="{http://maven.apache.org/POM/4.0.0}IssueManagement" minOccurs="0"/>
     48  
      *         &lt;element name="ciManagement" type="{http://maven.apache.org/POM/4.0.0}CiManagement" minOccurs="0"/>
     49  
      *         &lt;element name="inceptionYear" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     50  
      *         &lt;element name="mailingLists" minOccurs="0">
     51  
      *           &lt;complexType>
     52  
      *             &lt;complexContent>
     53  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     54  
      *                 &lt;sequence>
     55  
      *                   &lt;element name="mailingList" type="{http://maven.apache.org/POM/4.0.0}MailingList" maxOccurs="unbounded" minOccurs="0"/>
     56  
      *                 &lt;/sequence>
     57  
      *               &lt;/restriction>
     58  
      *             &lt;/complexContent>
     59  
      *           &lt;/complexType>
     60  
      *         &lt;/element>
     61  
      *         &lt;element name="developers" minOccurs="0">
     62  
      *           &lt;complexType>
     63  
      *             &lt;complexContent>
     64  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     65  
      *                 &lt;sequence>
     66  
      *                   &lt;element name="developer" type="{http://maven.apache.org/POM/4.0.0}Developer" maxOccurs="unbounded" minOccurs="0"/>
     67  
      *                 &lt;/sequence>
     68  
      *               &lt;/restriction>
     69  
      *             &lt;/complexContent>
     70  
      *           &lt;/complexType>
     71  
      *         &lt;/element>
     72  
      *         &lt;element name="contributors" minOccurs="0">
     73  
      *           &lt;complexType>
     74  
      *             &lt;complexContent>
     75  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     76  
      *                 &lt;sequence>
     77  
      *                   &lt;element name="contributor" type="{http://maven.apache.org/POM/4.0.0}Contributor" maxOccurs="unbounded" minOccurs="0"/>
     78  
      *                 &lt;/sequence>
     79  
      *               &lt;/restriction>
     80  
      *             &lt;/complexContent>
     81  
      *           &lt;/complexType>
     82  
      *         &lt;/element>
     83  
      *         &lt;element name="licenses" minOccurs="0">
     84  
      *           &lt;complexType>
     85  
      *             &lt;complexContent>
     86  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     87  
      *                 &lt;sequence>
     88  
      *                   &lt;element name="license" type="{http://maven.apache.org/POM/4.0.0}License" maxOccurs="unbounded" minOccurs="0"/>
     89  
      *                 &lt;/sequence>
     90  
      *               &lt;/restriction>
     91  
      *             &lt;/complexContent>
     92  
      *           &lt;/complexType>
     93  
      *         &lt;/element>
     94  
      *         &lt;element name="scm" type="{http://maven.apache.org/POM/4.0.0}Scm" minOccurs="0"/>
     95  
      *         &lt;element name="organization" type="{http://maven.apache.org/POM/4.0.0}Organization" minOccurs="0"/>
     96  
      *         &lt;element name="build" type="{http://maven.apache.org/POM/4.0.0}Build" minOccurs="0"/>
     97  
      *         &lt;element name="profiles" minOccurs="0">
     98  
      *           &lt;complexType>
     99  
      *             &lt;complexContent>
     100  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     101  
      *                 &lt;sequence>
     102  
      *                   &lt;element name="profile" type="{http://maven.apache.org/POM/4.0.0}Profile" maxOccurs="unbounded" minOccurs="0"/>
     103  
      *                 &lt;/sequence>
     104  
      *               &lt;/restriction>
     105  
      *             &lt;/complexContent>
     106  
      *           &lt;/complexType>
     107  
      *         &lt;/element>
     108  
      *         &lt;element name="modules" minOccurs="0">
     109  
      *           &lt;complexType>
     110  
      *             &lt;complexContent>
     111  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     112  
      *                 &lt;sequence>
     113  
      *                   &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     114  
      *                 &lt;/sequence>
     115  
      *               &lt;/restriction>
     116  
      *             &lt;/complexContent>
     117  
      *           &lt;/complexType>
     118  
      *         &lt;/element>
     119  
      *         &lt;element name="repositories" minOccurs="0">
     120  
      *           &lt;complexType>
     121  
      *             &lt;complexContent>
     122  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     123  
      *                 &lt;sequence>
     124  
      *                   &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     125  
      *                 &lt;/sequence>
     126  
      *               &lt;/restriction>
     127  
      *             &lt;/complexContent>
     128  
      *           &lt;/complexType>
     129  
      *         &lt;/element>
     130  
      *         &lt;element name="pluginRepositories" minOccurs="0">
     131  
      *           &lt;complexType>
     132  
      *             &lt;complexContent>
     133  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     134  
      *                 &lt;sequence>
     135  
      *                   &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     136  
      *                 &lt;/sequence>
     137  
      *               &lt;/restriction>
     138  
      *             &lt;/complexContent>
     139  
      *           &lt;/complexType>
     140  
      *         &lt;/element>
     141  
      *         &lt;element name="dependencies" minOccurs="0">
     142  
      *           &lt;complexType>
     143  
      *             &lt;complexContent>
     144  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     145  
      *                 &lt;sequence>
     146  
      *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     147  
      *                 &lt;/sequence>
     148  
      *               &lt;/restriction>
     149  
      *             &lt;/complexContent>
     150  
      *           &lt;/complexType>
     151  
      *         &lt;/element>
     152  
      *         &lt;element name="reports" minOccurs="0">
     153  
      *           &lt;complexType>
     154  
      *             &lt;complexContent>
     155  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     156  
      *                 &lt;sequence>
     157  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     158  
      *                 &lt;/sequence>
     159  
      *               &lt;/restriction>
     160  
      *             &lt;/complexContent>
     161  
      *           &lt;/complexType>
     162  
      *         &lt;/element>
     163  
      *         &lt;element name="reporting" type="{http://maven.apache.org/POM/4.0.0}Reporting" minOccurs="0"/>
     164  
      *         &lt;element name="dependencyManagement" type="{http://maven.apache.org/POM/4.0.0}DependencyManagement" minOccurs="0"/>
     165  
      *         &lt;element name="distributionManagement" type="{http://maven.apache.org/POM/4.0.0}DistributionManagement" minOccurs="0"/>
     166  
      *         &lt;element name="properties" minOccurs="0">
     167  
      *           &lt;complexType>
     168  
      *             &lt;complexContent>
     169  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     170  
      *                 &lt;sequence>
     171  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     172  
      *                 &lt;/sequence>
     173  
      *               &lt;/restriction>
     174  
      *             &lt;/complexContent>
     175  
      *           &lt;/complexType>
     176  
      *         &lt;/element>
     177  
      *       &lt;/all>
     178  
      *     &lt;/restriction>
     179  
      *   &lt;/complexContent>
     180  
      * &lt;/complexType>
     181  
      * </pre>
     182  
      *
     183  
      *
     184  
      */
     185  
     @XmlAccessorType(XmlAccessType.FIELD)
     186  
     @XmlType(name = "Model", propOrder = {
     187  
     
     188  
     })
     189  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     190  7
     public class Model {
     191  
     
     192  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     193  
         protected Parent parent;
     194  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     195  
         protected String modelVersion;
     196  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     197  
         protected String groupId;
     198  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     199  
         protected String artifactId;
     200  
         @XmlElement(defaultValue = "jar")
     201  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     202  
         protected String packaging;
     203  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     204  
         protected String name;
     205  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     206  
         protected String version;
     207  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     208  
         protected String description;
     209  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     210  
         protected String url;
     211  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     212  
         protected Prerequisites prerequisites;
     213  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     214  
         protected IssueManagement issueManagement;
     215  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     216  
         protected CiManagement ciManagement;
     217  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     218  
         protected String inceptionYear;
     219  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     220  
         protected Model.MailingLists mailingLists;
     221  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     222  
         protected Model.Developers developers;
     223  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     224  
         protected Model.Contributors contributors;
     225  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     226  
         protected Model.Licenses licenses;
     227  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     228  
         protected Scm scm;
     229  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     230  
         protected Organization organization;
     231  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     232  
         protected Build build;
     233  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     234  
         protected Model.Profiles profiles;
     235  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     236  
         protected Model.Modules modules;
     237  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     238  
         protected Model.Repositories repositories;
     239  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     240  
         protected Model.PluginRepositories pluginRepositories;
     241  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     242  
         protected Model.Dependencies dependencies;
     243  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     244  
         protected Model.Reports reports;
     245  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     246  
         protected Reporting reporting;
     247  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     248  
         protected DependencyManagement dependencyManagement;
     249  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     250  
         protected DistributionManagement distributionManagement;
     251  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     252  
         protected Model.Properties properties;
     253  
     
     254  
         /**
     255  
          * Gets the value of the parent property.
     256  
          *
     257  
          * @return
     258  
          *     possible object is
     259  
          *     {@link Parent }
     260  
          *
     261  
          */
     262  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     263  
         public Parent getParent() {
     264  0
             return parent;
     265  
         }
     266  
     
     267  
         /**
     268  
          * Sets the value of the parent property.
     269  
          *
     270  
          * @param value
     271  
          *     allowed object is
     272  
          *     {@link Parent }
     273  
          *
     274  
          */
     275  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     276  
         public void setParent(Parent value) {
     277  0
             this.parent = value;
     278  0
         }
     279  
     
     280  
         /**
     281  
          * Gets the value of the modelVersion property.
     282  
          *
     283  
          * @return
     284  
          *     possible object is
     285  
          *     {@link String }
     286  
          *
     287  
          */
     288  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     289  
         public String getModelVersion() {
     290  0
             return modelVersion;
     291  
         }
     292  
     
     293  
         /**
     294  
          * Sets the value of the modelVersion property.
     295  
          *
     296  
          * @param value
     297  
          *     allowed object is
     298  
          *     {@link String }
     299  
          *
     300  
          */
     301  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     302  
         public void setModelVersion(String value) {
     303  0
             this.modelVersion = value;
     304  0
         }
     305  
     
     306  
         /**
     307  
          * Gets the value of the groupId property.
     308  
          *
     309  
          * @return
     310  
          *     possible object is
     311  
          *     {@link String }
     312  
          *
     313  
          */
     314  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     315  
         public String getGroupId() {
     316  7
             return groupId;
     317  
         }
     318  
     
     319  
         /**
     320  
          * Sets the value of the groupId property.
     321  
          *
     322  
          * @param value
     323  
          *     allowed object is
     324  
          *     {@link String }
     325  
          *
     326  
          */
     327  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     328  
         public void setGroupId(String value) {
     329  0
             this.groupId = value;
     330  0
         }
     331  
     
     332  
         /**
     333  
          * Gets the value of the artifactId property.
     334  
          *
     335  
          * @return
     336  
          *     possible object is
     337  
          *     {@link String }
     338  
          *
     339  
          */
     340  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     341  
         public String getArtifactId() {
     342  7
             return artifactId;
     343  
         }
     344  
     
     345  
         /**
     346  
          * Sets the value of the artifactId property.
     347  
          *
     348  
          * @param value
     349  
          *     allowed object is
     350  
          *     {@link String }
     351  
          *
     352  
          */
     353  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     354  
         public void setArtifactId(String value) {
     355  0
             this.artifactId = value;
     356  0
         }
     357  
     
     358  
         /**
     359  
          * Gets the value of the packaging property.
     360  
          *
     361  
          * @return
     362  
          *     possible object is
     363  
          *     {@link String }
     364  
          *
     365  
          */
     366  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     367  
         public String getPackaging() {
     368  0
             return packaging;
     369  
         }
     370  
     
     371  
         /**
     372  
          * Sets the value of the packaging property.
     373  
          *
     374  
          * @param value
     375  
          *     allowed object is
     376  
          *     {@link String }
     377  
          *
     378  
          */
     379  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     380  
         public void setPackaging(String value) {
     381  0
             this.packaging = value;
     382  0
         }
     383  
     
     384  
         /**
     385  
          * Gets the value of the name property.
     386  
          *
     387  
          * @return
     388  
          *     possible object is
     389  
          *     {@link String }
     390  
          *
     391  
          */
     392  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     393  
         public String getName() {
     394  7
             return name;
     395  
         }
     396  
     
     397  
         /**
     398  
          * Sets the value of the name property.
     399  
          *
     400  
          * @param value
     401  
          *     allowed object is
     402  
          *     {@link String }
     403  
          *
     404  
          */
     405  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     406  
         public void setName(String value) {
     407  0
             this.name = value;
     408  0
         }
     409  
     
     410  
         /**
     411  
          * Gets the value of the version property.
     412  
          *
     413  
          * @return
     414  
          *     possible object is
     415  
          *     {@link String }
     416  
          *
     417  
          */
     418  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     419  
         public String getVersion() {
     420  7
             return version;
     421  
         }
     422  
     
     423  
         /**
     424  
          * Sets the value of the version property.
     425  
          *
     426  
          * @param value
     427  
          *     allowed object is
     428  
          *     {@link String }
     429  
          *
     430  
          */
     431  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     432  
         public void setVersion(String value) {
     433  0
             this.version = value;
     434  0
         }
     435  
     
     436  
         /**
     437  
          * Gets the value of the description property.
     438  
          *
     439  
          * @return
     440  
          *     possible object is
     441  
          *     {@link String }
     442  
          *
     443  
          */
     444  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     445  
         public String getDescription() {
     446  10
             return description;
     447  
         }
     448  
     
     449  
         /**
     450  
          * Sets the value of the description property.
     451  
          *
     452  
          * @param value
     453  
          *     allowed object is
     454  
          *     {@link String }
     455  
          *
     456  
          */
     457  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     458  
         public void setDescription(String value) {
     459  0
             this.description = value;
     460  0
         }
     461  
     
     462  
         /**
     463  
          * Gets the value of the url property.
     464  
          *
     465  
          * @return
     466  
          *     possible object is
     467  
          *     {@link String }
     468  
          *
     469  
          */
     470  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     471  
         public String getUrl() {
     472  0
             return url;
     473  
         }
     474  
     
     475  
         /**
     476  
          * Sets the value of the url property.
     477  
          *
     478  
          * @param value
     479  
          *     allowed object is
     480  
          *     {@link String }
     481  
          *
     482  
          */
     483  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     484  
         public void setUrl(String value) {
     485  0
             this.url = value;
     486  0
         }
     487  
     
     488  
         /**
     489  
          * Gets the value of the prerequisites property.
     490  
          *
     491  
          * @return
     492  
          *     possible object is
     493  
          *     {@link Prerequisites }
     494  
          *
     495  
          */
     496  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     497  
         public Prerequisites getPrerequisites() {
     498  0
             return prerequisites;
     499  
         }
     500  
     
     501  
         /**
     502  
          * Sets the value of the prerequisites property.
     503  
          *
     504  
          * @param value
     505  
          *     allowed object is
     506  
          *     {@link Prerequisites }
     507  
          *
     508  
          */
     509  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     510  
         public void setPrerequisites(Prerequisites value) {
     511  0
             this.prerequisites = value;
     512  0
         }
     513  
     
     514  
         /**
     515  
          * Gets the value of the issueManagement property.
     516  
          *
     517  
          * @return
     518  
          *     possible object is
     519  
          *     {@link IssueManagement }
     520  
          *
     521  
          */
     522  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     523  
         public IssueManagement getIssueManagement() {
     524  0
             return issueManagement;
     525  
         }
     526  
     
     527  
         /**
     528  
          * Sets the value of the issueManagement property.
     529  
          *
     530  
          * @param value
     531  
          *     allowed object is
     532  
          *     {@link IssueManagement }
     533  
          *
     534  
          */
     535  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     536  
         public void setIssueManagement(IssueManagement value) {
     537  0
             this.issueManagement = value;
     538  0
         }
     539  
     
     540  
         /**
     541  
          * Gets the value of the ciManagement property.
     542  
          *
     543  
          * @return
     544  
          *     possible object is
     545  
          *     {@link CiManagement }
     546  
          *
     547  
          */
     548  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     549  
         public CiManagement getCiManagement() {
     550  0
             return ciManagement;
     551  
         }
     552  
     
     553  
         /**
     554  
          * Sets the value of the ciManagement property.
     555  
          *
     556  
          * @param value
     557  
          *     allowed object is
     558  
          *     {@link CiManagement }
     559  
          *
     560  
          */
     561  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     562  
         public void setCiManagement(CiManagement value) {
     563  0
             this.ciManagement = value;
     564  0
         }
     565  
     
     566  
         /**
     567  
          * Gets the value of the inceptionYear property.
     568  
          *
     569  
          * @return
     570  
          *     possible object is
     571  
          *     {@link String }
     572  
          *
     573  
          */
     574  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     575  
         public String getInceptionYear() {
     576  0
             return inceptionYear;
     577  
         }
     578  
     
     579  
         /**
     580  
          * Sets the value of the inceptionYear property.
     581  
          *
     582  
          * @param value
     583  
          *     allowed object is
     584  
          *     {@link String }
     585  
          *
     586  
          */
     587  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     588  
         public void setInceptionYear(String value) {
     589  0
             this.inceptionYear = value;
     590  0
         }
     591  
     
     592  
         /**
     593  
          * Gets the value of the mailingLists property.
     594  
          *
     595  
          * @return
     596  
          *     possible object is
     597  
          *     {@link Model.MailingLists }
     598  
          *
     599  
          */
     600  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     601  
         public Model.MailingLists getMailingLists() {
     602  0
             return mailingLists;
     603  
         }
     604  
     
     605  
         /**
     606  
          * Sets the value of the mailingLists property.
     607  
          *
     608  
          * @param value
     609  
          *     allowed object is
     610  
          *     {@link Model.MailingLists }
     611  
          *
     612  
          */
     613  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     614  
         public void setMailingLists(Model.MailingLists value) {
     615  0
             this.mailingLists = value;
     616  0
         }
     617  
     
     618  
         /**
     619  
          * Gets the value of the developers property.
     620  
          *
     621  
          * @return
     622  
          *     possible object is
     623  
          *     {@link Model.Developers }
     624  
          *
     625  
          */
     626  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     627  
         public Model.Developers getDevelopers() {
     628  0
             return developers;
     629  
         }
     630  
     
     631  
         /**
     632  
          * Sets the value of the developers property.
     633  
          *
     634  
          * @param value
     635  
          *     allowed object is
     636  
          *     {@link Model.Developers }
     637  
          *
     638  
          */
     639  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     640  
         public void setDevelopers(Model.Developers value) {
     641  0
             this.developers = value;
     642  0
         }
     643  
     
     644  
         /**
     645  
          * Gets the value of the contributors property.
     646  
          *
     647  
          * @return
     648  
          *     possible object is
     649  
          *     {@link Model.Contributors }
     650  
          *
     651  
          */
     652  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     653  
         public Model.Contributors getContributors() {
     654  0
             return contributors;
     655  
         }
     656  
     
     657  
         /**
     658  
          * Sets the value of the contributors property.
     659  
          *
     660  
          * @param value
     661  
          *     allowed object is
     662  
          *     {@link Model.Contributors }
     663  
          *
     664  
          */
     665  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     666  
         public void setContributors(Model.Contributors value) {
     667  0
             this.contributors = value;
     668  0
         }
     669  
     
     670  
         /**
     671  
          * Gets the value of the licenses property.
     672  
          *
     673  
          * @return
     674  
          *     possible object is
     675  
          *     {@link Model.Licenses }
     676  
          *
     677  
          */
     678  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     679  
         public Model.Licenses getLicenses() {
     680  8
             return licenses;
     681  
         }
     682  
     
     683  
         /**
     684  
          * Sets the value of the licenses property.
     685  
          *
     686  
          * @param value
     687  
          *     allowed object is
     688  
          *     {@link Model.Licenses }
     689  
          *
     690  
          */
     691  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     692  
         public void setLicenses(Model.Licenses value) {
     693  0
             this.licenses = value;
     694  0
         }
     695  
     
     696  
         /**
     697  
          * Gets the value of the scm property.
     698  
          *
     699  
          * @return
     700  
          *     possible object is
     701  
          *     {@link Scm }
     702  
          *
     703  
          */
     704  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     705  
         public Scm getScm() {
     706  0
             return scm;
     707  
         }
     708  
     
     709  
         /**
     710  
          * Sets the value of the scm property.
     711  
          *
     712  
          * @param value
     713  
          *     allowed object is
     714  
          *     {@link Scm }
     715  
          *
     716  
          */
     717  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     718  
         public void setScm(Scm value) {
     719  0
             this.scm = value;
     720  0
         }
     721  
     
     722  
         /**
     723  
          * Gets the value of the organization property.
     724  
          *
     725  
          * @return
     726  
          *     possible object is
     727  
          *     {@link Organization }
     728  
          *
     729  
          */
     730  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     731  
         public Organization getOrganization() {
     732  7
             return organization;
     733  
         }
     734  
     
     735  
         /**
     736  
          * Sets the value of the organization property.
     737  
          *
     738  
          * @param value
     739  
          *     allowed object is
     740  
          *     {@link Organization }
     741  
          *
     742  
          */
     743  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     744  
         public void setOrganization(Organization value) {
     745  0
             this.organization = value;
     746  0
         }
     747  
     
     748  
         /**
     749  
          * Gets the value of the build property.
     750  
          *
     751  
          * @return
     752  
          *     possible object is
     753  
          *     {@link Build }
     754  
          *
     755  
          */
     756  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     757  
         public Build getBuild() {
     758  0
             return build;
     759  
         }
     760  
     
     761  
         /**
     762  
          * Sets the value of the build property.
     763  
          *
     764  
          * @param value
     765  
          *     allowed object is
     766  
          *     {@link Build }
     767  
          *
     768  
          */
     769  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     770  
         public void setBuild(Build value) {
     771  0
             this.build = value;
     772  0
         }
     773  
     
     774  
         /**
     775  
          * Gets the value of the profiles property.
     776  
          *
     777  
          * @return
     778  
          *     possible object is
     779  
          *     {@link Model.Profiles }
     780  
          *
     781  
          */
     782  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     783  
         public Model.Profiles getProfiles() {
     784  0
             return profiles;
     785  
         }
     786  
     
     787  
         /**
     788  
          * Sets the value of the profiles property.
     789  
          *
     790  
          * @param value
     791  
          *     allowed object is
     792  
          *     {@link Model.Profiles }
     793  
          *
     794  
          */
     795  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     796  
         public void setProfiles(Model.Profiles value) {
     797  0
             this.profiles = value;
     798  0
         }
     799  
     
     800  
         /**
     801  
          * Gets the value of the modules property.
     802  
          *
     803  
          * @return
     804  
          *     possible object is
     805  
          *     {@link Model.Modules }
     806  
          *
     807  
          */
     808  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     809  
         public Model.Modules getModules() {
     810  0
             return modules;
     811  
         }
     812  
     
     813  
         /**
     814  
          * Sets the value of the modules property.
     815  
          *
     816  
          * @param value
     817  
          *     allowed object is
     818  
          *     {@link Model.Modules }
     819  
          *
     820  
          */
     821  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     822  
         public void setModules(Model.Modules value) {
     823  0
             this.modules = value;
     824  0
         }
     825  
     
     826  
         /**
     827  
          * Gets the value of the repositories property.
     828  
          *
     829  
          * @return
     830  
          *     possible object is
     831  
          *     {@link Model.Repositories }
     832  
          *
     833  
          */
     834  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     835  
         public Model.Repositories getRepositories() {
     836  0
             return repositories;
     837  
         }
     838  
     
     839  
         /**
     840  
          * Sets the value of the repositories property.
     841  
          *
     842  
          * @param value
     843  
          *     allowed object is
     844  
          *     {@link Model.Repositories }
     845  
          *
     846  
          */
     847  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     848  
         public void setRepositories(Model.Repositories value) {
     849  0
             this.repositories = value;
     850  0
         }
     851  
     
     852  
         /**
     853  
          * Gets the value of the pluginRepositories property.
     854  
          *
     855  
          * @return
     856  
          *     possible object is
     857  
          *     {@link Model.PluginRepositories }
     858  
          *
     859  
          */
     860  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     861  
         public Model.PluginRepositories getPluginRepositories() {
     862  0
             return pluginRepositories;
     863  
         }
     864  
     
     865  
         /**
     866  
          * Sets the value of the pluginRepositories property.
     867  
          *
     868  
          * @param value
     869  
          *     allowed object is
     870  
          *     {@link Model.PluginRepositories }
     871  
          *
     872  
          */
     873  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     874  
         public void setPluginRepositories(Model.PluginRepositories value) {
     875  0
             this.pluginRepositories = value;
     876  0
         }
     877  
     
     878  
         /**
     879  
          * Gets the value of the dependencies property.
     880  
          *
     881  
          * @return
     882  
          *     possible object is
     883  
          *     {@link Model.Dependencies }
     884  
          *
     885  
          */
     886  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     887  
         public Model.Dependencies getDependencies() {
     888  0
             return dependencies;
     889  
         }
     890  
     
     891  
         /**
     892  
          * Sets the value of the dependencies property.
     893  
          *
     894  
          * @param value
     895  
          *     allowed object is
     896  
          *     {@link Model.Dependencies }
     897  
          *
     898  
          */
     899  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     900  
         public void setDependencies(Model.Dependencies value) {
     901  0
             this.dependencies = value;
     902  0
         }
     903  
     
     904  
         /**
     905  
          * Gets the value of the reports property.
     906  
          *
     907  
          * @return
     908  
          *     possible object is
     909  
          *     {@link Model.Reports }
     910  
          *
     911  
          */
     912  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     913  
         public Model.Reports getReports() {
     914  0
             return reports;
     915  
         }
     916  
     
     917  
         /**
     918  
          * Sets the value of the reports property.
     919  
          *
     920  
          * @param value
     921  
          *     allowed object is
     922  
          *     {@link Model.Reports }
     923  
          *
     924  
          */
     925  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     926  
         public void setReports(Model.Reports value) {
     927  0
             this.reports = value;
     928  0
         }
     929  
     
     930  
         /**
     931  
          * Gets the value of the reporting property.
     932  
          *
     933  
          * @return
     934  
          *     possible object is
     935  
          *     {@link Reporting }
     936  
          *
     937  
          */
     938  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     939  
         public Reporting getReporting() {
     940  0
             return reporting;
     941  
         }
     942  
     
     943  
         /**
     944  
          * Sets the value of the reporting property.
     945  
          *
     946  
          * @param value
     947  
          *     allowed object is
     948  
          *     {@link Reporting }
     949  
          *
     950  
          */
     951  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     952  
         public void setReporting(Reporting value) {
     953  0
             this.reporting = value;
     954  0
         }
     955  
     
     956  
         /**
     957  
          * Gets the value of the dependencyManagement property.
     958  
          *
     959  
          * @return
     960  
          *     possible object is
     961  
          *     {@link DependencyManagement }
     962  
          *
     963  
          */
     964  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     965  
         public DependencyManagement getDependencyManagement() {
     966  0
             return dependencyManagement;
     967  
         }
     968  
     
     969  
         /**
     970  
          * Sets the value of the dependencyManagement property.
     971  
          *
     972  
          * @param value
     973  
          *     allowed object is
     974  
          *     {@link DependencyManagement }
     975  
          *
     976  
          */
     977  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     978  
         public void setDependencyManagement(DependencyManagement value) {
     979  0
             this.dependencyManagement = value;
     980  0
         }
     981  
     
     982  
         /**
     983  
          * Gets the value of the distributionManagement property.
     984  
          *
     985  
          * @return
     986  
          *     possible object is
     987  
          *     {@link DistributionManagement }
     988  
          *
     989  
          */
     990  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     991  
         public DistributionManagement getDistributionManagement() {
     992  0
             return distributionManagement;
     993  
         }
     994  
     
     995  
         /**
     996  
          * Sets the value of the distributionManagement property.
     997  
          *
     998  
          * @param value
     999  
          *     allowed object is
     1000  
          *     {@link DistributionManagement }
     1001  
          *
     1002  
          */
     1003  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1004  
         public void setDistributionManagement(DistributionManagement value) {
     1005  0
             this.distributionManagement = value;
     1006  0
         }
     1007  
     
     1008  
         /**
     1009  
          * Gets the value of the properties property.
     1010  
          *
     1011  
          * @return
     1012  
          *     possible object is
     1013  
          *     {@link Model.Properties }
     1014  
          *
     1015  
          */
     1016  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1017  
         public Model.Properties getProperties() {
     1018  0
             return properties;
     1019  
         }
     1020  
     
     1021  
         /**
     1022  
          * Sets the value of the properties property.
     1023  
          *
     1024  
          * @param value
     1025  
          *     allowed object is
     1026  
          *     {@link Model.Properties }
     1027  
          *
     1028  
          */
     1029  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1030  
         public void setProperties(Model.Properties value) {
     1031  0
             this.properties = value;
     1032  0
         }
     1033  
     
     1034  
     
     1035  
         /**
     1036  
          * <p>Java class for anonymous complex type.
     1037  
          *
     1038  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1039  
          *
     1040  
          * <pre>
     1041  
          * &lt;complexType>
     1042  
          *   &lt;complexContent>
     1043  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1044  
          *       &lt;sequence>
     1045  
          *         &lt;element name="contributor" type="{http://maven.apache.org/POM/4.0.0}Contributor" maxOccurs="unbounded" minOccurs="0"/>
     1046  
          *       &lt;/sequence>
     1047  
          *     &lt;/restriction>
     1048  
          *   &lt;/complexContent>
     1049  
          * &lt;/complexType>
     1050  
          * </pre>
     1051  
          *
     1052  
          *
     1053  
          */
     1054  
         @XmlAccessorType(XmlAccessType.FIELD)
     1055  
         @XmlType(name = "", propOrder = {
     1056  
             "contributor"
     1057  
         })
     1058  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1059  1
         public static class Contributors {
     1060  
     
     1061  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1062  
             protected List<Contributor> contributor;
     1063  
     
     1064  
             /**
     1065  
              * Gets the value of the contributor property.
     1066  
              *
     1067  
              * <p>
     1068  
              * This accessor method returns a reference to the live list,
     1069  
              * not a snapshot. Therefore any modification you make to the
     1070  
              * returned list will be present inside the JAXB object.
     1071  
              * This is why there is not a <CODE>set</CODE> method for the contributor property.
     1072  
              *
     1073  
              * <p>
     1074  
              * For example, to add a new item, do as follows:
     1075  
              * <pre>
     1076  
              *    getContributor().add(newItem);
     1077  
              * </pre>
     1078  
              *
     1079  
              *
     1080  
              * <p>
     1081  
              * Objects of the following type(s) are allowed in the list
     1082  
              * {@link Contributor }
     1083  
              *
     1084  
              *
     1085  
              */
     1086  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1087  
             public List<Contributor> getContributor() {
     1088  0
                 if (contributor == null) {
     1089  0
                     contributor = new ArrayList<Contributor>();
     1090  
                 }
     1091  0
                 return this.contributor;
     1092  
             }
     1093  
     
     1094  
         }
     1095  
     
     1096  
     
     1097  
         /**
     1098  
          * <p>Java class for anonymous complex type.
     1099  
          *
     1100  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1101  
          *
     1102  
          * <pre>
     1103  
          * &lt;complexType>
     1104  
          *   &lt;complexContent>
     1105  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1106  
          *       &lt;sequence>
     1107  
          *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     1108  
          *       &lt;/sequence>
     1109  
          *     &lt;/restriction>
     1110  
          *   &lt;/complexContent>
     1111  
          * &lt;/complexType>
     1112  
          * </pre>
     1113  
          *
     1114  
          *
     1115  
          */
     1116  
         @XmlAccessorType(XmlAccessType.FIELD)
     1117  
         @XmlType(name = "", propOrder = {
     1118  
             "dependency"
     1119  
         })
     1120  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1121  7
         public static class Dependencies {
     1122  
     
     1123  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1124  
             protected List<Dependency> dependency;
     1125  
     
     1126  
             /**
     1127  
              * Gets the value of the dependency property.
     1128  
              *
     1129  
              * <p>
     1130  
              * This accessor method returns a reference to the live list,
     1131  
              * not a snapshot. Therefore any modification you make to the
     1132  
              * returned list will be present inside the JAXB object.
     1133  
              * This is why there is not a <CODE>set</CODE> method for the dependency property.
     1134  
              *
     1135  
              * <p>
     1136  
              * For example, to add a new item, do as follows:
     1137  
              * <pre>
     1138  
              *    getDependency().add(newItem);
     1139  
              * </pre>
     1140  
              *
     1141  
              *
     1142  
              * <p>
     1143  
              * Objects of the following type(s) are allowed in the list
     1144  
              * {@link Dependency }
     1145  
              *
     1146  
              *
     1147  
              */
     1148  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1149  
             public List<Dependency> getDependency() {
     1150  0
                 if (dependency == null) {
     1151  0
                     dependency = new ArrayList<Dependency>();
     1152  
                 }
     1153  0
                 return this.dependency;
     1154  
             }
     1155  
     
     1156  
         }
     1157  
     
     1158  
     
     1159  
         /**
     1160  
          * <p>Java class for anonymous complex type.
     1161  
          *
     1162  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1163  
          *
     1164  
          * <pre>
     1165  
          * &lt;complexType>
     1166  
          *   &lt;complexContent>
     1167  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1168  
          *       &lt;sequence>
     1169  
          *         &lt;element name="developer" type="{http://maven.apache.org/POM/4.0.0}Developer" maxOccurs="unbounded" minOccurs="0"/>
     1170  
          *       &lt;/sequence>
     1171  
          *     &lt;/restriction>
     1172  
          *   &lt;/complexContent>
     1173  
          * &lt;/complexType>
     1174  
          * </pre>
     1175  
          *
     1176  
          *
     1177  
          */
     1178  
         @XmlAccessorType(XmlAccessType.FIELD)
     1179  
         @XmlType(name = "", propOrder = {
     1180  
             "developer"
     1181  
         })
     1182  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1183  1
         public static class Developers {
     1184  
     
     1185  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1186  
             protected List<Developer> developer;
     1187  
     
     1188  
             /**
     1189  
              * Gets the value of the developer property.
     1190  
              *
     1191  
              * <p>
     1192  
              * This accessor method returns a reference to the live list,
     1193  
              * not a snapshot. Therefore any modification you make to the
     1194  
              * returned list will be present inside the JAXB object.
     1195  
              * This is why there is not a <CODE>set</CODE> method for the developer property.
     1196  
              *
     1197  
              * <p>
     1198  
              * For example, to add a new item, do as follows:
     1199  
              * <pre>
     1200  
              *    getDeveloper().add(newItem);
     1201  
              * </pre>
     1202  
              *
     1203  
              *
     1204  
              * <p>
     1205  
              * Objects of the following type(s) are allowed in the list
     1206  
              * {@link Developer }
     1207  
              *
     1208  
              *
     1209  
              */
     1210  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1211  
             public List<Developer> getDeveloper() {
     1212  0
                 if (developer == null) {
     1213  0
                     developer = new ArrayList<Developer>();
     1214  
                 }
     1215  0
                 return this.developer;
     1216  
             }
     1217  
     
     1218  
         }
     1219  
     
     1220  
     
     1221  
         /**
     1222  
          * <p>Java class for anonymous complex type.
     1223  
          *
     1224  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1225  
          *
     1226  
          * <pre>
     1227  
          * &lt;complexType>
     1228  
          *   &lt;complexContent>
     1229  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1230  
          *       &lt;sequence>
     1231  
          *         &lt;element name="license" type="{http://maven.apache.org/POM/4.0.0}License" maxOccurs="unbounded" minOccurs="0"/>
     1232  
          *       &lt;/sequence>
     1233  
          *     &lt;/restriction>
     1234  
          *   &lt;/complexContent>
     1235  
          * &lt;/complexType>
     1236  
          * </pre>
     1237  
          *
     1238  
          *
     1239  
          */
     1240  
         @XmlAccessorType(XmlAccessType.FIELD)
     1241  
         @XmlType(name = "", propOrder = {
     1242  
             "license"
     1243  
         })
     1244  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1245  1
         public static class Licenses {
     1246  
     
     1247  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1248  
             protected List<License> license;
     1249  
     
     1250  
             /**
     1251  
              * Gets the value of the license property.
     1252  
              *
     1253  
              * <p>
     1254  
              * This accessor method returns a reference to the live list,
     1255  
              * not a snapshot. Therefore any modification you make to the
     1256  
              * returned list will be present inside the JAXB object.
     1257  
              * This is why there is not a <CODE>set</CODE> method for the license property.
     1258  
              *
     1259  
              * <p>
     1260  
              * For example, to add a new item, do as follows:
     1261  
              * <pre>
     1262  
              *    getLicense().add(newItem);
     1263  
              * </pre>
     1264  
              *
     1265  
              *
     1266  
              * <p>
     1267  
              * Objects of the following type(s) are allowed in the list
     1268  
              * {@link License }
     1269  
              *
     1270  
              *
     1271  
              */
     1272  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1273  
             public List<License> getLicense() {
     1274  1
                 if (license == null) {
     1275  0
                     license = new ArrayList<License>();
     1276  
                 }
     1277  1
                 return this.license;
     1278  
             }
     1279  
     
     1280  
         }
     1281  
     
     1282  
     
     1283  
         /**
     1284  
          * <p>Java class for anonymous complex type.
     1285  
          *
     1286  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1287  
          *
     1288  
          * <pre>
     1289  
          * &lt;complexType>
     1290  
          *   &lt;complexContent>
     1291  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1292  
          *       &lt;sequence>
     1293  
          *         &lt;element name="mailingList" type="{http://maven.apache.org/POM/4.0.0}MailingList" maxOccurs="unbounded" minOccurs="0"/>
     1294  
          *       &lt;/sequence>
     1295  
          *     &lt;/restriction>
     1296  
          *   &lt;/complexContent>
     1297  
          * &lt;/complexType>
     1298  
          * </pre>
     1299  
          *
     1300  
          *
     1301  
          */
     1302  
         @XmlAccessorType(XmlAccessType.FIELD)
     1303  
         @XmlType(name = "", propOrder = {
     1304  
             "mailingList"
     1305  
         })
     1306  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1307  0
         public static class MailingLists {
     1308  
     
     1309  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1310  
             protected List<MailingList> mailingList;
     1311  
     
     1312  
             /**
     1313  
              * Gets the value of the mailingList property.
     1314  
              *
     1315  
              * <p>
     1316  
              * This accessor method returns a reference to the live list,
     1317  
              * not a snapshot. Therefore any modification you make to the
     1318  
              * returned list will be present inside the JAXB object.
     1319  
              * This is why there is not a <CODE>set</CODE> method for the mailingList property.
     1320  
              *
     1321  
              * <p>
     1322  
              * For example, to add a new item, do as follows:
     1323  
              * <pre>
     1324  
              *    getMailingList().add(newItem);
     1325  
              * </pre>
     1326  
              *
     1327  
              *
     1328  
              * <p>
     1329  
              * Objects of the following type(s) are allowed in the list
     1330  
              * {@link MailingList }
     1331  
              *
     1332  
              *
     1333  
              */
     1334  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1335  
             public List<MailingList> getMailingList() {
     1336  0
                 if (mailingList == null) {
     1337  0
                     mailingList = new ArrayList<MailingList>();
     1338  
                 }
     1339  0
                 return this.mailingList;
     1340  
             }
     1341  
     
     1342  
         }
     1343  
     
     1344  
     
     1345  
         /**
     1346  
          * <p>Java class for anonymous complex type.
     1347  
          *
     1348  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1349  
          *
     1350  
          * <pre>
     1351  
          * &lt;complexType>
     1352  
          *   &lt;complexContent>
     1353  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1354  
          *       &lt;sequence>
     1355  
          *         &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     1356  
          *       &lt;/sequence>
     1357  
          *     &lt;/restriction>
     1358  
          *   &lt;/complexContent>
     1359  
          * &lt;/complexType>
     1360  
          * </pre>
     1361  
          *
     1362  
          *
     1363  
          */
     1364  
         @XmlAccessorType(XmlAccessType.FIELD)
     1365  
         @XmlType(name = "", propOrder = {
     1366  
             "module"
     1367  
         })
     1368  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1369  0
         public static class Modules {
     1370  
     
     1371  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1372  
             protected List<String> module;
     1373  
     
     1374  
             /**
     1375  
              * Gets the value of the module property.
     1376  
              *
     1377  
              * <p>
     1378  
              * This accessor method returns a reference to the live list,
     1379  
              * not a snapshot. Therefore any modification you make to the
     1380  
              * returned list will be present inside the JAXB object.
     1381  
              * This is why there is not a <CODE>set</CODE> method for the module property.
     1382  
              *
     1383  
              * <p>
     1384  
              * For example, to add a new item, do as follows:
     1385  
              * <pre>
     1386  
              *    getModule().add(newItem);
     1387  
              * </pre>
     1388  
              *
     1389  
              *
     1390  
              * <p>
     1391  
              * Objects of the following type(s) are allowed in the list
     1392  
              * {@link String }
     1393  
              *
     1394  
              *
     1395  
              */
     1396  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1397  
             public List<String> getModule() {
     1398  0
                 if (module == null) {
     1399  0
                     module = new ArrayList<String>();
     1400  
                 }
     1401  0
                 return this.module;
     1402  
             }
     1403  
     
     1404  
         }
     1405  
     
     1406  
     
     1407  
         /**
     1408  
          * <p>Java class for anonymous complex type.
     1409  
          *
     1410  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1411  
          *
     1412  
          * <pre>
     1413  
          * &lt;complexType>
     1414  
          *   &lt;complexContent>
     1415  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1416  
          *       &lt;sequence>
     1417  
          *         &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     1418  
          *       &lt;/sequence>
     1419  
          *     &lt;/restriction>
     1420  
          *   &lt;/complexContent>
     1421  
          * &lt;/complexType>
     1422  
          * </pre>
     1423  
          *
     1424  
          *
     1425  
          */
     1426  
         @XmlAccessorType(XmlAccessType.FIELD)
     1427  
         @XmlType(name = "", propOrder = {
     1428  
             "pluginRepository"
     1429  
         })
     1430  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1431  1
         public static class PluginRepositories {
     1432  
     
     1433  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1434  
             protected List<Repository> pluginRepository;
     1435  
     
     1436  
             /**
     1437  
              * Gets the value of the pluginRepository property.
     1438  
              *
     1439  
              * <p>
     1440  
              * This accessor method returns a reference to the live list,
     1441  
              * not a snapshot. Therefore any modification you make to the
     1442  
              * returned list will be present inside the JAXB object.
     1443  
              * This is why there is not a <CODE>set</CODE> method for the pluginRepository property.
     1444  
              *
     1445  
              * <p>
     1446  
              * For example, to add a new item, do as follows:
     1447  
              * <pre>
     1448  
              *    getPluginRepository().add(newItem);
     1449  
              * </pre>
     1450  
              *
     1451  
              *
     1452  
              * <p>
     1453  
              * Objects of the following type(s) are allowed in the list
     1454  
              * {@link Repository }
     1455  
              *
     1456  
              *
     1457  
              */
     1458  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1459  
             public List<Repository> getPluginRepository() {
     1460  0
                 if (pluginRepository == null) {
     1461  0
                     pluginRepository = new ArrayList<Repository>();
     1462  
                 }
     1463  0
                 return this.pluginRepository;
     1464  
             }
     1465  
     
     1466  
         }
     1467  
     
     1468  
     
     1469  
         /**
     1470  
          * <p>Java class for anonymous complex type.
     1471  
          *
     1472  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1473  
          *
     1474  
          * <pre>
     1475  
          * &lt;complexType>
     1476  
          *   &lt;complexContent>
     1477  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1478  
          *       &lt;sequence>
     1479  
          *         &lt;element name="profile" type="{http://maven.apache.org/POM/4.0.0}Profile" maxOccurs="unbounded" minOccurs="0"/>
     1480  
          *       &lt;/sequence>
     1481  
          *     &lt;/restriction>
     1482  
          *   &lt;/complexContent>
     1483  
          * &lt;/complexType>
     1484  
          * </pre>
     1485  
          *
     1486  
          *
     1487  
          */
     1488  
         @XmlAccessorType(XmlAccessType.FIELD)
     1489  
         @XmlType(name = "", propOrder = {
     1490  
             "profile"
     1491  
         })
     1492  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1493  6
         public static class Profiles {
     1494  
     
     1495  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1496  
             protected List<Profile> profile;
     1497  
     
     1498  
             /**
     1499  
              * Gets the value of the profile property.
     1500  
              *
     1501  
              * <p>
     1502  
              * This accessor method returns a reference to the live list,
     1503  
              * not a snapshot. Therefore any modification you make to the
     1504  
              * returned list will be present inside the JAXB object.
     1505  
              * This is why there is not a <CODE>set</CODE> method for the profile property.
     1506  
              *
     1507  
              * <p>
     1508  
              * For example, to add a new item, do as follows:
     1509  
              * <pre>
     1510  
              *    getProfile().add(newItem);
     1511  
              * </pre>
     1512  
              *
     1513  
              *
     1514  
              * <p>
     1515  
              * Objects of the following type(s) are allowed in the list
     1516  
              * {@link Profile }
     1517  
              *
     1518  
              *
     1519  
              */
     1520  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1521  
             public List<Profile> getProfile() {
     1522  0
                 if (profile == null) {
     1523  0
                     profile = new ArrayList<Profile>();
     1524  
                 }
     1525  0
                 return this.profile;
     1526  
             }
     1527  
     
     1528  
         }
     1529  
     
     1530  
     
     1531  
         /**
     1532  
          * <p>Java class for anonymous complex type.
     1533  
          *
     1534  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1535  
          *
     1536  
          * <pre>
     1537  
          * &lt;complexType>
     1538  
          *   &lt;complexContent>
     1539  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1540  
          *       &lt;sequence>
     1541  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     1542  
          *       &lt;/sequence>
     1543  
          *     &lt;/restriction>
     1544  
          *   &lt;/complexContent>
     1545  
          * &lt;/complexType>
     1546  
          * </pre>
     1547  
          *
     1548  
          *
     1549  
          */
     1550  
         @XmlAccessorType(XmlAccessType.FIELD)
     1551  
         @XmlType(name = "", propOrder = {
     1552  
             "any"
     1553  
         })
     1554  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1555  3
         public static class Properties {
     1556  
     
     1557  
             @XmlAnyElement
     1558  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1559  
             protected List<Element> any;
     1560  
     
     1561  
             /**
     1562  
              * Gets the value of the any property.
     1563  
              *
     1564  
              * <p>
     1565  
              * This accessor method returns a reference to the live list,
     1566  
              * not a snapshot. Therefore any modification you make to the
     1567  
              * returned list will be present inside the JAXB object.
     1568  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     1569  
              *
     1570  
              * <p>
     1571  
              * For example, to add a new item, do as follows:
     1572  
              * <pre>
     1573  
              *    getAny().add(newItem);
     1574  
              * </pre>
     1575  
              *
     1576  
              *
     1577  
              * <p>
     1578  
              * Objects of the following type(s) are allowed in the list
     1579  
              * {@link Element }
     1580  
              *
     1581  
              *
     1582  
              */
     1583  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1584  
             public List<Element> getAny() {
     1585  0
                 if (any == null) {
     1586  0
                     any = new ArrayList<Element>();
     1587  
                 }
     1588  0
                 return this.any;
     1589  
             }
     1590  
     
     1591  
         }
     1592  
     
     1593  
     
     1594  
         /**
     1595  
          * <p>Java class for anonymous complex type.
     1596  
          *
     1597  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1598  
          *
     1599  
          * <pre>
     1600  
          * &lt;complexType>
     1601  
          *   &lt;complexContent>
     1602  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1603  
          *       &lt;sequence>
     1604  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     1605  
          *       &lt;/sequence>
     1606  
          *     &lt;/restriction>
     1607  
          *   &lt;/complexContent>
     1608  
          * &lt;/complexType>
     1609  
          * </pre>
     1610  
          *
     1611  
          *
     1612  
          */
     1613  
         @XmlAccessorType(XmlAccessType.FIELD)
     1614  
         @XmlType(name = "", propOrder = {
     1615  
             "any"
     1616  
         })
     1617  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1618  0
         public static class Reports {
     1619  
     
     1620  
             @XmlAnyElement
     1621  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1622  
             protected List<Element> any;
     1623  
     
     1624  
             /**
     1625  
              * Gets the value of the any property.
     1626  
              *
     1627  
              * <p>
     1628  
              * This accessor method returns a reference to the live list,
     1629  
              * not a snapshot. Therefore any modification you make to the
     1630  
              * returned list will be present inside the JAXB object.
     1631  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     1632  
              *
     1633  
              * <p>
     1634  
              * For example, to add a new item, do as follows:
     1635  
              * <pre>
     1636  
              *    getAny().add(newItem);
     1637  
              * </pre>
     1638  
              *
     1639  
              *
     1640  
              * <p>
     1641  
              * Objects of the following type(s) are allowed in the list
     1642  
              * {@link Element }
     1643  
              *
     1644  
              *
     1645  
              */
     1646  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1647  
             public List<Element> getAny() {
     1648  0
                 if (any == null) {
     1649  0
                     any = new ArrayList<Element>();
     1650  
                 }
     1651  0
                 return this.any;
     1652  
             }
     1653  
     
     1654  
         }
     1655  
     
     1656  
     
     1657  
         /**
     1658  
          * <p>Java class for anonymous complex type.
     1659  
          *
     1660  
          * <p>The following schema fragment specifies the expected content contained within this class.
     1661  
          *
     1662  
          * <pre>
     1663  
          * &lt;complexType>
     1664  
          *   &lt;complexContent>
     1665  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     1666  
          *       &lt;sequence>
     1667  
          *         &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     1668  
          *       &lt;/sequence>
     1669  
          *     &lt;/restriction>
     1670  
          *   &lt;/complexContent>
     1671  
          * &lt;/complexType>
     1672  
          * </pre>
     1673  
          *
     1674  
          *
     1675  
          */
     1676  7
         @XmlAccessorType(XmlAccessType.FIELD)
     1677  
         @XmlType(name = "", propOrder = {
     1678  
             "repository"
     1679  
         })
     1680  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1681  1
         public static class Repositories {
     1682  
     
     1683  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1684  
             protected List<Repository> repository;
     1685  
     
     1686  
             /**
     1687  
              * Gets the value of the repository property.
     1688  
              *
     1689  
              * <p>
     1690  
              * This accessor method returns a reference to the live list,
     1691  
              * not a snapshot. Therefore any modification you make to the
     1692  
              * returned list will be present inside the JAXB object.
     1693  
              * This is why there is not a <CODE>set</CODE> method for the repository property.
     1694  
              *
     1695  
              * <p>
     1696  
              * For example, to add a new item, do as follows:
     1697  
              * <pre>
     1698  
              *    getRepository().add(newItem);
     1699  
              * </pre>
     1700  
              *
     1701  
              *
     1702  
              * <p>
     1703  
              * Objects of the following type(s) are allowed in the list
     1704  
              * {@link Repository }
     1705  
              *
     1706  
              *
     1707  
              */
     1708  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     1709  
             public List<Repository> getRepository() {
     1710  0
                 if (repository == null) {
     1711  0
                     repository = new ArrayList<Repository>();
     1712  
                 }
     1713  0
                 return this.repository;
     1714  
             }
     1715  
     
     1716  
         }
     1717  
     
     1718  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html new file mode 100644 index 000000000..5cc885f09 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html @@ -0,0 +1,664 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Notifier
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Notifier
    0%
    0/23
    N/A
    1.067
    Notifier$Configuration
    0%
    0/4
    0%
    0/2
    1.067
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlElement;
     18  
     import javax.xml.bind.annotation.XmlType;
     19  
     import org.w3c.dom.Element;
     20  
     
     21  
     
     22  
     /**
     23  
      *
     24  
      *         Configures one method for notifying users/developers when a build breaks.
     25  
      *
     26  
      *
     27  
      * <p>Java class for Notifier complex type.
     28  
      *
     29  
      * <p>The following schema fragment specifies the expected content contained within this class.
     30  
      *
     31  
      * <pre>
     32  
      * &lt;complexType name="Notifier">
     33  
      *   &lt;complexContent>
     34  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     35  
      *       &lt;all>
     36  
      *         &lt;element name="type" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="sendOnError" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     38  
      *         &lt;element name="sendOnFailure" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     39  
      *         &lt;element name="sendOnSuccess" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     40  
      *         &lt;element name="sendOnWarning" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     41  
      *         &lt;element name="address" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     42  
      *         &lt;element name="configuration" minOccurs="0">
     43  
      *           &lt;complexType>
     44  
      *             &lt;complexContent>
     45  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     46  
      *                 &lt;sequence>
     47  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     48  
      *                 &lt;/sequence>
     49  
      *               &lt;/restriction>
     50  
      *             &lt;/complexContent>
     51  
      *           &lt;/complexType>
     52  
      *         &lt;/element>
     53  
      *       &lt;/all>
     54  
      *     &lt;/restriction>
     55  
      *   &lt;/complexContent>
     56  
      * &lt;/complexType>
     57  
      * </pre>
     58  
      *
     59  
      *
     60  
      */
     61  
     @XmlAccessorType(XmlAccessType.FIELD)
     62  
     @XmlType(name = "Notifier", propOrder = {
     63  
     
     64  
     })
     65  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     66  0
     public class Notifier {
     67  
     
     68  
         @XmlElement(defaultValue = "mail")
     69  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     70  
         protected String type;
     71  
         @XmlElement(defaultValue = "true")
     72  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     73  
         protected Boolean sendOnError;
     74  
         @XmlElement(defaultValue = "true")
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         protected Boolean sendOnFailure;
     77  
         @XmlElement(defaultValue = "true")
     78  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     79  
         protected Boolean sendOnSuccess;
     80  
         @XmlElement(defaultValue = "true")
     81  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     82  
         protected Boolean sendOnWarning;
     83  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     84  
         protected String address;
     85  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     86  
         protected Notifier.Configuration configuration;
     87  
     
     88  
         /**
     89  
          * Gets the value of the type property.
     90  
          *
     91  
          * @return
     92  
          *     possible object is
     93  
          *     {@link String }
     94  
          *
     95  
          */
     96  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     97  
         public String getType() {
     98  0
             return type;
     99  
         }
     100  
     
     101  
         /**
     102  
          * Sets the value of the type property.
     103  
          *
     104  
          * @param value
     105  
          *     allowed object is
     106  
          *     {@link String }
     107  
          *
     108  
          */
     109  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     110  
         public void setType(String value) {
     111  0
             this.type = value;
     112  0
         }
     113  
     
     114  
         /**
     115  
          * Gets the value of the sendOnError property.
     116  
          *
     117  
          * @return
     118  
          *     possible object is
     119  
          *     {@link Boolean }
     120  
          *
     121  
          */
     122  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     123  
         public Boolean isSendOnError() {
     124  0
             return sendOnError;
     125  
         }
     126  
     
     127  
         /**
     128  
          * Sets the value of the sendOnError property.
     129  
          *
     130  
          * @param value
     131  
          *     allowed object is
     132  
          *     {@link Boolean }
     133  
          *
     134  
          */
     135  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     136  
         public void setSendOnError(Boolean value) {
     137  0
             this.sendOnError = value;
     138  0
         }
     139  
     
     140  
         /**
     141  
          * Gets the value of the sendOnFailure property.
     142  
          *
     143  
          * @return
     144  
          *     possible object is
     145  
          *     {@link Boolean }
     146  
          *
     147  
          */
     148  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     149  
         public Boolean isSendOnFailure() {
     150  0
             return sendOnFailure;
     151  
         }
     152  
     
     153  
         /**
     154  
          * Sets the value of the sendOnFailure property.
     155  
          *
     156  
          * @param value
     157  
          *     allowed object is
     158  
          *     {@link Boolean }
     159  
          *
     160  
          */
     161  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     162  
         public void setSendOnFailure(Boolean value) {
     163  0
             this.sendOnFailure = value;
     164  0
         }
     165  
     
     166  
         /**
     167  
          * Gets the value of the sendOnSuccess property.
     168  
          *
     169  
          * @return
     170  
          *     possible object is
     171  
          *     {@link Boolean }
     172  
          *
     173  
          */
     174  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     175  
         public Boolean isSendOnSuccess() {
     176  0
             return sendOnSuccess;
     177  
         }
     178  
     
     179  
         /**
     180  
          * Sets the value of the sendOnSuccess property.
     181  
          *
     182  
          * @param value
     183  
          *     allowed object is
     184  
          *     {@link Boolean }
     185  
          *
     186  
          */
     187  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     188  
         public void setSendOnSuccess(Boolean value) {
     189  0
             this.sendOnSuccess = value;
     190  0
         }
     191  
     
     192  
         /**
     193  
          * Gets the value of the sendOnWarning property.
     194  
          *
     195  
          * @return
     196  
          *     possible object is
     197  
          *     {@link Boolean }
     198  
          *
     199  
          */
     200  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     201  
         public Boolean isSendOnWarning() {
     202  0
             return sendOnWarning;
     203  
         }
     204  
     
     205  
         /**
     206  
          * Sets the value of the sendOnWarning property.
     207  
          *
     208  
          * @param value
     209  
          *     allowed object is
     210  
          *     {@link Boolean }
     211  
          *
     212  
          */
     213  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     214  
         public void setSendOnWarning(Boolean value) {
     215  0
             this.sendOnWarning = value;
     216  0
         }
     217  
     
     218  
         /**
     219  
          * Gets the value of the address property.
     220  
          *
     221  
          * @return
     222  
          *     possible object is
     223  
          *     {@link String }
     224  
          *
     225  
          */
     226  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     227  
         public String getAddress() {
     228  0
             return address;
     229  
         }
     230  
     
     231  
         /**
     232  
          * Sets the value of the address property.
     233  
          *
     234  
          * @param value
     235  
          *     allowed object is
     236  
          *     {@link String }
     237  
          *
     238  
          */
     239  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     240  
         public void setAddress(String value) {
     241  0
             this.address = value;
     242  0
         }
     243  
     
     244  
         /**
     245  
          * Gets the value of the configuration property.
     246  
          *
     247  
          * @return
     248  
          *     possible object is
     249  
          *     {@link Notifier.Configuration }
     250  
          *
     251  
          */
     252  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     253  
         public Notifier.Configuration getConfiguration() {
     254  0
             return configuration;
     255  
         }
     256  
     
     257  
         /**
     258  
          * Sets the value of the configuration property.
     259  
          *
     260  
          * @param value
     261  
          *     allowed object is
     262  
          *     {@link Notifier.Configuration }
     263  
          *
     264  
          */
     265  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     266  
         public void setConfiguration(Notifier.Configuration value) {
     267  0
             this.configuration = value;
     268  0
         }
     269  
     
     270  
     
     271  
         /**
     272  
          * <p>Java class for anonymous complex type.
     273  
          *
     274  
          * <p>The following schema fragment specifies the expected content contained within this class.
     275  
          *
     276  
          * <pre>
     277  
          * &lt;complexType>
     278  
          *   &lt;complexContent>
     279  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     280  
          *       &lt;sequence>
     281  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     282  
          *       &lt;/sequence>
     283  
          *     &lt;/restriction>
     284  
          *   &lt;/complexContent>
     285  
          * &lt;/complexType>
     286  
          * </pre>
     287  
          *
     288  
          *
     289  
          */
     290  0
         @XmlAccessorType(XmlAccessType.FIELD)
     291  
         @XmlType(name = "", propOrder = {
     292  
             "any"
     293  
         })
     294  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     295  0
         public static class Configuration {
     296  
     
     297  
             @XmlAnyElement
     298  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     299  
             protected List<Element> any;
     300  
     
     301  
             /**
     302  
              * Gets the value of the any property.
     303  
              *
     304  
              * <p>
     305  
              * This accessor method returns a reference to the live list,
     306  
              * not a snapshot. Therefore any modification you make to the
     307  
              * returned list will be present inside the JAXB object.
     308  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     309  
              *
     310  
              * <p>
     311  
              * For example, to add a new item, do as follows:
     312  
              * <pre>
     313  
              *    getAny().add(newItem);
     314  
              * </pre>
     315  
              *
     316  
              *
     317  
              * <p>
     318  
              * Objects of the following type(s) are allowed in the list
     319  
              * {@link Element }
     320  
              *
     321  
              *
     322  
              */
     323  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     324  
             public List<Element> getAny() {
     325  0
                 if (any == null) {
     326  0
                     any = new ArrayList<Element>();
     327  
                 }
     328  0
                 return this.any;
     329  
             }
     330  
     
     331  
         }
     332  
     
     333  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html new file mode 100644 index 000000000..60e6308cc --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html @@ -0,0 +1,1399 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ObjectFactory
    0%
    0/89
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.xml.bind.JAXBElement;
     12  
     import javax.xml.bind.annotation.XmlElementDecl;
     13  
     import javax.xml.bind.annotation.XmlRegistry;
     14  
     import javax.xml.namespace.QName;
     15  
     
     16  
     
     17  
     /**
     18  
      * This object contains factory methods for each
     19  
      * Java content interface and Java element interface
     20  
      * generated in the org.owasp.dependencycheck.analyzer.pom.generated package.
     21  
      * <p>An ObjectFactory allows you to programmatically
     22  
      * construct new instances of the Java representation
     23  
      * for XML content. The Java representation of XML
     24  
      * content can consist of schema derived interfaces
     25  
      * and classes representing the binding of schema
     26  
      * type definitions, element declarations and model
     27  
      * groups.  Factory methods for each of these are
     28  
      * provided in this class.
     29  
      *
     30  
      */
     31  
     @XmlRegistry
     32  
     public class ObjectFactory {
     33  
     
     34  0
         private final static QName _Project_QNAME = new QName("http://maven.apache.org/POM/4.0.0", "project");
     35  
     
     36  
         /**
     37  
          * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.owasp.dependencycheck.analyzer.pom.generated
     38  
          *
     39  
          */
     40  0
         public ObjectFactory() {
     41  0
         }
     42  
     
     43  
         /**
     44  
          * Create an instance of {@link Model }
     45  
          *
     46  
          */
     47  
         public Model createModel() {
     48  0
             return new Model();
     49  
         }
     50  
     
     51  
         /**
     52  
          * Create an instance of {@link Reporting }
     53  
          *
     54  
          */
     55  
         public Reporting createReporting() {
     56  0
             return new Reporting();
     57  
         }
     58  
     
     59  
         /**
     60  
          * Create an instance of {@link Exclusion }
     61  
          *
     62  
          */
     63  
         public Exclusion createExclusion() {
     64  0
             return new Exclusion();
     65  
         }
     66  
     
     67  
         /**
     68  
          * Create an instance of {@link Build.Filters }
     69  
          *
     70  
          */
     71  
         public Build.Filters createBuildFilters() {
     72  0
             return new Build.Filters();
     73  
         }
     74  
     
     75  
         /**
     76  
          * Create an instance of {@link ReportPlugin.Configuration }
     77  
          *
     78  
          */
     79  
         public ReportPlugin.Configuration createReportPluginConfiguration() {
     80  0
             return new ReportPlugin.Configuration();
     81  
         }
     82  
     
     83  
         /**
     84  
          * Create an instance of {@link IssueManagement }
     85  
          *
     86  
          */
     87  
         public IssueManagement createIssueManagement() {
     88  0
             return new IssueManagement();
     89  
         }
     90  
     
     91  
         /**
     92  
          * Create an instance of {@link PluginExecution.Goals }
     93  
          *
     94  
          */
     95  
         public PluginExecution.Goals createPluginExecutionGoals() {
     96  0
             return new PluginExecution.Goals();
     97  
         }
     98  
     
     99  
         /**
     100  
          * Create an instance of {@link ReportPlugin }
     101  
          *
     102  
          */
     103  
         public ReportPlugin createReportPlugin() {
     104  0
             return new ReportPlugin();
     105  
         }
     106  
     
     107  
         /**
     108  
          * Create an instance of {@link Profile.Properties }
     109  
          *
     110  
          */
     111  
         public Profile.Properties createProfileProperties() {
     112  0
             return new Profile.Properties();
     113  
         }
     114  
     
     115  
         /**
     116  
          * Create an instance of {@link ActivationProperty }
     117  
          *
     118  
          */
     119  
         public ActivationProperty createActivationProperty() {
     120  0
             return new ActivationProperty();
     121  
         }
     122  
     
     123  
         /**
     124  
          * Create an instance of {@link Build.Extensions }
     125  
          *
     126  
          */
     127  
         public Build.Extensions createBuildExtensions() {
     128  0
             return new Build.Extensions();
     129  
         }
     130  
     
     131  
         /**
     132  
          * Create an instance of {@link Plugin }
     133  
          *
     134  
          */
     135  
         public Plugin createPlugin() {
     136  0
             return new Plugin();
     137  
         }
     138  
     
     139  
         /**
     140  
          * Create an instance of {@link Profile.Dependencies }
     141  
          *
     142  
          */
     143  
         public Profile.Dependencies createProfileDependencies() {
     144  0
             return new Profile.Dependencies();
     145  
         }
     146  
     
     147  
         /**
     148  
          * Create an instance of {@link Resource.Excludes }
     149  
          *
     150  
          */
     151  
         public Resource.Excludes createResourceExcludes() {
     152  0
             return new Resource.Excludes();
     153  
         }
     154  
     
     155  
         /**
     156  
          * Create an instance of {@link Scm }
     157  
          *
     158  
          */
     159  
         public Scm createScm() {
     160  0
             return new Scm();
     161  
         }
     162  
     
     163  
         /**
     164  
          * Create an instance of {@link ReportSet.Reports }
     165  
          *
     166  
          */
     167  
         public ReportSet.Reports createReportSetReports() {
     168  0
             return new ReportSet.Reports();
     169  
         }
     170  
     
     171  
         /**
     172  
          * Create an instance of {@link PluginManagement }
     173  
          *
     174  
          */
     175  
         public PluginManagement createPluginManagement() {
     176  0
             return new PluginManagement();
     177  
         }
     178  
     
     179  
         /**
     180  
          * Create an instance of {@link CiManagement.Notifiers }
     181  
          *
     182  
          */
     183  
         public CiManagement.Notifiers createCiManagementNotifiers() {
     184  0
             return new CiManagement.Notifiers();
     185  
         }
     186  
     
     187  
         /**
     188  
          * Create an instance of {@link Model.PluginRepositories }
     189  
          *
     190  
          */
     191  
         public Model.PluginRepositories createModelPluginRepositories() {
     192  0
             return new Model.PluginRepositories();
     193  
         }
     194  
     
     195  
         /**
     196  
          * Create an instance of {@link ActivationFile }
     197  
          *
     198  
          */
     199  
         public ActivationFile createActivationFile() {
     200  0
             return new ActivationFile();
     201  
         }
     202  
     
     203  
         /**
     204  
          * Create an instance of {@link Developer.Roles }
     205  
          *
     206  
          */
     207  
         public Developer.Roles createDeveloperRoles() {
     208  0
             return new Developer.Roles();
     209  
         }
     210  
     
     211  
         /**
     212  
          * Create an instance of {@link DeploymentRepository }
     213  
          *
     214  
          */
     215  
         public DeploymentRepository createDeploymentRepository() {
     216  0
             return new DeploymentRepository();
     217  
         }
     218  
     
     219  
         /**
     220  
          * Create an instance of {@link Contributor.Properties }
     221  
          *
     222  
          */
     223  
         public Contributor.Properties createContributorProperties() {
     224  0
             return new Contributor.Properties();
     225  
         }
     226  
     
     227  
         /**
     228  
          * Create an instance of {@link DistributionManagement }
     229  
          *
     230  
          */
     231  
         public DistributionManagement createDistributionManagement() {
     232  0
             return new DistributionManagement();
     233  
         }
     234  
     
     235  
         /**
     236  
          * Create an instance of {@link RepositoryPolicy }
     237  
          *
     238  
          */
     239  
         public RepositoryPolicy createRepositoryPolicy() {
     240  0
             return new RepositoryPolicy();
     241  
         }
     242  
     
     243  
         /**
     244  
          * Create an instance of {@link Model.Licenses }
     245  
          *
     246  
          */
     247  
         public Model.Licenses createModelLicenses() {
     248  0
             return new Model.Licenses();
     249  
         }
     250  
     
     251  
         /**
     252  
          * Create an instance of {@link Build.TestResources }
     253  
          *
     254  
          */
     255  
         public Build.TestResources createBuildTestResources() {
     256  0
             return new Build.TestResources();
     257  
         }
     258  
     
     259  
         /**
     260  
          * Create an instance of {@link Plugin.Goals }
     261  
          *
     262  
          */
     263  
         public Plugin.Goals createPluginGoals() {
     264  0
             return new Plugin.Goals();
     265  
         }
     266  
     
     267  
         /**
     268  
          * Create an instance of {@link Plugin.Executions }
     269  
          *
     270  
          */
     271  
         public Plugin.Executions createPluginExecutions() {
     272  0
             return new Plugin.Executions();
     273  
         }
     274  
     
     275  
         /**
     276  
          * Create an instance of {@link DependencyManagement }
     277  
          *
     278  
          */
     279  
         public DependencyManagement createDependencyManagement() {
     280  0
             return new DependencyManagement();
     281  
         }
     282  
     
     283  
         /**
     284  
          * Create an instance of {@link Model.Reports }
     285  
          *
     286  
          */
     287  
         public Model.Reports createModelReports() {
     288  0
             return new Model.Reports();
     289  
         }
     290  
     
     291  
         /**
     292  
          * Create an instance of {@link Build }
     293  
          *
     294  
          */
     295  
         public Build createBuild() {
     296  0
             return new Build();
     297  
         }
     298  
     
     299  
         /**
     300  
          * Create an instance of {@link Build.Resources }
     301  
          *
     302  
          */
     303  
         public Build.Resources createBuildResources() {
     304  0
             return new Build.Resources();
     305  
         }
     306  
     
     307  
         /**
     308  
          * Create an instance of {@link DependencyManagement.Dependencies }
     309  
          *
     310  
          */
     311  
         public DependencyManagement.Dependencies createDependencyManagementDependencies() {
     312  0
             return new DependencyManagement.Dependencies();
     313  
         }
     314  
     
     315  
         /**
     316  
          * Create an instance of {@link Model.Contributors }
     317  
          *
     318  
          */
     319  
         public Model.Contributors createModelContributors() {
     320  0
             return new Model.Contributors();
     321  
         }
     322  
     
     323  
         /**
     324  
          * Create an instance of {@link Build.Plugins }
     325  
          *
     326  
          */
     327  
         public Build.Plugins createBuildPlugins() {
     328  0
             return new Build.Plugins();
     329  
         }
     330  
     
     331  
         /**
     332  
          * Create an instance of {@link Extension }
     333  
          *
     334  
          */
     335  
         public Extension createExtension() {
     336  0
             return new Extension();
     337  
         }
     338  
     
     339  
         /**
     340  
          * Create an instance of {@link Organization }
     341  
          *
     342  
          */
     343  
         public Organization createOrganization() {
     344  0
             return new Organization();
     345  
         }
     346  
     
     347  
         /**
     348  
          * Create an instance of {@link License }
     349  
          *
     350  
          */
     351  
         public License createLicense() {
     352  0
             return new License();
     353  
         }
     354  
     
     355  
         /**
     356  
          * Create an instance of {@link Activation }
     357  
          *
     358  
          */
     359  
         public Activation createActivation() {
     360  0
             return new Activation();
     361  
         }
     362  
     
     363  
         /**
     364  
          * Create an instance of {@link ActivationOS }
     365  
          *
     366  
          */
     367  
         public ActivationOS createActivationOS() {
     368  0
             return new ActivationOS();
     369  
         }
     370  
     
     371  
         /**
     372  
          * Create an instance of {@link Model.Modules }
     373  
          *
     374  
          */
     375  
         public Model.Modules createModelModules() {
     376  0
             return new Model.Modules();
     377  
         }
     378  
     
     379  
         /**
     380  
          * Create an instance of {@link Profile.Repositories }
     381  
          *
     382  
          */
     383  
         public Profile.Repositories createProfileRepositories() {
     384  0
             return new Profile.Repositories();
     385  
         }
     386  
     
     387  
         /**
     388  
          * Create an instance of {@link Model.Dependencies }
     389  
          *
     390  
          */
     391  
         public Model.Dependencies createModelDependencies() {
     392  0
             return new Model.Dependencies();
     393  
         }
     394  
     
     395  
         /**
     396  
          * Create an instance of {@link BuildBase.Resources }
     397  
          *
     398  
          */
     399  
         public BuildBase.Resources createBuildBaseResources() {
     400  0
             return new BuildBase.Resources();
     401  
         }
     402  
     
     403  
         /**
     404  
          * Create an instance of {@link Site }
     405  
          *
     406  
          */
     407  
         public Site createSite() {
     408  0
             return new Site();
     409  
         }
     410  
     
     411  
         /**
     412  
          * Create an instance of {@link ReportPlugin.ReportSets }
     413  
          *
     414  
          */
     415  
         public ReportPlugin.ReportSets createReportPluginReportSets() {
     416  0
             return new ReportPlugin.ReportSets();
     417  
         }
     418  
     
     419  
         /**
     420  
          * Create an instance of {@link Plugin.Configuration }
     421  
          *
     422  
          */
     423  
         public Plugin.Configuration createPluginConfiguration() {
     424  0
             return new Plugin.Configuration();
     425  
         }
     426  
     
     427  
         /**
     428  
          * Create an instance of {@link Profile.PluginRepositories }
     429  
          *
     430  
          */
     431  
         public Profile.PluginRepositories createProfilePluginRepositories() {
     432  0
             return new Profile.PluginRepositories();
     433  
         }
     434  
     
     435  
         /**
     436  
          * Create an instance of {@link Dependency.Exclusions }
     437  
          *
     438  
          */
     439  
         public Dependency.Exclusions createDependencyExclusions() {
     440  0
             return new Dependency.Exclusions();
     441  
         }
     442  
     
     443  
         /**
     444  
          * Create an instance of {@link Prerequisites }
     445  
          *
     446  
          */
     447  
         public Prerequisites createPrerequisites() {
     448  0
             return new Prerequisites();
     449  
         }
     450  
     
     451  
         /**
     452  
          * Create an instance of {@link Model.Profiles }
     453  
          *
     454  
          */
     455  
         public Model.Profiles createModelProfiles() {
     456  0
             return new Model.Profiles();
     457  
         }
     458  
     
     459  
         /**
     460  
          * Create an instance of {@link Model.Properties }
     461  
          *
     462  
          */
     463  
         public Model.Properties createModelProperties() {
     464  0
             return new Model.Properties();
     465  
         }
     466  
     
     467  
         /**
     468  
          * Create an instance of {@link BuildBase.Plugins }
     469  
          *
     470  
          */
     471  
         public BuildBase.Plugins createBuildBasePlugins() {
     472  0
             return new BuildBase.Plugins();
     473  
         }
     474  
     
     475  
         /**
     476  
          * Create an instance of {@link BuildBase }
     477  
          *
     478  
          */
     479  
         public BuildBase createBuildBase() {
     480  0
             return new BuildBase();
     481  
         }
     482  
     
     483  
         /**
     484  
          * Create an instance of {@link PluginManagement.Plugins }
     485  
          *
     486  
          */
     487  
         public PluginManagement.Plugins createPluginManagementPlugins() {
     488  0
             return new PluginManagement.Plugins();
     489  
         }
     490  
     
     491  
         /**
     492  
          * Create an instance of {@link Contributor.Roles }
     493  
          *
     494  
          */
     495  
         public Contributor.Roles createContributorRoles() {
     496  0
             return new Contributor.Roles();
     497  
         }
     498  
     
     499  
         /**
     500  
          * Create an instance of {@link MailingList }
     501  
          *
     502  
          */
     503  
         public MailingList createMailingList() {
     504  0
             return new MailingList();
     505  
         }
     506  
     
     507  
         /**
     508  
          * Create an instance of {@link CiManagement }
     509  
          *
     510  
          */
     511  
         public CiManagement createCiManagement() {
     512  0
             return new CiManagement();
     513  
         }
     514  
     
     515  
         /**
     516  
          * Create an instance of {@link Model.MailingLists }
     517  
          *
     518  
          */
     519  
         public Model.MailingLists createModelMailingLists() {
     520  0
             return new Model.MailingLists();
     521  
         }
     522  
     
     523  
         /**
     524  
          * Create an instance of {@link Model.Developers }
     525  
          *
     526  
          */
     527  
         public Model.Developers createModelDevelopers() {
     528  0
             return new Model.Developers();
     529  
         }
     530  
     
     531  
         /**
     532  
          * Create an instance of {@link Reporting.Plugins }
     533  
          *
     534  
          */
     535  
         public Reporting.Plugins createReportingPlugins() {
     536  0
             return new Reporting.Plugins();
     537  
         }
     538  
     
     539  
         /**
     540  
          * Create an instance of {@link Contributor }
     541  
          *
     542  
          */
     543  
         public Contributor createContributor() {
     544  0
             return new Contributor();
     545  
         }
     546  
     
     547  
         /**
     548  
          * Create an instance of {@link Profile.Reports }
     549  
          *
     550  
          */
     551  
         public Profile.Reports createProfileReports() {
     552  0
             return new Profile.Reports();
     553  
         }
     554  
     
     555  
         /**
     556  
          * Create an instance of {@link BuildBase.TestResources }
     557  
          *
     558  
          */
     559  
         public BuildBase.TestResources createBuildBaseTestResources() {
     560  0
             return new BuildBase.TestResources();
     561  
         }
     562  
     
     563  
         /**
     564  
          * Create an instance of {@link Developer.Properties }
     565  
          *
     566  
          */
     567  
         public Developer.Properties createDeveloperProperties() {
     568  0
             return new Developer.Properties();
     569  
         }
     570  
     
     571  
         /**
     572  
          * Create an instance of {@link Plugin.Dependencies }
     573  
          *
     574  
          */
     575  
         public Plugin.Dependencies createPluginDependencies() {
     576  0
             return new Plugin.Dependencies();
     577  
         }
     578  
     
     579  
         /**
     580  
          * Create an instance of {@link Resource.Includes }
     581  
          *
     582  
          */
     583  
         public Resource.Includes createResourceIncludes() {
     584  0
             return new Resource.Includes();
     585  
         }
     586  
     
     587  
         /**
     588  
          * Create an instance of {@link Resource }
     589  
          *
     590  
          */
     591  
         public Resource createResource() {
     592  0
             return new Resource();
     593  
         }
     594  
     
     595  
         /**
     596  
          * Create an instance of {@link Repository }
     597  
          *
     598  
          */
     599  
         public Repository createRepository() {
     600  0
             return new Repository();
     601  
         }
     602  
     
     603  
         /**
     604  
          * Create an instance of {@link BuildBase.Filters }
     605  
          *
     606  
          */
     607  
         public BuildBase.Filters createBuildBaseFilters() {
     608  0
             return new BuildBase.Filters();
     609  
         }
     610  
     
     611  
         /**
     612  
          * Create an instance of {@link ReportSet }
     613  
          *
     614  
          */
     615  
         public ReportSet createReportSet() {
     616  0
             return new ReportSet();
     617  
         }
     618  
     
     619  
         /**
     620  
          * Create an instance of {@link Notifier.Configuration }
     621  
          *
     622  
          */
     623  
         public Notifier.Configuration createNotifierConfiguration() {
     624  0
             return new Notifier.Configuration();
     625  
         }
     626  
     
     627  
         /**
     628  
          * Create an instance of {@link Model.Repositories }
     629  
          *
     630  
          */
     631  
         public Model.Repositories createModelRepositories() {
     632  0
             return new Model.Repositories();
     633  
         }
     634  
     
     635  
         /**
     636  
          * Create an instance of {@link Dependency }
     637  
          *
     638  
          */
     639  
         public Dependency createDependency() {
     640  0
             return new Dependency();
     641  
         }
     642  
     
     643  
         /**
     644  
          * Create an instance of {@link Relocation }
     645  
          *
     646  
          */
     647  
         public Relocation createRelocation() {
     648  0
             return new Relocation();
     649  
         }
     650  
     
     651  
         /**
     652  
          * Create an instance of {@link MailingList.OtherArchives }
     653  
          *
     654  
          */
     655  
         public MailingList.OtherArchives createMailingListOtherArchives() {
     656  0
             return new MailingList.OtherArchives();
     657  
         }
     658  
     
     659  
         /**
     660  
          * Create an instance of {@link ReportSet.Configuration }
     661  
          *
     662  
          */
     663  
         public ReportSet.Configuration createReportSetConfiguration() {
     664  0
             return new ReportSet.Configuration();
     665  
         }
     666  
     
     667  
         /**
     668  
          * Create an instance of {@link Profile }
     669  
          *
     670  
          */
     671  
         public Profile createProfile() {
     672  0
             return new Profile();
     673  
         }
     674  
     
     675  
         /**
     676  
          * Create an instance of {@link PluginExecution.Configuration }
     677  
          *
     678  
          */
     679  
         public PluginExecution.Configuration createPluginExecutionConfiguration() {
     680  0
             return new PluginExecution.Configuration();
     681  
         }
     682  
     
     683  
         /**
     684  
          * Create an instance of {@link Notifier }
     685  
          *
     686  
          */
     687  
         public Notifier createNotifier() {
     688  0
             return new Notifier();
     689  
         }
     690  
     
     691  
         /**
     692  
          * Create an instance of {@link Parent }
     693  
          *
     694  
          */
     695  
         public Parent createParent() {
     696  0
             return new Parent();
     697  
         }
     698  
     
     699  
         /**
     700  
          * Create an instance of {@link PluginExecution }
     701  
          *
     702  
          */
     703  
         public PluginExecution createPluginExecution() {
     704  0
             return new PluginExecution();
     705  
         }
     706  
     
     707  
         /**
     708  
          * Create an instance of {@link Developer }
     709  
          *
     710  
          */
     711  
         public Developer createDeveloper() {
     712  0
             return new Developer();
     713  
         }
     714  
     
     715  
         /**
     716  
          * Create an instance of {@link Profile.Modules }
     717  
          *
     718  
          */
     719  
         public Profile.Modules createProfileModules() {
     720  0
             return new Profile.Modules();
     721  
         }
     722  
     
     723  
         /**
     724  
          * Create an instance of {@link JAXBElement }{@code <}{@link Model }{@code >}}
     725  
          *
     726  
          */
     727  
         @XmlElementDecl(namespace = "http://maven.apache.org/POM/4.0.0", name = "project")
     728  
         public JAXBElement<Model> createProject(Model value) {
     729  0
             return new JAXBElement<Model>(_Project_QNAME, Model.class, null, value);
     730  
         }
     731  
     
     732  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html new file mode 100644 index 000000000..aa0d909e7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html @@ -0,0 +1,223 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Organization
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Organization
    0%
    0/7
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      * Specifies the organization that produces this project.
     19  
      *
     20  
      * <p>Java class for Organization complex type.
     21  
      *
     22  
      * <p>The following schema fragment specifies the expected content contained within this class.
     23  
      *
     24  
      * <pre>
     25  
      * &lt;complexType name="Organization">
     26  
      *   &lt;complexContent>
     27  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     28  
      *       &lt;all>
     29  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     30  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *       &lt;/all>
     32  
      *     &lt;/restriction>
     33  
      *   &lt;/complexContent>
     34  
      * &lt;/complexType>
     35  
      * </pre>
     36  
      *
     37  
      *
     38  
      */
     39  
     @XmlAccessorType(XmlAccessType.FIELD)
     40  
     @XmlType(name = "Organization", propOrder = {
     41  
     
     42  
     })
     43  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     44  0
     public class Organization {
     45  
     
     46  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     47  
         protected String name;
     48  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     49  
         protected String url;
     50  
     
     51  
         /**
     52  
          * Gets the value of the name property.
     53  
          *
     54  
          * @return
     55  
          *     possible object is
     56  
          *     {@link String }
     57  
          *
     58  
          */
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         public String getName() {
     61  0
             return name;
     62  
         }
     63  
     
     64  
         /**
     65  
          * Sets the value of the name property.
     66  
          *
     67  
          * @param value
     68  
          *     allowed object is
     69  
          *     {@link String }
     70  
          *
     71  
          */
     72  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     73  
         public void setName(String value) {
     74  0
             this.name = value;
     75  0
         }
     76  
     
     77  
         /**
     78  
          * Gets the value of the url property.
     79  
          *
     80  
          * @return
     81  
          *     possible object is
     82  
          *     {@link String }
     83  
          *
     84  
          */
     85  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     86  
         public String getUrl() {
     87  0
             return url;
     88  
         }
     89  
     
     90  
         /**
     91  
          * Sets the value of the url property.
     92  
          *
     93  
          * @param value
     94  
          *     allowed object is
     95  
          *     {@link String }
     96  
          *
     97  
          */
     98  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     99  
         public void setUrl(String value) {
     100  0
             this.url = value;
     101  0
         }
     102  
     
     103  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html new file mode 100644 index 000000000..42b81a712 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html @@ -0,0 +1,337 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Parent
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Parent
    7%
    1/13
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      *  4.0.0
     20  
      *
     21  
      * <p>Java class for Parent complex type.
     22  
      *
     23  
      * <p>The following schema fragment specifies the expected content contained within this class.
     24  
      *
     25  
      * <pre>
     26  
      * &lt;complexType name="Parent">
     27  
      *   &lt;complexContent>
     28  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     29  
      *       &lt;all>
     30  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="relativePath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *       &lt;/all>
     35  
      *     &lt;/restriction>
     36  
      *   &lt;/complexContent>
     37  
      * &lt;/complexType>
     38  
      * </pre>
     39  
      *
     40  
      *
     41  
      */
     42  
     @XmlAccessorType(XmlAccessType.FIELD)
     43  
     @XmlType(name = "Parent", propOrder = {
     44  
     
     45  
     })
     46  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     47  7
     public class Parent {
     48  
     
     49  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  
         protected String artifactId;
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String groupId;
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected String version;
     55  
         @XmlElement(defaultValue = "../pom.xml")
     56  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  
         protected String relativePath;
     58  
     
     59  
         /**
     60  
          * Gets the value of the artifactId property.
     61  
          *
     62  
          * @return
     63  
          *     possible object is
     64  
          *     {@link String }
     65  
          *
     66  
          */
     67  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     68  
         public String getArtifactId() {
     69  0
             return artifactId;
     70  
         }
     71  
     
     72  
         /**
     73  
          * Sets the value of the artifactId property.
     74  
          *
     75  
          * @param value
     76  
          *     allowed object is
     77  
          *     {@link String }
     78  
          *
     79  
          */
     80  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     81  
         public void setArtifactId(String value) {
     82  0
             this.artifactId = value;
     83  0
         }
     84  
     
     85  
         /**
     86  
          * Gets the value of the groupId property.
     87  
          *
     88  
          * @return
     89  
          *     possible object is
     90  
          *     {@link String }
     91  
          *
     92  
          */
     93  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     94  
         public String getGroupId() {
     95  0
             return groupId;
     96  
         }
     97  
     
     98  
         /**
     99  
          * Sets the value of the groupId property.
     100  
          *
     101  
          * @param value
     102  
          *     allowed object is
     103  
          *     {@link String }
     104  
          *
     105  
          */
     106  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     107  
         public void setGroupId(String value) {
     108  0
             this.groupId = value;
     109  0
         }
     110  
     
     111  
         /**
     112  
          * Gets the value of the version property.
     113  
          *
     114  
          * @return
     115  
          *     possible object is
     116  
          *     {@link String }
     117  
          *
     118  
          */
     119  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     120  
         public String getVersion() {
     121  0
             return version;
     122  
         }
     123  
     
     124  
         /**
     125  
          * Sets the value of the version property.
     126  
          *
     127  
          * @param value
     128  
          *     allowed object is
     129  
          *     {@link String }
     130  
          *
     131  
          */
     132  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     133  
         public void setVersion(String value) {
     134  0
             this.version = value;
     135  0
         }
     136  
     
     137  
         /**
     138  
          * Gets the value of the relativePath property.
     139  
          *
     140  
          * @return
     141  
          *     possible object is
     142  
          *     {@link String }
     143  
          *
     144  
          */
     145  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     146  
         public String getRelativePath() {
     147  0
             return relativePath;
     148  
         }
     149  
     
     150  
         /**
     151  
          * Sets the value of the relativePath property.
     152  
          *
     153  
          * @param value
     154  
          *     allowed object is
     155  
          *     {@link String }
     156  
          *
     157  
          */
     158  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     159  
         public void setRelativePath(String value) {
     160  0
             this.relativePath = value;
     161  0
         }
     162  
     
     163  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html new file mode 100644 index 000000000..969c57262 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html @@ -0,0 +1,1189 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Plugin
    +
     
    + + + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Plugin
    6%
    2/29
    N/A
    1.182
    Plugin$Configuration
    25%
    1/4
    0%
    0/2
    1.182
    Plugin$Dependencies
    0%
    0/4
    0%
    0/2
    1.182
    Plugin$Executions
    25%
    1/4
    0%
    0/2
    1.182
    Plugin$Goals
    0%
    0/4
    0%
    0/2
    1.182
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlElement;
     18  
     import javax.xml.bind.annotation.XmlType;
     19  
     import org.w3c.dom.Element;
     20  
     
     21  
     
     22  
     /**
     23  
      *  4.0.0
     24  
      *
     25  
      * <p>Java class for Plugin complex type.
     26  
      *
     27  
      * <p>The following schema fragment specifies the expected content contained within this class.
     28  
      *
     29  
      * <pre>
     30  
      * &lt;complexType name="Plugin">
     31  
      *   &lt;complexContent>
     32  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     33  
      *       &lt;all>
     34  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="extensions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     38  
      *         &lt;element name="executions" minOccurs="0">
     39  
      *           &lt;complexType>
     40  
      *             &lt;complexContent>
     41  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     42  
      *                 &lt;sequence>
     43  
      *                   &lt;element name="execution" type="{http://maven.apache.org/POM/4.0.0}PluginExecution" maxOccurs="unbounded" minOccurs="0"/>
     44  
      *                 &lt;/sequence>
     45  
      *               &lt;/restriction>
     46  
      *             &lt;/complexContent>
     47  
      *           &lt;/complexType>
     48  
      *         &lt;/element>
     49  
      *         &lt;element name="dependencies" minOccurs="0">
     50  
      *           &lt;complexType>
     51  
      *             &lt;complexContent>
     52  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     53  
      *                 &lt;sequence>
     54  
      *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     55  
      *                 &lt;/sequence>
     56  
      *               &lt;/restriction>
     57  
      *             &lt;/complexContent>
     58  
      *           &lt;/complexType>
     59  
      *         &lt;/element>
     60  
      *         &lt;element name="goals" minOccurs="0">
     61  
      *           &lt;complexType>
     62  
      *             &lt;complexContent>
     63  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     64  
      *                 &lt;sequence>
     65  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     66  
      *                 &lt;/sequence>
     67  
      *               &lt;/restriction>
     68  
      *             &lt;/complexContent>
     69  
      *           &lt;/complexType>
     70  
      *         &lt;/element>
     71  
      *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     72  
      *         &lt;element name="configuration" minOccurs="0">
     73  
      *           &lt;complexType>
     74  
      *             &lt;complexContent>
     75  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     76  
      *                 &lt;sequence>
     77  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     78  
      *                 &lt;/sequence>
     79  
      *               &lt;/restriction>
     80  
      *             &lt;/complexContent>
     81  
      *           &lt;/complexType>
     82  
      *         &lt;/element>
     83  
      *       &lt;/all>
     84  
      *     &lt;/restriction>
     85  
      *   &lt;/complexContent>
     86  
      * &lt;/complexType>
     87  
      * </pre>
     88  
      *
     89  
      *
     90  
      */
     91  
     @XmlAccessorType(XmlAccessType.FIELD)
     92  
     @XmlType(name = "Plugin", propOrder = {
     93  
     
     94  
     })
     95  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     96  37
     public class Plugin {
     97  
     
     98  
         @XmlElement(defaultValue = "org.apache.maven.plugins")
     99  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     100  
         protected String groupId;
     101  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     102  
         protected String artifactId;
     103  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     104  
         protected String version;
     105  
         @XmlElement(defaultValue = "false")
     106  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     107  
         protected Boolean extensions;
     108  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     109  
         protected Plugin.Executions executions;
     110  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     111  
         protected Plugin.Dependencies dependencies;
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  
         protected Plugin.Goals goals;
     114  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     115  
         protected String inherited;
     116  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     117  
         protected Plugin.Configuration configuration;
     118  
     
     119  
         /**
     120  
          * Gets the value of the groupId property.
     121  
          *
     122  
          * @return
     123  
          *     possible object is
     124  
          *     {@link String }
     125  
          *
     126  
          */
     127  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     128  
         public String getGroupId() {
     129  0
             return groupId;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Sets the value of the groupId property.
     134  
          *
     135  
          * @param value
     136  
          *     allowed object is
     137  
          *     {@link String }
     138  
          *
     139  
          */
     140  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     141  
         public void setGroupId(String value) {
     142  0
             this.groupId = value;
     143  0
         }
     144  
     
     145  
         /**
     146  
          * Gets the value of the artifactId property.
     147  
          *
     148  
          * @return
     149  
          *     possible object is
     150  
          *     {@link String }
     151  
          *
     152  
          */
     153  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     154  
         public String getArtifactId() {
     155  0
             return artifactId;
     156  
         }
     157  
     
     158  
         /**
     159  
          * Sets the value of the artifactId property.
     160  
          *
     161  
          * @param value
     162  
          *     allowed object is
     163  
          *     {@link String }
     164  
          *
     165  
          */
     166  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     167  
         public void setArtifactId(String value) {
     168  0
             this.artifactId = value;
     169  0
         }
     170  
     
     171  
         /**
     172  
          * Gets the value of the version property.
     173  
          *
     174  
          * @return
     175  
          *     possible object is
     176  
          *     {@link String }
     177  
          *
     178  
          */
     179  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     180  
         public String getVersion() {
     181  0
             return version;
     182  
         }
     183  
     
     184  
         /**
     185  
          * Sets the value of the version property.
     186  
          *
     187  
          * @param value
     188  
          *     allowed object is
     189  
          *     {@link String }
     190  
          *
     191  
          */
     192  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     193  
         public void setVersion(String value) {
     194  0
             this.version = value;
     195  0
         }
     196  
     
     197  
         /**
     198  
          * Gets the value of the extensions property.
     199  
          *
     200  
          * @return
     201  
          *     possible object is
     202  
          *     {@link Boolean }
     203  
          *
     204  
          */
     205  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     206  
         public Boolean isExtensions() {
     207  0
             return extensions;
     208  
         }
     209  
     
     210  
         /**
     211  
          * Sets the value of the extensions property.
     212  
          *
     213  
          * @param value
     214  
          *     allowed object is
     215  
          *     {@link Boolean }
     216  
          *
     217  
          */
     218  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     219  
         public void setExtensions(Boolean value) {
     220  0
             this.extensions = value;
     221  0
         }
     222  
     
     223  
         /**
     224  
          * Gets the value of the executions property.
     225  
          *
     226  
          * @return
     227  
          *     possible object is
     228  
          *     {@link Plugin.Executions }
     229  
          *
     230  
          */
     231  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     232  
         public Plugin.Executions getExecutions() {
     233  0
             return executions;
     234  
         }
     235  
     
     236  
         /**
     237  
          * Sets the value of the executions property.
     238  
          *
     239  
          * @param value
     240  
          *     allowed object is
     241  
          *     {@link Plugin.Executions }
     242  
          *
     243  
          */
     244  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     245  
         public void setExecutions(Plugin.Executions value) {
     246  0
             this.executions = value;
     247  0
         }
     248  
     
     249  
         /**
     250  
          * Gets the value of the dependencies property.
     251  
          *
     252  
          * @return
     253  
          *     possible object is
     254  
          *     {@link Plugin.Dependencies }
     255  
          *
     256  
          */
     257  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     258  
         public Plugin.Dependencies getDependencies() {
     259  0
             return dependencies;
     260  
         }
     261  
     
     262  
         /**
     263  
          * Sets the value of the dependencies property.
     264  
          *
     265  
          * @param value
     266  
          *     allowed object is
     267  
          *     {@link Plugin.Dependencies }
     268  
          *
     269  
          */
     270  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     271  
         public void setDependencies(Plugin.Dependencies value) {
     272  0
             this.dependencies = value;
     273  0
         }
     274  
     
     275  
         /**
     276  
          * Gets the value of the goals property.
     277  
          *
     278  
          * @return
     279  
          *     possible object is
     280  
          *     {@link Plugin.Goals }
     281  
          *
     282  
          */
     283  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     284  
         public Plugin.Goals getGoals() {
     285  0
             return goals;
     286  
         }
     287  
     
     288  
         /**
     289  
          * Sets the value of the goals property.
     290  
          *
     291  
          * @param value
     292  
          *     allowed object is
     293  
          *     {@link Plugin.Goals }
     294  
          *
     295  
          */
     296  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     297  
         public void setGoals(Plugin.Goals value) {
     298  0
             this.goals = value;
     299  0
         }
     300  
     
     301  
         /**
     302  
          * Gets the value of the inherited property.
     303  
          *
     304  
          * @return
     305  
          *     possible object is
     306  
          *     {@link String }
     307  
          *
     308  
          */
     309  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     310  
         public String getInherited() {
     311  0
             return inherited;
     312  
         }
     313  
     
     314  
         /**
     315  
          * Sets the value of the inherited property.
     316  
          *
     317  
          * @param value
     318  
          *     allowed object is
     319  
          *     {@link String }
     320  
          *
     321  
          */
     322  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     323  
         public void setInherited(String value) {
     324  0
             this.inherited = value;
     325  0
         }
     326  
     
     327  
         /**
     328  
          * Gets the value of the configuration property.
     329  
          *
     330  
          * @return
     331  
          *     possible object is
     332  
          *     {@link Plugin.Configuration }
     333  
          *
     334  
          */
     335  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     336  
         public Plugin.Configuration getConfiguration() {
     337  0
             return configuration;
     338  
         }
     339  
     
     340  
         /**
     341  
          * Sets the value of the configuration property.
     342  
          *
     343  
          * @param value
     344  
          *     allowed object is
     345  
          *     {@link Plugin.Configuration }
     346  
          *
     347  
          */
     348  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     349  
         public void setConfiguration(Plugin.Configuration value) {
     350  0
             this.configuration = value;
     351  0
         }
     352  
     
     353  
     
     354  
         /**
     355  
          * <p>Java class for anonymous complex type.
     356  
          *
     357  
          * <p>The following schema fragment specifies the expected content contained within this class.
     358  
          *
     359  
          * <pre>
     360  
          * &lt;complexType>
     361  
          *   &lt;complexContent>
     362  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     363  
          *       &lt;sequence>
     364  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     365  
          *       &lt;/sequence>
     366  
          *     &lt;/restriction>
     367  
          *   &lt;/complexContent>
     368  
          * &lt;/complexType>
     369  
          * </pre>
     370  
          *
     371  
          *
     372  
          */
     373  
         @XmlAccessorType(XmlAccessType.FIELD)
     374  
         @XmlType(name = "", propOrder = {
     375  
             "any"
     376  
         })
     377  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     378  23
         public static class Configuration {
     379  
     
     380  
             @XmlAnyElement
     381  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     382  
             protected List<Element> any;
     383  
     
     384  
             /**
     385  
              * Gets the value of the any property.
     386  
              *
     387  
              * <p>
     388  
              * This accessor method returns a reference to the live list,
     389  
              * not a snapshot. Therefore any modification you make to the
     390  
              * returned list will be present inside the JAXB object.
     391  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     392  
              *
     393  
              * <p>
     394  
              * For example, to add a new item, do as follows:
     395  
              * <pre>
     396  
              *    getAny().add(newItem);
     397  
              * </pre>
     398  
              *
     399  
              *
     400  
              * <p>
     401  
              * Objects of the following type(s) are allowed in the list
     402  
              * {@link Element }
     403  
              *
     404  
              *
     405  
              */
     406  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     407  
             public List<Element> getAny() {
     408  0
                 if (any == null) {
     409  0
                     any = new ArrayList<Element>();
     410  
                 }
     411  0
                 return this.any;
     412  
             }
     413  
     
     414  
         }
     415  
     
     416  
     
     417  
         /**
     418  
          * <p>Java class for anonymous complex type.
     419  
          *
     420  
          * <p>The following schema fragment specifies the expected content contained within this class.
     421  
          *
     422  
          * <pre>
     423  
          * &lt;complexType>
     424  
          *   &lt;complexContent>
     425  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     426  
          *       &lt;sequence>
     427  
          *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     428  
          *       &lt;/sequence>
     429  
          *     &lt;/restriction>
     430  
          *   &lt;/complexContent>
     431  
          * &lt;/complexType>
     432  
          * </pre>
     433  
          *
     434  
          *
     435  
          */
     436  
         @XmlAccessorType(XmlAccessType.FIELD)
     437  
         @XmlType(name = "", propOrder = {
     438  
             "dependency"
     439  
         })
     440  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     441  0
         public static class Dependencies {
     442  
     
     443  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     444  
             protected List<Dependency> dependency;
     445  
     
     446  
             /**
     447  
              * Gets the value of the dependency property.
     448  
              *
     449  
              * <p>
     450  
              * This accessor method returns a reference to the live list,
     451  
              * not a snapshot. Therefore any modification you make to the
     452  
              * returned list will be present inside the JAXB object.
     453  
              * This is why there is not a <CODE>set</CODE> method for the dependency property.
     454  
              *
     455  
              * <p>
     456  
              * For example, to add a new item, do as follows:
     457  
              * <pre>
     458  
              *    getDependency().add(newItem);
     459  
              * </pre>
     460  
              *
     461  
              *
     462  
              * <p>
     463  
              * Objects of the following type(s) are allowed in the list
     464  
              * {@link Dependency }
     465  
              *
     466  
              *
     467  
              */
     468  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     469  
             public List<Dependency> getDependency() {
     470  0
                 if (dependency == null) {
     471  0
                     dependency = new ArrayList<Dependency>();
     472  
                 }
     473  0
                 return this.dependency;
     474  
             }
     475  
     
     476  
         }
     477  
     
     478  
     
     479  
         /**
     480  
          * <p>Java class for anonymous complex type.
     481  
          *
     482  
          * <p>The following schema fragment specifies the expected content contained within this class.
     483  
          *
     484  
          * <pre>
     485  
          * &lt;complexType>
     486  
          *   &lt;complexContent>
     487  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     488  
          *       &lt;sequence>
     489  
          *         &lt;element name="execution" type="{http://maven.apache.org/POM/4.0.0}PluginExecution" maxOccurs="unbounded" minOccurs="0"/>
     490  
          *       &lt;/sequence>
     491  
          *     &lt;/restriction>
     492  
          *   &lt;/complexContent>
     493  
          * &lt;/complexType>
     494  
          * </pre>
     495  
          *
     496  
          *
     497  
          */
     498  
         @XmlAccessorType(XmlAccessType.FIELD)
     499  
         @XmlType(name = "", propOrder = {
     500  
             "execution"
     501  
         })
     502  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     503  25
         public static class Executions {
     504  
     
     505  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     506  
             protected List<PluginExecution> execution;
     507  
     
     508  
             /**
     509  
              * Gets the value of the execution property.
     510  
              *
     511  
              * <p>
     512  
              * This accessor method returns a reference to the live list,
     513  
              * not a snapshot. Therefore any modification you make to the
     514  
              * returned list will be present inside the JAXB object.
     515  
              * This is why there is not a <CODE>set</CODE> method for the execution property.
     516  
              *
     517  
              * <p>
     518  
              * For example, to add a new item, do as follows:
     519  
              * <pre>
     520  
              *    getExecution().add(newItem);
     521  
              * </pre>
     522  
              *
     523  
              *
     524  
              * <p>
     525  
              * Objects of the following type(s) are allowed in the list
     526  
              * {@link PluginExecution }
     527  
              *
     528  
              *
     529  
              */
     530  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     531  
             public List<PluginExecution> getExecution() {
     532  0
                 if (execution == null) {
     533  0
                     execution = new ArrayList<PluginExecution>();
     534  
                 }
     535  0
                 return this.execution;
     536  
             }
     537  
     
     538  
         }
     539  
     
     540  
     
     541  
         /**
     542  
          * <p>Java class for anonymous complex type.
     543  
          *
     544  
          * <p>The following schema fragment specifies the expected content contained within this class.
     545  
          *
     546  
          * <pre>
     547  
          * &lt;complexType>
     548  
          *   &lt;complexContent>
     549  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     550  
          *       &lt;sequence>
     551  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     552  
          *       &lt;/sequence>
     553  
          *     &lt;/restriction>
     554  
          *   &lt;/complexContent>
     555  
          * &lt;/complexType>
     556  
          * </pre>
     557  
          *
     558  
          *
     559  
          */
     560  37
         @XmlAccessorType(XmlAccessType.FIELD)
     561  
         @XmlType(name = "", propOrder = {
     562  
             "any"
     563  
         })
     564  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     565  0
         public static class Goals {
     566  
     
     567  
             @XmlAnyElement
     568  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     569  
             protected List<Element> any;
     570  
     
     571  
             /**
     572  
              * Gets the value of the any property.
     573  
              *
     574  
              * <p>
     575  
              * This accessor method returns a reference to the live list,
     576  
              * not a snapshot. Therefore any modification you make to the
     577  
              * returned list will be present inside the JAXB object.
     578  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     579  
              *
     580  
              * <p>
     581  
              * For example, to add a new item, do as follows:
     582  
              * <pre>
     583  
              *    getAny().add(newItem);
     584  
              * </pre>
     585  
              *
     586  
              *
     587  
              * <p>
     588  
              * Objects of the following type(s) are allowed in the list
     589  
              * {@link Element }
     590  
              *
     591  
              *
     592  
              */
     593  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     594  
             public List<Element> getAny() {
     595  0
                 if (any == null) {
     596  0
                     any = new ArrayList<Element>();
     597  
                 }
     598  0
                 return this.any;
     599  
             }
     600  
     
     601  
         }
     602  
     
     603  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html new file mode 100644 index 000000000..9c4cc9b69 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html @@ -0,0 +1,683 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    PluginExecution
    11%
    2/17
    N/A
    1.167
    PluginExecution$Configuration
    25%
    1/4
    0%
    0/2
    1.167
    PluginExecution$Goals
    25%
    1/4
    0%
    0/2
    1.167
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlElement;
     18  
     import javax.xml.bind.annotation.XmlType;
     19  
     import org.w3c.dom.Element;
     20  
     
     21  
     
     22  
     /**
     23  
      *  4.0.0
     24  
      *
     25  
      * <p>Java class for PluginExecution complex type.
     26  
      *
     27  
      * <p>The following schema fragment specifies the expected content contained within this class.
     28  
      *
     29  
      * <pre>
     30  
      * &lt;complexType name="PluginExecution">
     31  
      *   &lt;complexContent>
     32  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     33  
      *       &lt;all>
     34  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="phase" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="goals" minOccurs="0">
     37  
      *           &lt;complexType>
     38  
      *             &lt;complexContent>
     39  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     40  
      *                 &lt;sequence>
     41  
      *                   &lt;element name="goal" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     42  
      *                 &lt;/sequence>
     43  
      *               &lt;/restriction>
     44  
      *             &lt;/complexContent>
     45  
      *           &lt;/complexType>
     46  
      *         &lt;/element>
     47  
      *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     48  
      *         &lt;element name="configuration" minOccurs="0">
     49  
      *           &lt;complexType>
     50  
      *             &lt;complexContent>
     51  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     52  
      *                 &lt;sequence>
     53  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     54  
      *                 &lt;/sequence>
     55  
      *               &lt;/restriction>
     56  
      *             &lt;/complexContent>
     57  
      *           &lt;/complexType>
     58  
      *         &lt;/element>
     59  
      *       &lt;/all>
     60  
      *     &lt;/restriction>
     61  
      *   &lt;/complexContent>
     62  
      * &lt;/complexType>
     63  
      * </pre>
     64  
      *
     65  
      *
     66  
      */
     67  
     @XmlAccessorType(XmlAccessType.FIELD)
     68  
     @XmlType(name = "PluginExecution", propOrder = {
     69  
     
     70  
     })
     71  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     72  27
     public class PluginExecution {
     73  
     
     74  
         @XmlElement(defaultValue = "default")
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         protected String id;
     77  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     78  
         protected String phase;
     79  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     80  
         protected PluginExecution.Goals goals;
     81  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     82  
         protected String inherited;
     83  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     84  
         protected PluginExecution.Configuration configuration;
     85  
     
     86  
         /**
     87  
          * Gets the value of the id property.
     88  
          *
     89  
          * @return
     90  
          *     possible object is
     91  
          *     {@link String }
     92  
          *
     93  
          */
     94  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     95  
         public String getId() {
     96  0
             return id;
     97  
         }
     98  
     
     99  
         /**
     100  
          * Sets the value of the id property.
     101  
          *
     102  
          * @param value
     103  
          *     allowed object is
     104  
          *     {@link String }
     105  
          *
     106  
          */
     107  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     108  
         public void setId(String value) {
     109  0
             this.id = value;
     110  0
         }
     111  
     
     112  
         /**
     113  
          * Gets the value of the phase property.
     114  
          *
     115  
          * @return
     116  
          *     possible object is
     117  
          *     {@link String }
     118  
          *
     119  
          */
     120  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     121  
         public String getPhase() {
     122  0
             return phase;
     123  
         }
     124  
     
     125  
         /**
     126  
          * Sets the value of the phase property.
     127  
          *
     128  
          * @param value
     129  
          *     allowed object is
     130  
          *     {@link String }
     131  
          *
     132  
          */
     133  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     134  
         public void setPhase(String value) {
     135  0
             this.phase = value;
     136  0
         }
     137  
     
     138  
         /**
     139  
          * Gets the value of the goals property.
     140  
          *
     141  
          * @return
     142  
          *     possible object is
     143  
          *     {@link PluginExecution.Goals }
     144  
          *
     145  
          */
     146  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     147  
         public PluginExecution.Goals getGoals() {
     148  0
             return goals;
     149  
         }
     150  
     
     151  
         /**
     152  
          * Sets the value of the goals property.
     153  
          *
     154  
          * @param value
     155  
          *     allowed object is
     156  
          *     {@link PluginExecution.Goals }
     157  
          *
     158  
          */
     159  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     160  
         public void setGoals(PluginExecution.Goals value) {
     161  0
             this.goals = value;
     162  0
         }
     163  
     
     164  
         /**
     165  
          * Gets the value of the inherited property.
     166  
          *
     167  
          * @return
     168  
          *     possible object is
     169  
          *     {@link String }
     170  
          *
     171  
          */
     172  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     173  
         public String getInherited() {
     174  0
             return inherited;
     175  
         }
     176  
     
     177  
         /**
     178  
          * Sets the value of the inherited property.
     179  
          *
     180  
          * @param value
     181  
          *     allowed object is
     182  
          *     {@link String }
     183  
          *
     184  
          */
     185  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     186  
         public void setInherited(String value) {
     187  0
             this.inherited = value;
     188  0
         }
     189  
     
     190  
         /**
     191  
          * Gets the value of the configuration property.
     192  
          *
     193  
          * @return
     194  
          *     possible object is
     195  
          *     {@link PluginExecution.Configuration }
     196  
          *
     197  
          */
     198  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     199  
         public PluginExecution.Configuration getConfiguration() {
     200  0
             return configuration;
     201  
         }
     202  
     
     203  
         /**
     204  
          * Sets the value of the configuration property.
     205  
          *
     206  
          * @param value
     207  
          *     allowed object is
     208  
          *     {@link PluginExecution.Configuration }
     209  
          *
     210  
          */
     211  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     212  
         public void setConfiguration(PluginExecution.Configuration value) {
     213  0
             this.configuration = value;
     214  0
         }
     215  
     
     216  
     
     217  
         /**
     218  
          * <p>Java class for anonymous complex type.
     219  
          *
     220  
          * <p>The following schema fragment specifies the expected content contained within this class.
     221  
          *
     222  
          * <pre>
     223  
          * &lt;complexType>
     224  
          *   &lt;complexContent>
     225  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     226  
          *       &lt;sequence>
     227  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     228  
          *       &lt;/sequence>
     229  
          *     &lt;/restriction>
     230  
          *   &lt;/complexContent>
     231  
          * &lt;/complexType>
     232  
          * </pre>
     233  
          *
     234  
          *
     235  
          */
     236  
         @XmlAccessorType(XmlAccessType.FIELD)
     237  
         @XmlType(name = "", propOrder = {
     238  
             "any"
     239  
         })
     240  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     241  11
         public static class Configuration {
     242  
     
     243  
             @XmlAnyElement
     244  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     245  
             protected List<Element> any;
     246  
     
     247  
             /**
     248  
              * Gets the value of the any property.
     249  
              *
     250  
              * <p>
     251  
              * This accessor method returns a reference to the live list,
     252  
              * not a snapshot. Therefore any modification you make to the
     253  
              * returned list will be present inside the JAXB object.
     254  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     255  
              *
     256  
              * <p>
     257  
              * For example, to add a new item, do as follows:
     258  
              * <pre>
     259  
              *    getAny().add(newItem);
     260  
              * </pre>
     261  
              *
     262  
              *
     263  
              * <p>
     264  
              * Objects of the following type(s) are allowed in the list
     265  
              * {@link Element }
     266  
              *
     267  
              *
     268  
              */
     269  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     270  
             public List<Element> getAny() {
     271  0
                 if (any == null) {
     272  0
                     any = new ArrayList<Element>();
     273  
                 }
     274  0
                 return this.any;
     275  
             }
     276  
     
     277  
         }
     278  
     
     279  
     
     280  
         /**
     281  
          * <p>Java class for anonymous complex type.
     282  
          *
     283  
          * <p>The following schema fragment specifies the expected content contained within this class.
     284  
          *
     285  
          * <pre>
     286  
          * &lt;complexType>
     287  
          *   &lt;complexContent>
     288  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     289  
          *       &lt;sequence>
     290  
          *         &lt;element name="goal" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     291  
          *       &lt;/sequence>
     292  
          *     &lt;/restriction>
     293  
          *   &lt;/complexContent>
     294  
          * &lt;/complexType>
     295  
          * </pre>
     296  
          *
     297  
          *
     298  
          */
     299  27
         @XmlAccessorType(XmlAccessType.FIELD)
     300  
         @XmlType(name = "", propOrder = {
     301  
             "goal"
     302  
         })
     303  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     304  27
         public static class Goals {
     305  
     
     306  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     307  
             protected List<String> goal;
     308  
     
     309  
             /**
     310  
              * Gets the value of the goal property.
     311  
              *
     312  
              * <p>
     313  
              * This accessor method returns a reference to the live list,
     314  
              * not a snapshot. Therefore any modification you make to the
     315  
              * returned list will be present inside the JAXB object.
     316  
              * This is why there is not a <CODE>set</CODE> method for the goal property.
     317  
              *
     318  
              * <p>
     319  
              * For example, to add a new item, do as follows:
     320  
              * <pre>
     321  
              *    getGoal().add(newItem);
     322  
              * </pre>
     323  
              *
     324  
              *
     325  
              * <p>
     326  
              * Objects of the following type(s) are allowed in the list
     327  
              * {@link String }
     328  
              *
     329  
              *
     330  
              */
     331  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     332  
             public List<String> getGoal() {
     333  0
                 if (goal == null) {
     334  0
                     goal = new ArrayList<String>();
     335  
                 }
     336  0
                 return this.goal;
     337  
             }
     338  
     
     339  
         }
     340  
     
     341  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html new file mode 100644 index 000000000..5548e27ac --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html @@ -0,0 +1,316 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    PluginManagement
    0%
    0/5
    N/A
    1.333
    PluginManagement$Plugins
    0%
    0/4
    0%
    0/2
    1.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlType;
     17  
     
     18  
     
     19  
     /**
     20  
      *
     21  
      *         Section for management of default plugin information for use in a group of POMs.
     22  
      *
     23  
      *
     24  
      * <p>Java class for PluginManagement complex type.
     25  
      *
     26  
      * <p>The following schema fragment specifies the expected content contained within this class.
     27  
      *
     28  
      * <pre>
     29  
      * &lt;complexType name="PluginManagement">
     30  
      *   &lt;complexContent>
     31  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     32  
      *       &lt;all>
     33  
      *         &lt;element name="plugins" minOccurs="0">
     34  
      *           &lt;complexType>
     35  
      *             &lt;complexContent>
     36  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     37  
      *                 &lt;sequence>
     38  
      *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
     39  
      *                 &lt;/sequence>
     40  
      *               &lt;/restriction>
     41  
      *             &lt;/complexContent>
     42  
      *           &lt;/complexType>
     43  
      *         &lt;/element>
     44  
      *       &lt;/all>
     45  
      *     &lt;/restriction>
     46  
      *   &lt;/complexContent>
     47  
      * &lt;/complexType>
     48  
      * </pre>
     49  
      *
     50  
      *
     51  
      */
     52  
     @XmlAccessorType(XmlAccessType.FIELD)
     53  
     @XmlType(name = "PluginManagement", propOrder = {
     54  
     
     55  
     })
     56  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  0
     public class PluginManagement {
     58  
     
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         protected PluginManagement.Plugins plugins;
     61  
     
     62  
         /**
     63  
          * Gets the value of the plugins property.
     64  
          *
     65  
          * @return
     66  
          *     possible object is
     67  
          *     {@link PluginManagement.Plugins }
     68  
          *
     69  
          */
     70  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     71  
         public PluginManagement.Plugins getPlugins() {
     72  0
             return plugins;
     73  
         }
     74  
     
     75  
         /**
     76  
          * Sets the value of the plugins property.
     77  
          *
     78  
          * @param value
     79  
          *     allowed object is
     80  
          *     {@link PluginManagement.Plugins }
     81  
          *
     82  
          */
     83  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     84  
         public void setPlugins(PluginManagement.Plugins value) {
     85  0
             this.plugins = value;
     86  0
         }
     87  
     
     88  
     
     89  
         /**
     90  
          * <p>Java class for anonymous complex type.
     91  
          *
     92  
          * <p>The following schema fragment specifies the expected content contained within this class.
     93  
          *
     94  
          * <pre>
     95  
          * &lt;complexType>
     96  
          *   &lt;complexContent>
     97  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     98  
          *       &lt;sequence>
     99  
          *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
     100  
          *       &lt;/sequence>
     101  
          *     &lt;/restriction>
     102  
          *   &lt;/complexContent>
     103  
          * &lt;/complexType>
     104  
          * </pre>
     105  
          *
     106  
          *
     107  
          */
     108  0
         @XmlAccessorType(XmlAccessType.FIELD)
     109  
         @XmlType(name = "", propOrder = {
     110  
             "plugin"
     111  
         })
     112  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     113  0
         public static class Plugins {
     114  
     
     115  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     116  
             protected List<Plugin> plugin;
     117  
     
     118  
             /**
     119  
              * Gets the value of the plugin property.
     120  
              *
     121  
              * <p>
     122  
              * This accessor method returns a reference to the live list,
     123  
              * not a snapshot. Therefore any modification you make to the
     124  
              * returned list will be present inside the JAXB object.
     125  
              * This is why there is not a <CODE>set</CODE> method for the plugin property.
     126  
              *
     127  
              * <p>
     128  
              * For example, to add a new item, do as follows:
     129  
              * <pre>
     130  
              *    getPlugin().add(newItem);
     131  
              * </pre>
     132  
              *
     133  
              *
     134  
              * <p>
     135  
              * Objects of the following type(s) are allowed in the list
     136  
              * {@link Plugin }
     137  
              *
     138  
              *
     139  
              */
     140  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     141  
             public List<Plugin> getPlugin() {
     142  0
                 if (plugin == null) {
     143  0
                     plugin = new ArrayList<Plugin>();
     144  
                 }
     145  0
                 return this.plugin;
     146  
             }
     147  
     
     148  
         }
     149  
     
     150  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html new file mode 100644 index 000000000..951cd50e7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html @@ -0,0 +1,172 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Prerequisites
    0%
    0/4
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      * Describes the prerequisites a project can have.
     20  
      *
     21  
      * <p>Java class for Prerequisites complex type.
     22  
      *
     23  
      * <p>The following schema fragment specifies the expected content contained within this class.
     24  
      *
     25  
      * <pre>
     26  
      * &lt;complexType name="Prerequisites">
     27  
      *   &lt;complexContent>
     28  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     29  
      *       &lt;all>
     30  
      *         &lt;element name="maven" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *       &lt;/all>
     32  
      *     &lt;/restriction>
     33  
      *   &lt;/complexContent>
     34  
      * &lt;/complexType>
     35  
      * </pre>
     36  
      *
     37  
      *
     38  
      */
     39  
     @XmlAccessorType(XmlAccessType.FIELD)
     40  
     @XmlType(name = "Prerequisites", propOrder = {
     41  
     
     42  
     })
     43  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     44  0
     public class Prerequisites {
     45  
     
     46  
         @XmlElement(defaultValue = "2.0")
     47  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     48  
         protected String maven;
     49  
     
     50  
         /**
     51  
          * Gets the value of the maven property.
     52  
          *
     53  
          * @return
     54  
          *     possible object is
     55  
          *     {@link String }
     56  
          *
     57  
          */
     58  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     59  
         public String getMaven() {
     60  0
             return maven;
     61  
         }
     62  
     
     63  
         /**
     64  
          * Sets the value of the maven property.
     65  
          *
     66  
          * @param value
     67  
          *     allowed object is
     68  
          *     {@link String }
     69  
          *
     70  
          */
     71  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     72  
         public void setMaven(String value) {
     73  0
             this.maven = value;
     74  0
         }
     75  
     
     76  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html new file mode 100644 index 000000000..0795d5d6a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html @@ -0,0 +1,1634 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Profile
    +
     
    + + + + + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Profile
    5%
    2/38
    N/A
    1.2
    Profile$Dependencies
    25%
    1/4
    0%
    0/2
    1.2
    Profile$Modules
    0%
    0/4
    0%
    0/2
    1.2
    Profile$PluginRepositories
    0%
    0/4
    0%
    0/2
    1.2
    Profile$Properties
    0%
    0/4
    0%
    0/2
    1.2
    Profile$Reports
    0%
    0/4
    0%
    0/2
    1.2
    Profile$Repositories
    0%
    0/4
    0%
    0/2
    1.2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlType;
     18  
     import org.w3c.dom.Element;
     19  
     
     20  
     
     21  
     /**
     22  
      *
     23  
      *         Modifications to the build process which is activated based on environmental parameters or command line arguments.
     24  
      *
     25  
      *
     26  
      * <p>Java class for Profile complex type.
     27  
      *
     28  
      * <p>The following schema fragment specifies the expected content contained within this class.
     29  
      *
     30  
      * <pre>
     31  
      * &lt;complexType name="Profile">
     32  
      *   &lt;complexContent>
     33  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     34  
      *       &lt;all>
     35  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="activation" type="{http://maven.apache.org/POM/4.0.0}Activation" minOccurs="0"/>
     37  
      *         &lt;element name="build" type="{http://maven.apache.org/POM/4.0.0}BuildBase" minOccurs="0"/>
     38  
      *         &lt;element name="modules" minOccurs="0">
     39  
      *           &lt;complexType>
     40  
      *             &lt;complexContent>
     41  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     42  
      *                 &lt;sequence>
     43  
      *                   &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     44  
      *                 &lt;/sequence>
     45  
      *               &lt;/restriction>
     46  
      *             &lt;/complexContent>
     47  
      *           &lt;/complexType>
     48  
      *         &lt;/element>
     49  
      *         &lt;element name="repositories" minOccurs="0">
     50  
      *           &lt;complexType>
     51  
      *             &lt;complexContent>
     52  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     53  
      *                 &lt;sequence>
     54  
      *                   &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     55  
      *                 &lt;/sequence>
     56  
      *               &lt;/restriction>
     57  
      *             &lt;/complexContent>
     58  
      *           &lt;/complexType>
     59  
      *         &lt;/element>
     60  
      *         &lt;element name="pluginRepositories" minOccurs="0">
     61  
      *           &lt;complexType>
     62  
      *             &lt;complexContent>
     63  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     64  
      *                 &lt;sequence>
     65  
      *                   &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     66  
      *                 &lt;/sequence>
     67  
      *               &lt;/restriction>
     68  
      *             &lt;/complexContent>
     69  
      *           &lt;/complexType>
     70  
      *         &lt;/element>
     71  
      *         &lt;element name="dependencies" minOccurs="0">
     72  
      *           &lt;complexType>
     73  
      *             &lt;complexContent>
     74  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     75  
      *                 &lt;sequence>
     76  
      *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     77  
      *                 &lt;/sequence>
     78  
      *               &lt;/restriction>
     79  
      *             &lt;/complexContent>
     80  
      *           &lt;/complexType>
     81  
      *         &lt;/element>
     82  
      *         &lt;element name="reports" minOccurs="0">
     83  
      *           &lt;complexType>
     84  
      *             &lt;complexContent>
     85  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     86  
      *                 &lt;sequence>
     87  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     88  
      *                 &lt;/sequence>
     89  
      *               &lt;/restriction>
     90  
      *             &lt;/complexContent>
     91  
      *           &lt;/complexType>
     92  
      *         &lt;/element>
     93  
      *         &lt;element name="reporting" type="{http://maven.apache.org/POM/4.0.0}Reporting" minOccurs="0"/>
     94  
      *         &lt;element name="dependencyManagement" type="{http://maven.apache.org/POM/4.0.0}DependencyManagement" minOccurs="0"/>
     95  
      *         &lt;element name="distributionManagement" type="{http://maven.apache.org/POM/4.0.0}DistributionManagement" minOccurs="0"/>
     96  
      *         &lt;element name="properties" minOccurs="0">
     97  
      *           &lt;complexType>
     98  
      *             &lt;complexContent>
     99  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     100  
      *                 &lt;sequence>
     101  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     102  
      *                 &lt;/sequence>
     103  
      *               &lt;/restriction>
     104  
      *             &lt;/complexContent>
     105  
      *           &lt;/complexType>
     106  
      *         &lt;/element>
     107  
      *       &lt;/all>
     108  
      *     &lt;/restriction>
     109  
      *   &lt;/complexContent>
     110  
      * &lt;/complexType>
     111  
      * </pre>
     112  
      *
     113  
      *
     114  
      */
     115  
     @XmlAccessorType(XmlAccessType.FIELD)
     116  
     @XmlType(name = "Profile", propOrder = {
     117  
     
     118  
     })
     119  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     120  11
     public class Profile {
     121  
     
     122  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     123  
         protected String id;
     124  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     125  
         protected Activation activation;
     126  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     127  
         protected BuildBase build;
     128  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     129  
         protected Profile.Modules modules;
     130  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     131  
         protected Profile.Repositories repositories;
     132  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     133  
         protected Profile.PluginRepositories pluginRepositories;
     134  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     135  
         protected Profile.Dependencies dependencies;
     136  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     137  
         protected Profile.Reports reports;
     138  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     139  
         protected Reporting reporting;
     140  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     141  
         protected DependencyManagement dependencyManagement;
     142  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     143  
         protected DistributionManagement distributionManagement;
     144  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     145  
         protected Profile.Properties properties;
     146  
     
     147  
         /**
     148  
          * Gets the value of the id property.
     149  
          *
     150  
          * @return
     151  
          *     possible object is
     152  
          *     {@link String }
     153  
          *
     154  
          */
     155  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     156  
         public String getId() {
     157  0
             return id;
     158  
         }
     159  
     
     160  
         /**
     161  
          * Sets the value of the id property.
     162  
          *
     163  
          * @param value
     164  
          *     allowed object is
     165  
          *     {@link String }
     166  
          *
     167  
          */
     168  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     169  
         public void setId(String value) {
     170  0
             this.id = value;
     171  0
         }
     172  
     
     173  
         /**
     174  
          * Gets the value of the activation property.
     175  
          *
     176  
          * @return
     177  
          *     possible object is
     178  
          *     {@link Activation }
     179  
          *
     180  
          */
     181  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     182  
         public Activation getActivation() {
     183  0
             return activation;
     184  
         }
     185  
     
     186  
         /**
     187  
          * Sets the value of the activation property.
     188  
          *
     189  
          * @param value
     190  
          *     allowed object is
     191  
          *     {@link Activation }
     192  
          *
     193  
          */
     194  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     195  
         public void setActivation(Activation value) {
     196  0
             this.activation = value;
     197  0
         }
     198  
     
     199  
         /**
     200  
          * Gets the value of the build property.
     201  
          *
     202  
          * @return
     203  
          *     possible object is
     204  
          *     {@link BuildBase }
     205  
          *
     206  
          */
     207  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     208  
         public BuildBase getBuild() {
     209  0
             return build;
     210  
         }
     211  
     
     212  
         /**
     213  
          * Sets the value of the build property.
     214  
          *
     215  
          * @param value
     216  
          *     allowed object is
     217  
          *     {@link BuildBase }
     218  
          *
     219  
          */
     220  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     221  
         public void setBuild(BuildBase value) {
     222  0
             this.build = value;
     223  0
         }
     224  
     
     225  
         /**
     226  
          * Gets the value of the modules property.
     227  
          *
     228  
          * @return
     229  
          *     possible object is
     230  
          *     {@link Profile.Modules }
     231  
          *
     232  
          */
     233  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     234  
         public Profile.Modules getModules() {
     235  0
             return modules;
     236  
         }
     237  
     
     238  
         /**
     239  
          * Sets the value of the modules property.
     240  
          *
     241  
          * @param value
     242  
          *     allowed object is
     243  
          *     {@link Profile.Modules }
     244  
          *
     245  
          */
     246  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     247  
         public void setModules(Profile.Modules value) {
     248  0
             this.modules = value;
     249  0
         }
     250  
     
     251  
         /**
     252  
          * Gets the value of the repositories property.
     253  
          *
     254  
          * @return
     255  
          *     possible object is
     256  
          *     {@link Profile.Repositories }
     257  
          *
     258  
          */
     259  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     260  
         public Profile.Repositories getRepositories() {
     261  0
             return repositories;
     262  
         }
     263  
     
     264  
         /**
     265  
          * Sets the value of the repositories property.
     266  
          *
     267  
          * @param value
     268  
          *     allowed object is
     269  
          *     {@link Profile.Repositories }
     270  
          *
     271  
          */
     272  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     273  
         public void setRepositories(Profile.Repositories value) {
     274  0
             this.repositories = value;
     275  0
         }
     276  
     
     277  
         /**
     278  
          * Gets the value of the pluginRepositories property.
     279  
          *
     280  
          * @return
     281  
          *     possible object is
     282  
          *     {@link Profile.PluginRepositories }
     283  
          *
     284  
          */
     285  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     286  
         public Profile.PluginRepositories getPluginRepositories() {
     287  0
             return pluginRepositories;
     288  
         }
     289  
     
     290  
         /**
     291  
          * Sets the value of the pluginRepositories property.
     292  
          *
     293  
          * @param value
     294  
          *     allowed object is
     295  
          *     {@link Profile.PluginRepositories }
     296  
          *
     297  
          */
     298  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     299  
         public void setPluginRepositories(Profile.PluginRepositories value) {
     300  0
             this.pluginRepositories = value;
     301  0
         }
     302  
     
     303  
         /**
     304  
          * Gets the value of the dependencies property.
     305  
          *
     306  
          * @return
     307  
          *     possible object is
     308  
          *     {@link Profile.Dependencies }
     309  
          *
     310  
          */
     311  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     312  
         public Profile.Dependencies getDependencies() {
     313  0
             return dependencies;
     314  
         }
     315  
     
     316  
         /**
     317  
          * Sets the value of the dependencies property.
     318  
          *
     319  
          * @param value
     320  
          *     allowed object is
     321  
          *     {@link Profile.Dependencies }
     322  
          *
     323  
          */
     324  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     325  
         public void setDependencies(Profile.Dependencies value) {
     326  0
             this.dependencies = value;
     327  0
         }
     328  
     
     329  
         /**
     330  
          * Gets the value of the reports property.
     331  
          *
     332  
          * @return
     333  
          *     possible object is
     334  
          *     {@link Profile.Reports }
     335  
          *
     336  
          */
     337  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     338  
         public Profile.Reports getReports() {
     339  0
             return reports;
     340  
         }
     341  
     
     342  
         /**
     343  
          * Sets the value of the reports property.
     344  
          *
     345  
          * @param value
     346  
          *     allowed object is
     347  
          *     {@link Profile.Reports }
     348  
          *
     349  
          */
     350  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     351  
         public void setReports(Profile.Reports value) {
     352  0
             this.reports = value;
     353  0
         }
     354  
     
     355  
         /**
     356  
          * Gets the value of the reporting property.
     357  
          *
     358  
          * @return
     359  
          *     possible object is
     360  
          *     {@link Reporting }
     361  
          *
     362  
          */
     363  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     364  
         public Reporting getReporting() {
     365  0
             return reporting;
     366  
         }
     367  
     
     368  
         /**
     369  
          * Sets the value of the reporting property.
     370  
          *
     371  
          * @param value
     372  
          *     allowed object is
     373  
          *     {@link Reporting }
     374  
          *
     375  
          */
     376  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     377  
         public void setReporting(Reporting value) {
     378  0
             this.reporting = value;
     379  0
         }
     380  
     
     381  
         /**
     382  
          * Gets the value of the dependencyManagement property.
     383  
          *
     384  
          * @return
     385  
          *     possible object is
     386  
          *     {@link DependencyManagement }
     387  
          *
     388  
          */
     389  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     390  
         public DependencyManagement getDependencyManagement() {
     391  0
             return dependencyManagement;
     392  
         }
     393  
     
     394  
         /**
     395  
          * Sets the value of the dependencyManagement property.
     396  
          *
     397  
          * @param value
     398  
          *     allowed object is
     399  
          *     {@link DependencyManagement }
     400  
          *
     401  
          */
     402  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     403  
         public void setDependencyManagement(DependencyManagement value) {
     404  0
             this.dependencyManagement = value;
     405  0
         }
     406  
     
     407  
         /**
     408  
          * Gets the value of the distributionManagement property.
     409  
          *
     410  
          * @return
     411  
          *     possible object is
     412  
          *     {@link DistributionManagement }
     413  
          *
     414  
          */
     415  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     416  
         public DistributionManagement getDistributionManagement() {
     417  0
             return distributionManagement;
     418  
         }
     419  
     
     420  
         /**
     421  
          * Sets the value of the distributionManagement property.
     422  
          *
     423  
          * @param value
     424  
          *     allowed object is
     425  
          *     {@link DistributionManagement }
     426  
          *
     427  
          */
     428  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     429  
         public void setDistributionManagement(DistributionManagement value) {
     430  0
             this.distributionManagement = value;
     431  0
         }
     432  
     
     433  
         /**
     434  
          * Gets the value of the properties property.
     435  
          *
     436  
          * @return
     437  
          *     possible object is
     438  
          *     {@link Profile.Properties }
     439  
          *
     440  
          */
     441  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     442  
         public Profile.Properties getProperties() {
     443  0
             return properties;
     444  
         }
     445  
     
     446  
         /**
     447  
          * Sets the value of the properties property.
     448  
          *
     449  
          * @param value
     450  
          *     allowed object is
     451  
          *     {@link Profile.Properties }
     452  
          *
     453  
          */
     454  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     455  
         public void setProperties(Profile.Properties value) {
     456  0
             this.properties = value;
     457  0
         }
     458  
     
     459  
     
     460  
         /**
     461  
          * <p>Java class for anonymous complex type.
     462  
          *
     463  
          * <p>The following schema fragment specifies the expected content contained within this class.
     464  
          *
     465  
          * <pre>
     466  
          * &lt;complexType>
     467  
          *   &lt;complexContent>
     468  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     469  
          *       &lt;sequence>
     470  
          *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
     471  
          *       &lt;/sequence>
     472  
          *     &lt;/restriction>
     473  
          *   &lt;/complexContent>
     474  
          * &lt;/complexType>
     475  
          * </pre>
     476  
          *
     477  
          *
     478  
          */
     479  
         @XmlAccessorType(XmlAccessType.FIELD)
     480  
         @XmlType(name = "", propOrder = {
     481  
             "dependency"
     482  
         })
     483  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     484  3
         public static class Dependencies {
     485  
     
     486  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     487  
             protected List<Dependency> dependency;
     488  
     
     489  
             /**
     490  
              * Gets the value of the dependency property.
     491  
              *
     492  
              * <p>
     493  
              * This accessor method returns a reference to the live list,
     494  
              * not a snapshot. Therefore any modification you make to the
     495  
              * returned list will be present inside the JAXB object.
     496  
              * This is why there is not a <CODE>set</CODE> method for the dependency property.
     497  
              *
     498  
              * <p>
     499  
              * For example, to add a new item, do as follows:
     500  
              * <pre>
     501  
              *    getDependency().add(newItem);
     502  
              * </pre>
     503  
              *
     504  
              *
     505  
              * <p>
     506  
              * Objects of the following type(s) are allowed in the list
     507  
              * {@link Dependency }
     508  
              *
     509  
              *
     510  
              */
     511  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     512  
             public List<Dependency> getDependency() {
     513  0
                 if (dependency == null) {
     514  0
                     dependency = new ArrayList<Dependency>();
     515  
                 }
     516  0
                 return this.dependency;
     517  
             }
     518  
     
     519  
         }
     520  
     
     521  
     
     522  
         /**
     523  
          * <p>Java class for anonymous complex type.
     524  
          *
     525  
          * <p>The following schema fragment specifies the expected content contained within this class.
     526  
          *
     527  
          * <pre>
     528  
          * &lt;complexType>
     529  
          *   &lt;complexContent>
     530  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     531  
          *       &lt;sequence>
     532  
          *         &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     533  
          *       &lt;/sequence>
     534  
          *     &lt;/restriction>
     535  
          *   &lt;/complexContent>
     536  
          * &lt;/complexType>
     537  
          * </pre>
     538  
          *
     539  
          *
     540  
          */
     541  
         @XmlAccessorType(XmlAccessType.FIELD)
     542  
         @XmlType(name = "", propOrder = {
     543  
             "module"
     544  
         })
     545  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     546  0
         public static class Modules {
     547  
     
     548  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     549  
             protected List<String> module;
     550  
     
     551  
             /**
     552  
              * Gets the value of the module property.
     553  
              *
     554  
              * <p>
     555  
              * This accessor method returns a reference to the live list,
     556  
              * not a snapshot. Therefore any modification you make to the
     557  
              * returned list will be present inside the JAXB object.
     558  
              * This is why there is not a <CODE>set</CODE> method for the module property.
     559  
              *
     560  
              * <p>
     561  
              * For example, to add a new item, do as follows:
     562  
              * <pre>
     563  
              *    getModule().add(newItem);
     564  
              * </pre>
     565  
              *
     566  
              *
     567  
              * <p>
     568  
              * Objects of the following type(s) are allowed in the list
     569  
              * {@link String }
     570  
              *
     571  
              *
     572  
              */
     573  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     574  
             public List<String> getModule() {
     575  0
                 if (module == null) {
     576  0
                     module = new ArrayList<String>();
     577  
                 }
     578  0
                 return this.module;
     579  
             }
     580  
     
     581  
         }
     582  
     
     583  
     
     584  
         /**
     585  
          * <p>Java class for anonymous complex type.
     586  
          *
     587  
          * <p>The following schema fragment specifies the expected content contained within this class.
     588  
          *
     589  
          * <pre>
     590  
          * &lt;complexType>
     591  
          *   &lt;complexContent>
     592  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     593  
          *       &lt;sequence>
     594  
          *         &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     595  
          *       &lt;/sequence>
     596  
          *     &lt;/restriction>
     597  
          *   &lt;/complexContent>
     598  
          * &lt;/complexType>
     599  
          * </pre>
     600  
          *
     601  
          *
     602  
          */
     603  
         @XmlAccessorType(XmlAccessType.FIELD)
     604  
         @XmlType(name = "", propOrder = {
     605  
             "pluginRepository"
     606  
         })
     607  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     608  0
         public static class PluginRepositories {
     609  
     
     610  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     611  
             protected List<Repository> pluginRepository;
     612  
     
     613  
             /**
     614  
              * Gets the value of the pluginRepository property.
     615  
              *
     616  
              * <p>
     617  
              * This accessor method returns a reference to the live list,
     618  
              * not a snapshot. Therefore any modification you make to the
     619  
              * returned list will be present inside the JAXB object.
     620  
              * This is why there is not a <CODE>set</CODE> method for the pluginRepository property.
     621  
              *
     622  
              * <p>
     623  
              * For example, to add a new item, do as follows:
     624  
              * <pre>
     625  
              *    getPluginRepository().add(newItem);
     626  
              * </pre>
     627  
              *
     628  
              *
     629  
              * <p>
     630  
              * Objects of the following type(s) are allowed in the list
     631  
              * {@link Repository }
     632  
              *
     633  
              *
     634  
              */
     635  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     636  
             public List<Repository> getPluginRepository() {
     637  0
                 if (pluginRepository == null) {
     638  0
                     pluginRepository = new ArrayList<Repository>();
     639  
                 }
     640  0
                 return this.pluginRepository;
     641  
             }
     642  
     
     643  
         }
     644  
     
     645  
     
     646  
         /**
     647  
          * <p>Java class for anonymous complex type.
     648  
          *
     649  
          * <p>The following schema fragment specifies the expected content contained within this class.
     650  
          *
     651  
          * <pre>
     652  
          * &lt;complexType>
     653  
          *   &lt;complexContent>
     654  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     655  
          *       &lt;sequence>
     656  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     657  
          *       &lt;/sequence>
     658  
          *     &lt;/restriction>
     659  
          *   &lt;/complexContent>
     660  
          * &lt;/complexType>
     661  
          * </pre>
     662  
          *
     663  
          *
     664  
          */
     665  
         @XmlAccessorType(XmlAccessType.FIELD)
     666  
         @XmlType(name = "", propOrder = {
     667  
             "any"
     668  
         })
     669  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     670  0
         public static class Properties {
     671  
     
     672  
             @XmlAnyElement
     673  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     674  
             protected List<Element> any;
     675  
     
     676  
             /**
     677  
              * Gets the value of the any property.
     678  
              *
     679  
              * <p>
     680  
              * This accessor method returns a reference to the live list,
     681  
              * not a snapshot. Therefore any modification you make to the
     682  
              * returned list will be present inside the JAXB object.
     683  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     684  
              *
     685  
              * <p>
     686  
              * For example, to add a new item, do as follows:
     687  
              * <pre>
     688  
              *    getAny().add(newItem);
     689  
              * </pre>
     690  
              *
     691  
              *
     692  
              * <p>
     693  
              * Objects of the following type(s) are allowed in the list
     694  
              * {@link Element }
     695  
              *
     696  
              *
     697  
              */
     698  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     699  
             public List<Element> getAny() {
     700  0
                 if (any == null) {
     701  0
                     any = new ArrayList<Element>();
     702  
                 }
     703  0
                 return this.any;
     704  
             }
     705  
     
     706  
         }
     707  
     
     708  
     
     709  
         /**
     710  
          * <p>Java class for anonymous complex type.
     711  
          *
     712  
          * <p>The following schema fragment specifies the expected content contained within this class.
     713  
          *
     714  
          * <pre>
     715  
          * &lt;complexType>
     716  
          *   &lt;complexContent>
     717  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     718  
          *       &lt;sequence>
     719  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     720  
          *       &lt;/sequence>
     721  
          *     &lt;/restriction>
     722  
          *   &lt;/complexContent>
     723  
          * &lt;/complexType>
     724  
          * </pre>
     725  
          *
     726  
          *
     727  
          */
     728  
         @XmlAccessorType(XmlAccessType.FIELD)
     729  
         @XmlType(name = "", propOrder = {
     730  
             "any"
     731  
         })
     732  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     733  0
         public static class Reports {
     734  
     
     735  
             @XmlAnyElement
     736  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     737  
             protected List<Element> any;
     738  
     
     739  
             /**
     740  
              * Gets the value of the any property.
     741  
              *
     742  
              * <p>
     743  
              * This accessor method returns a reference to the live list,
     744  
              * not a snapshot. Therefore any modification you make to the
     745  
              * returned list will be present inside the JAXB object.
     746  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     747  
              *
     748  
              * <p>
     749  
              * For example, to add a new item, do as follows:
     750  
              * <pre>
     751  
              *    getAny().add(newItem);
     752  
              * </pre>
     753  
              *
     754  
              *
     755  
              * <p>
     756  
              * Objects of the following type(s) are allowed in the list
     757  
              * {@link Element }
     758  
              *
     759  
              *
     760  
              */
     761  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     762  
             public List<Element> getAny() {
     763  0
                 if (any == null) {
     764  0
                     any = new ArrayList<Element>();
     765  
                 }
     766  0
                 return this.any;
     767  
             }
     768  
     
     769  
         }
     770  
     
     771  
     
     772  
         /**
     773  
          * <p>Java class for anonymous complex type.
     774  
          *
     775  
          * <p>The following schema fragment specifies the expected content contained within this class.
     776  
          *
     777  
          * <pre>
     778  
          * &lt;complexType>
     779  
          *   &lt;complexContent>
     780  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     781  
          *       &lt;sequence>
     782  
          *         &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
     783  
          *       &lt;/sequence>
     784  
          *     &lt;/restriction>
     785  
          *   &lt;/complexContent>
     786  
          * &lt;/complexType>
     787  
          * </pre>
     788  
          *
     789  
          *
     790  
          */
     791  11
         @XmlAccessorType(XmlAccessType.FIELD)
     792  
         @XmlType(name = "", propOrder = {
     793  
             "repository"
     794  
         })
     795  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     796  0
         public static class Repositories {
     797  
     
     798  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     799  
             protected List<Repository> repository;
     800  
     
     801  
             /**
     802  
              * Gets the value of the repository property.
     803  
              *
     804  
              * <p>
     805  
              * This accessor method returns a reference to the live list,
     806  
              * not a snapshot. Therefore any modification you make to the
     807  
              * returned list will be present inside the JAXB object.
     808  
              * This is why there is not a <CODE>set</CODE> method for the repository property.
     809  
              *
     810  
              * <p>
     811  
              * For example, to add a new item, do as follows:
     812  
              * <pre>
     813  
              *    getRepository().add(newItem);
     814  
              * </pre>
     815  
              *
     816  
              *
     817  
              * <p>
     818  
              * Objects of the following type(s) are allowed in the list
     819  
              * {@link Repository }
     820  
              *
     821  
              *
     822  
              */
     823  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     824  
             public List<Repository> getRepository() {
     825  0
                 if (repository == null) {
     826  0
                     repository = new ArrayList<Repository>();
     827  
                 }
     828  0
                 return this.repository;
     829  
             }
     830  
     
     831  
         }
     832  
     
     833  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html new file mode 100644 index 000000000..797209bcc --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html @@ -0,0 +1,335 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Relocation
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Relocation
    0%
    0/13
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      * Describes where an artifact has moved to. If any of the values are omitted, it is assumed to be the
     19  
      *         same as it was before.
     20  
      *
     21  
      * <p>Java class for Relocation complex type.
     22  
      *
     23  
      * <p>The following schema fragment specifies the expected content contained within this class.
     24  
      *
     25  
      * <pre>
     26  
      * &lt;complexType name="Relocation">
     27  
      *   &lt;complexContent>
     28  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     29  
      *       &lt;all>
     30  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="message" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *       &lt;/all>
     35  
      *     &lt;/restriction>
     36  
      *   &lt;/complexContent>
     37  
      * &lt;/complexType>
     38  
      * </pre>
     39  
      *
     40  
      *
     41  
      */
     42  
     @XmlAccessorType(XmlAccessType.FIELD)
     43  
     @XmlType(name = "Relocation", propOrder = {
     44  
     
     45  
     })
     46  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     47  0
     public class Relocation {
     48  
     
     49  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  
         protected String groupId;
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String artifactId;
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected String version;
     55  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     56  
         protected String message;
     57  
     
     58  
         /**
     59  
          * Gets the value of the groupId property.
     60  
          *
     61  
          * @return
     62  
          *     possible object is
     63  
          *     {@link String }
     64  
          *
     65  
          */
     66  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     67  
         public String getGroupId() {
     68  0
             return groupId;
     69  
         }
     70  
     
     71  
         /**
     72  
          * Sets the value of the groupId property.
     73  
          *
     74  
          * @param value
     75  
          *     allowed object is
     76  
          *     {@link String }
     77  
          *
     78  
          */
     79  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     80  
         public void setGroupId(String value) {
     81  0
             this.groupId = value;
     82  0
         }
     83  
     
     84  
         /**
     85  
          * Gets the value of the artifactId property.
     86  
          *
     87  
          * @return
     88  
          *     possible object is
     89  
          *     {@link String }
     90  
          *
     91  
          */
     92  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     93  
         public String getArtifactId() {
     94  0
             return artifactId;
     95  
         }
     96  
     
     97  
         /**
     98  
          * Sets the value of the artifactId property.
     99  
          *
     100  
          * @param value
     101  
          *     allowed object is
     102  
          *     {@link String }
     103  
          *
     104  
          */
     105  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     106  
         public void setArtifactId(String value) {
     107  0
             this.artifactId = value;
     108  0
         }
     109  
     
     110  
         /**
     111  
          * Gets the value of the version property.
     112  
          *
     113  
          * @return
     114  
          *     possible object is
     115  
          *     {@link String }
     116  
          *
     117  
          */
     118  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     119  
         public String getVersion() {
     120  0
             return version;
     121  
         }
     122  
     
     123  
         /**
     124  
          * Sets the value of the version property.
     125  
          *
     126  
          * @param value
     127  
          *     allowed object is
     128  
          *     {@link String }
     129  
          *
     130  
          */
     131  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     132  
         public void setVersion(String value) {
     133  0
             this.version = value;
     134  0
         }
     135  
     
     136  
         /**
     137  
          * Gets the value of the message property.
     138  
          *
     139  
          * @return
     140  
          *     possible object is
     141  
          *     {@link String }
     142  
          *
     143  
          */
     144  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     145  
         public String getMessage() {
     146  0
             return message;
     147  
         }
     148  
     
     149  
         /**
     150  
          * Sets the value of the message property.
     151  
          *
     152  
          * @param value
     153  
          *     allowed object is
     154  
          *     {@link String }
     155  
          *
     156  
          */
     157  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     158  
         public void setMessage(String value) {
     159  0
             this.message = value;
     160  0
         }
     161  
     
     162  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html new file mode 100644 index 000000000..475c46a25 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html @@ -0,0 +1,738 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ReportPlugin
    10%
    2/20
    N/A
    1.143
    ReportPlugin$Configuration
    25%
    1/4
    0%
    0/2
    1.143
    ReportPlugin$ReportSets
    25%
    1/4
    0%
    0/2
    1.143
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlElement;
     18  
     import javax.xml.bind.annotation.XmlType;
     19  
     import org.w3c.dom.Element;
     20  
     
     21  
     
     22  
     /**
     23  
      *  4.0.0
     24  
      *
     25  
      * <p>Java class for ReportPlugin complex type.
     26  
      *
     27  
      * <p>The following schema fragment specifies the expected content contained within this class.
     28  
      *
     29  
      * <pre>
     30  
      * &lt;complexType name="ReportPlugin">
     31  
      *   &lt;complexContent>
     32  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     33  
      *       &lt;all>
     34  
      *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *         &lt;element name="configuration" minOccurs="0">
     39  
      *           &lt;complexType>
     40  
      *             &lt;complexContent>
     41  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     42  
      *                 &lt;sequence>
     43  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     44  
      *                 &lt;/sequence>
     45  
      *               &lt;/restriction>
     46  
      *             &lt;/complexContent>
     47  
      *           &lt;/complexType>
     48  
      *         &lt;/element>
     49  
      *         &lt;element name="reportSets" minOccurs="0">
     50  
      *           &lt;complexType>
     51  
      *             &lt;complexContent>
     52  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     53  
      *                 &lt;sequence>
     54  
      *                   &lt;element name="reportSet" type="{http://maven.apache.org/POM/4.0.0}ReportSet" maxOccurs="unbounded" minOccurs="0"/>
     55  
      *                 &lt;/sequence>
     56  
      *               &lt;/restriction>
     57  
      *             &lt;/complexContent>
     58  
      *           &lt;/complexType>
     59  
      *         &lt;/element>
     60  
      *       &lt;/all>
     61  
      *     &lt;/restriction>
     62  
      *   &lt;/complexContent>
     63  
      * &lt;/complexType>
     64  
      * </pre>
     65  
      *
     66  
      *
     67  
      */
     68  
     @XmlAccessorType(XmlAccessType.FIELD)
     69  
     @XmlType(name = "ReportPlugin", propOrder = {
     70  
     
     71  
     })
     72  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     73  14
     public class ReportPlugin {
     74  
     
     75  
         @XmlElement(defaultValue = "org.apache.maven.plugins")
     76  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     77  
         protected String groupId;
     78  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     79  
         protected String artifactId;
     80  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     81  
         protected String version;
     82  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     83  
         protected String inherited;
     84  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     85  
         protected ReportPlugin.Configuration configuration;
     86  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     87  
         protected ReportPlugin.ReportSets reportSets;
     88  
     
     89  
         /**
     90  
          * Gets the value of the groupId property.
     91  
          *
     92  
          * @return
     93  
          *     possible object is
     94  
          *     {@link String }
     95  
          *
     96  
          */
     97  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     98  
         public String getGroupId() {
     99  0
             return groupId;
     100  
         }
     101  
     
     102  
         /**
     103  
          * Sets the value of the groupId property.
     104  
          *
     105  
          * @param value
     106  
          *     allowed object is
     107  
          *     {@link String }
     108  
          *
     109  
          */
     110  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     111  
         public void setGroupId(String value) {
     112  0
             this.groupId = value;
     113  0
         }
     114  
     
     115  
         /**
     116  
          * Gets the value of the artifactId property.
     117  
          *
     118  
          * @return
     119  
          *     possible object is
     120  
          *     {@link String }
     121  
          *
     122  
          */
     123  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     124  
         public String getArtifactId() {
     125  0
             return artifactId;
     126  
         }
     127  
     
     128  
         /**
     129  
          * Sets the value of the artifactId property.
     130  
          *
     131  
          * @param value
     132  
          *     allowed object is
     133  
          *     {@link String }
     134  
          *
     135  
          */
     136  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     137  
         public void setArtifactId(String value) {
     138  0
             this.artifactId = value;
     139  0
         }
     140  
     
     141  
         /**
     142  
          * Gets the value of the version property.
     143  
          *
     144  
          * @return
     145  
          *     possible object is
     146  
          *     {@link String }
     147  
          *
     148  
          */
     149  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     150  
         public String getVersion() {
     151  0
             return version;
     152  
         }
     153  
     
     154  
         /**
     155  
          * Sets the value of the version property.
     156  
          *
     157  
          * @param value
     158  
          *     allowed object is
     159  
          *     {@link String }
     160  
          *
     161  
          */
     162  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     163  
         public void setVersion(String value) {
     164  0
             this.version = value;
     165  0
         }
     166  
     
     167  
         /**
     168  
          * Gets the value of the inherited property.
     169  
          *
     170  
          * @return
     171  
          *     possible object is
     172  
          *     {@link String }
     173  
          *
     174  
          */
     175  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     176  
         public String getInherited() {
     177  0
             return inherited;
     178  
         }
     179  
     
     180  
         /**
     181  
          * Sets the value of the inherited property.
     182  
          *
     183  
          * @param value
     184  
          *     allowed object is
     185  
          *     {@link String }
     186  
          *
     187  
          */
     188  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     189  
         public void setInherited(String value) {
     190  0
             this.inherited = value;
     191  0
         }
     192  
     
     193  
         /**
     194  
          * Gets the value of the configuration property.
     195  
          *
     196  
          * @return
     197  
          *     possible object is
     198  
          *     {@link ReportPlugin.Configuration }
     199  
          *
     200  
          */
     201  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     202  
         public ReportPlugin.Configuration getConfiguration() {
     203  0
             return configuration;
     204  
         }
     205  
     
     206  
         /**
     207  
          * Sets the value of the configuration property.
     208  
          *
     209  
          * @param value
     210  
          *     allowed object is
     211  
          *     {@link ReportPlugin.Configuration }
     212  
          *
     213  
          */
     214  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     215  
         public void setConfiguration(ReportPlugin.Configuration value) {
     216  0
             this.configuration = value;
     217  0
         }
     218  
     
     219  
         /**
     220  
          * Gets the value of the reportSets property.
     221  
          *
     222  
          * @return
     223  
          *     possible object is
     224  
          *     {@link ReportPlugin.ReportSets }
     225  
          *
     226  
          */
     227  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     228  
         public ReportPlugin.ReportSets getReportSets() {
     229  0
             return reportSets;
     230  
         }
     231  
     
     232  
         /**
     233  
          * Sets the value of the reportSets property.
     234  
          *
     235  
          * @param value
     236  
          *     allowed object is
     237  
          *     {@link ReportPlugin.ReportSets }
     238  
          *
     239  
          */
     240  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     241  
         public void setReportSets(ReportPlugin.ReportSets value) {
     242  0
             this.reportSets = value;
     243  0
         }
     244  
     
     245  
     
     246  
         /**
     247  
          * <p>Java class for anonymous complex type.
     248  
          *
     249  
          * <p>The following schema fragment specifies the expected content contained within this class.
     250  
          *
     251  
          * <pre>
     252  
          * &lt;complexType>
     253  
          *   &lt;complexContent>
     254  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     255  
          *       &lt;sequence>
     256  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     257  
          *       &lt;/sequence>
     258  
          *     &lt;/restriction>
     259  
          *   &lt;/complexContent>
     260  
          * &lt;/complexType>
     261  
          * </pre>
     262  
          *
     263  
          *
     264  
          */
     265  
         @XmlAccessorType(XmlAccessType.FIELD)
     266  
         @XmlType(name = "", propOrder = {
     267  
             "any"
     268  
         })
     269  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     270  12
         public static class Configuration {
     271  
     
     272  
             @XmlAnyElement
     273  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     274  
             protected List<Element> any;
     275  
     
     276  
             /**
     277  
              * Gets the value of the any property.
     278  
              *
     279  
              * <p>
     280  
              * This accessor method returns a reference to the live list,
     281  
              * not a snapshot. Therefore any modification you make to the
     282  
              * returned list will be present inside the JAXB object.
     283  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     284  
              *
     285  
              * <p>
     286  
              * For example, to add a new item, do as follows:
     287  
              * <pre>
     288  
              *    getAny().add(newItem);
     289  
              * </pre>
     290  
              *
     291  
              *
     292  
              * <p>
     293  
              * Objects of the following type(s) are allowed in the list
     294  
              * {@link Element }
     295  
              *
     296  
              *
     297  
              */
     298  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     299  
             public List<Element> getAny() {
     300  0
                 if (any == null) {
     301  0
                     any = new ArrayList<Element>();
     302  
                 }
     303  0
                 return this.any;
     304  
             }
     305  
     
     306  
         }
     307  
     
     308  
     
     309  
         /**
     310  
          * <p>Java class for anonymous complex type.
     311  
          *
     312  
          * <p>The following schema fragment specifies the expected content contained within this class.
     313  
          *
     314  
          * <pre>
     315  
          * &lt;complexType>
     316  
          *   &lt;complexContent>
     317  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     318  
          *       &lt;sequence>
     319  
          *         &lt;element name="reportSet" type="{http://maven.apache.org/POM/4.0.0}ReportSet" maxOccurs="unbounded" minOccurs="0"/>
     320  
          *       &lt;/sequence>
     321  
          *     &lt;/restriction>
     322  
          *   &lt;/complexContent>
     323  
          * &lt;/complexType>
     324  
          * </pre>
     325  
          *
     326  
          *
     327  
          */
     328  14
         @XmlAccessorType(XmlAccessType.FIELD)
     329  
         @XmlType(name = "", propOrder = {
     330  
             "reportSet"
     331  
         })
     332  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     333  3
         public static class ReportSets {
     334  
     
     335  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     336  
             protected List<ReportSet> reportSet;
     337  
     
     338  
             /**
     339  
              * Gets the value of the reportSet property.
     340  
              *
     341  
              * <p>
     342  
              * This accessor method returns a reference to the live list,
     343  
              * not a snapshot. Therefore any modification you make to the
     344  
              * returned list will be present inside the JAXB object.
     345  
              * This is why there is not a <CODE>set</CODE> method for the reportSet property.
     346  
              *
     347  
              * <p>
     348  
              * For example, to add a new item, do as follows:
     349  
              * <pre>
     350  
              *    getReportSet().add(newItem);
     351  
              * </pre>
     352  
              *
     353  
              *
     354  
              * <p>
     355  
              * Objects of the following type(s) are allowed in the list
     356  
              * {@link ReportSet }
     357  
              *
     358  
              *
     359  
              */
     360  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     361  
             public List<ReportSet> getReportSet() {
     362  0
                 if (reportSet == null) {
     363  0
                     reportSet = new ArrayList<ReportSet>();
     364  
                 }
     365  0
                 return this.reportSet;
     366  
             }
     367  
     
     368  
         }
     369  
     
     370  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html new file mode 100644 index 000000000..456e96c49 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html @@ -0,0 +1,628 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.ReportSet
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ReportSet
    14%
    2/14
    N/A
    1.2
    ReportSet$Configuration
    0%
    0/4
    0%
    0/2
    1.2
    ReportSet$Reports
    25%
    1/4
    0%
    0/2
    1.2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlAnyElement;
     17  
     import javax.xml.bind.annotation.XmlElement;
     18  
     import javax.xml.bind.annotation.XmlType;
     19  
     import org.w3c.dom.Element;
     20  
     
     21  
     
     22  
     /**
     23  
      * Represents a set of reports and configuration to be used to generate them.
     24  
      *
     25  
      * <p>Java class for ReportSet complex type.
     26  
      *
     27  
      * <p>The following schema fragment specifies the expected content contained within this class.
     28  
      *
     29  
      * <pre>
     30  
      * &lt;complexType name="ReportSet">
     31  
      *   &lt;complexContent>
     32  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     33  
      *       &lt;all>
     34  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="configuration" minOccurs="0">
     36  
      *           &lt;complexType>
     37  
      *             &lt;complexContent>
     38  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     39  
      *                 &lt;sequence>
     40  
      *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     41  
      *                 &lt;/sequence>
     42  
      *               &lt;/restriction>
     43  
      *             &lt;/complexContent>
     44  
      *           &lt;/complexType>
     45  
      *         &lt;/element>
     46  
      *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     47  
      *         &lt;element name="reports" minOccurs="0">
     48  
      *           &lt;complexType>
     49  
      *             &lt;complexContent>
     50  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     51  
      *                 &lt;sequence>
     52  
      *                   &lt;element name="report" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     53  
      *                 &lt;/sequence>
     54  
      *               &lt;/restriction>
     55  
      *             &lt;/complexContent>
     56  
      *           &lt;/complexType>
     57  
      *         &lt;/element>
     58  
      *       &lt;/all>
     59  
      *     &lt;/restriction>
     60  
      *   &lt;/complexContent>
     61  
      * &lt;/complexType>
     62  
      * </pre>
     63  
      *
     64  
      *
     65  
      */
     66  
     @XmlAccessorType(XmlAccessType.FIELD)
     67  
     @XmlType(name = "ReportSet", propOrder = {
     68  
     
     69  
     })
     70  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     71  3
     public class ReportSet {
     72  
     
     73  
         @XmlElement(defaultValue = "default")
     74  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     75  
         protected String id;
     76  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     77  
         protected ReportSet.Configuration configuration;
     78  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     79  
         protected String inherited;
     80  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     81  
         protected ReportSet.Reports reports;
     82  
     
     83  
         /**
     84  
          * Gets the value of the id property.
     85  
          *
     86  
          * @return
     87  
          *     possible object is
     88  
          *     {@link String }
     89  
          *
     90  
          */
     91  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     92  
         public String getId() {
     93  0
             return id;
     94  
         }
     95  
     
     96  
         /**
     97  
          * Sets the value of the id property.
     98  
          *
     99  
          * @param value
     100  
          *     allowed object is
     101  
          *     {@link String }
     102  
          *
     103  
          */
     104  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     105  
         public void setId(String value) {
     106  0
             this.id = value;
     107  0
         }
     108  
     
     109  
         /**
     110  
          * Gets the value of the configuration property.
     111  
          *
     112  
          * @return
     113  
          *     possible object is
     114  
          *     {@link ReportSet.Configuration }
     115  
          *
     116  
          */
     117  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     118  
         public ReportSet.Configuration getConfiguration() {
     119  0
             return configuration;
     120  
         }
     121  
     
     122  
         /**
     123  
          * Sets the value of the configuration property.
     124  
          *
     125  
          * @param value
     126  
          *     allowed object is
     127  
          *     {@link ReportSet.Configuration }
     128  
          *
     129  
          */
     130  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     131  
         public void setConfiguration(ReportSet.Configuration value) {
     132  0
             this.configuration = value;
     133  0
         }
     134  
     
     135  
         /**
     136  
          * Gets the value of the inherited property.
     137  
          *
     138  
          * @return
     139  
          *     possible object is
     140  
          *     {@link String }
     141  
          *
     142  
          */
     143  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     144  
         public String getInherited() {
     145  0
             return inherited;
     146  
         }
     147  
     
     148  
         /**
     149  
          * Sets the value of the inherited property.
     150  
          *
     151  
          * @param value
     152  
          *     allowed object is
     153  
          *     {@link String }
     154  
          *
     155  
          */
     156  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     157  
         public void setInherited(String value) {
     158  0
             this.inherited = value;
     159  0
         }
     160  
     
     161  
         /**
     162  
          * Gets the value of the reports property.
     163  
          *
     164  
          * @return
     165  
          *     possible object is
     166  
          *     {@link ReportSet.Reports }
     167  
          *
     168  
          */
     169  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     170  
         public ReportSet.Reports getReports() {
     171  0
             return reports;
     172  
         }
     173  
     
     174  
         /**
     175  
          * Sets the value of the reports property.
     176  
          *
     177  
          * @param value
     178  
          *     allowed object is
     179  
          *     {@link ReportSet.Reports }
     180  
          *
     181  
          */
     182  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     183  
         public void setReports(ReportSet.Reports value) {
     184  0
             this.reports = value;
     185  0
         }
     186  
     
     187  
     
     188  
         /**
     189  
          * <p>Java class for anonymous complex type.
     190  
          *
     191  
          * <p>The following schema fragment specifies the expected content contained within this class.
     192  
          *
     193  
          * <pre>
     194  
          * &lt;complexType>
     195  
          *   &lt;complexContent>
     196  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     197  
          *       &lt;sequence>
     198  
          *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
     199  
          *       &lt;/sequence>
     200  
          *     &lt;/restriction>
     201  
          *   &lt;/complexContent>
     202  
          * &lt;/complexType>
     203  
          * </pre>
     204  
          *
     205  
          *
     206  
          */
     207  
         @XmlAccessorType(XmlAccessType.FIELD)
     208  
         @XmlType(name = "", propOrder = {
     209  
             "any"
     210  
         })
     211  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     212  0
         public static class Configuration {
     213  
     
     214  
             @XmlAnyElement
     215  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     216  
             protected List<Element> any;
     217  
     
     218  
             /**
     219  
              * Gets the value of the any property.
     220  
              *
     221  
              * <p>
     222  
              * This accessor method returns a reference to the live list,
     223  
              * not a snapshot. Therefore any modification you make to the
     224  
              * returned list will be present inside the JAXB object.
     225  
              * This is why there is not a <CODE>set</CODE> method for the any property.
     226  
              *
     227  
              * <p>
     228  
              * For example, to add a new item, do as follows:
     229  
              * <pre>
     230  
              *    getAny().add(newItem);
     231  
              * </pre>
     232  
              *
     233  
              *
     234  
              * <p>
     235  
              * Objects of the following type(s) are allowed in the list
     236  
              * {@link Element }
     237  
              *
     238  
              *
     239  
              */
     240  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     241  
             public List<Element> getAny() {
     242  0
                 if (any == null) {
     243  0
                     any = new ArrayList<Element>();
     244  
                 }
     245  0
                 return this.any;
     246  
             }
     247  
     
     248  
         }
     249  
     
     250  
     
     251  
         /**
     252  
          * <p>Java class for anonymous complex type.
     253  
          *
     254  
          * <p>The following schema fragment specifies the expected content contained within this class.
     255  
          *
     256  
          * <pre>
     257  
          * &lt;complexType>
     258  
          *   &lt;complexContent>
     259  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     260  
          *       &lt;sequence>
     261  
          *         &lt;element name="report" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     262  
          *       &lt;/sequence>
     263  
          *     &lt;/restriction>
     264  
          *   &lt;/complexContent>
     265  
          * &lt;/complexType>
     266  
          * </pre>
     267  
          *
     268  
          *
     269  
          */
     270  3
         @XmlAccessorType(XmlAccessType.FIELD)
     271  
         @XmlType(name = "", propOrder = {
     272  
             "report"
     273  
         })
     274  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     275  3
         public static class Reports {
     276  
     
     277  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     278  
             protected List<String> report;
     279  
     
     280  
             /**
     281  
              * Gets the value of the report property.
     282  
              *
     283  
              * <p>
     284  
              * This accessor method returns a reference to the live list,
     285  
              * not a snapshot. Therefore any modification you make to the
     286  
              * returned list will be present inside the JAXB object.
     287  
              * This is why there is not a <CODE>set</CODE> method for the report property.
     288  
              *
     289  
              * <p>
     290  
              * For example, to add a new item, do as follows:
     291  
              * <pre>
     292  
              *    getReport().add(newItem);
     293  
              * </pre>
     294  
              *
     295  
              *
     296  
              * <p>
     297  
              * Objects of the following type(s) are allowed in the list
     298  
              * {@link String }
     299  
              *
     300  
              *
     301  
              */
     302  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     303  
             public List<String> getReport() {
     304  0
                 if (report == null) {
     305  0
                     report = new ArrayList<String>();
     306  
                 }
     307  0
                 return this.report;
     308  
             }
     309  
     
     310  
         }
     311  
     
     312  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html new file mode 100644 index 000000000..e549deace --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html @@ -0,0 +1,426 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Reporting
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Reporting
    18%
    2/11
    N/A
    1.143
    Reporting$Plugins
    25%
    1/4
    0%
    0/2
    1.143
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlElement;
     17  
     import javax.xml.bind.annotation.XmlType;
     18  
     
     19  
     
     20  
     /**
     21  
      * Section for management of reports and their configuration.
     22  
      *
     23  
      * <p>Java class for Reporting complex type.
     24  
      *
     25  
      * <p>The following schema fragment specifies the expected content contained within this class.
     26  
      *
     27  
      * <pre>
     28  
      * &lt;complexType name="Reporting">
     29  
      *   &lt;complexContent>
     30  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     31  
      *       &lt;all>
     32  
      *         &lt;element name="excludeDefaults" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     33  
      *         &lt;element name="outputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *         &lt;element name="plugins" minOccurs="0">
     35  
      *           &lt;complexType>
     36  
      *             &lt;complexContent>
     37  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     38  
      *                 &lt;sequence>
     39  
      *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}ReportPlugin" maxOccurs="unbounded" minOccurs="0"/>
     40  
      *                 &lt;/sequence>
     41  
      *               &lt;/restriction>
     42  
      *             &lt;/complexContent>
     43  
      *           &lt;/complexType>
     44  
      *         &lt;/element>
     45  
      *       &lt;/all>
     46  
      *     &lt;/restriction>
     47  
      *   &lt;/complexContent>
     48  
      * &lt;/complexType>
     49  
      * </pre>
     50  
      *
     51  
      *
     52  
      */
     53  
     @XmlAccessorType(XmlAccessType.FIELD)
     54  
     @XmlType(name = "Reporting", propOrder = {
     55  
     
     56  
     })
     57  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     58  5
     public class Reporting {
     59  
     
     60  
         @XmlElement(defaultValue = "false")
     61  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     62  
         protected Boolean excludeDefaults;
     63  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     64  
         protected String outputDirectory;
     65  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     66  
         protected Reporting.Plugins plugins;
     67  
     
     68  
         /**
     69  
          * Gets the value of the excludeDefaults property.
     70  
          *
     71  
          * @return
     72  
          *     possible object is
     73  
          *     {@link Boolean }
     74  
          *
     75  
          */
     76  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     77  
         public Boolean isExcludeDefaults() {
     78  0
             return excludeDefaults;
     79  
         }
     80  
     
     81  
         /**
     82  
          * Sets the value of the excludeDefaults property.
     83  
          *
     84  
          * @param value
     85  
          *     allowed object is
     86  
          *     {@link Boolean }
     87  
          *
     88  
          */
     89  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     90  
         public void setExcludeDefaults(Boolean value) {
     91  0
             this.excludeDefaults = value;
     92  0
         }
     93  
     
     94  
         /**
     95  
          * Gets the value of the outputDirectory property.
     96  
          *
     97  
          * @return
     98  
          *     possible object is
     99  
          *     {@link String }
     100  
          *
     101  
          */
     102  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     103  
         public String getOutputDirectory() {
     104  0
             return outputDirectory;
     105  
         }
     106  
     
     107  
         /**
     108  
          * Sets the value of the outputDirectory property.
     109  
          *
     110  
          * @param value
     111  
          *     allowed object is
     112  
          *     {@link String }
     113  
          *
     114  
          */
     115  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     116  
         public void setOutputDirectory(String value) {
     117  0
             this.outputDirectory = value;
     118  0
         }
     119  
     
     120  
         /**
     121  
          * Gets the value of the plugins property.
     122  
          *
     123  
          * @return
     124  
          *     possible object is
     125  
          *     {@link Reporting.Plugins }
     126  
          *
     127  
          */
     128  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     129  
         public Reporting.Plugins getPlugins() {
     130  0
             return plugins;
     131  
         }
     132  
     
     133  
         /**
     134  
          * Sets the value of the plugins property.
     135  
          *
     136  
          * @param value
     137  
          *     allowed object is
     138  
          *     {@link Reporting.Plugins }
     139  
          *
     140  
          */
     141  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     142  
         public void setPlugins(Reporting.Plugins value) {
     143  0
             this.plugins = value;
     144  0
         }
     145  
     
     146  
     
     147  
         /**
     148  
          * <p>Java class for anonymous complex type.
     149  
          *
     150  
          * <p>The following schema fragment specifies the expected content contained within this class.
     151  
          *
     152  
          * <pre>
     153  
          * &lt;complexType>
     154  
          *   &lt;complexContent>
     155  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     156  
          *       &lt;sequence>
     157  
          *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}ReportPlugin" maxOccurs="unbounded" minOccurs="0"/>
     158  
          *       &lt;/sequence>
     159  
          *     &lt;/restriction>
     160  
          *   &lt;/complexContent>
     161  
          * &lt;/complexType>
     162  
          * </pre>
     163  
          *
     164  
          *
     165  
          */
     166  5
         @XmlAccessorType(XmlAccessType.FIELD)
     167  
         @XmlType(name = "", propOrder = {
     168  
             "plugin"
     169  
         })
     170  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     171  5
         public static class Plugins {
     172  
     
     173  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     174  
             protected List<ReportPlugin> plugin;
     175  
     
     176  
             /**
     177  
              * Gets the value of the plugin property.
     178  
              *
     179  
              * <p>
     180  
              * This accessor method returns a reference to the live list,
     181  
              * not a snapshot. Therefore any modification you make to the
     182  
              * returned list will be present inside the JAXB object.
     183  
              * This is why there is not a <CODE>set</CODE> method for the plugin property.
     184  
              *
     185  
              * <p>
     186  
              * For example, to add a new item, do as follows:
     187  
              * <pre>
     188  
              *    getPlugin().add(newItem);
     189  
              * </pre>
     190  
              *
     191  
              *
     192  
              * <p>
     193  
              * Objects of the following type(s) are allowed in the list
     194  
              * {@link ReportPlugin }
     195  
              *
     196  
              *
     197  
              */
     198  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     199  
             public List<ReportPlugin> getPlugin() {
     200  0
                 if (plugin == null) {
     201  0
                     plugin = new ArrayList<ReportPlugin>();
     202  
                 }
     203  0
                 return this.plugin;
     204  
             }
     205  
     
     206  
         }
     207  
     
     208  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html new file mode 100644 index 000000000..edbb7fcd0 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html @@ -0,0 +1,451 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Repository
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Repository
    5%
    1/19
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      *
     20  
      *         A repository contains the information needed for establishing connections with remote repository.
     21  
      *
     22  
      *
     23  
      * <p>Java class for Repository complex type.
     24  
      *
     25  
      * <p>The following schema fragment specifies the expected content contained within this class.
     26  
      *
     27  
      * <pre>
     28  
      * &lt;complexType name="Repository">
     29  
      *   &lt;complexContent>
     30  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     31  
      *       &lt;all>
     32  
      *         &lt;element name="releases" type="{http://maven.apache.org/POM/4.0.0}RepositoryPolicy" minOccurs="0"/>
     33  
      *         &lt;element name="snapshots" type="{http://maven.apache.org/POM/4.0.0}RepositoryPolicy" minOccurs="0"/>
     34  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     35  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     37  
      *         &lt;element name="layout" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *       &lt;/all>
     39  
      *     &lt;/restriction>
     40  
      *   &lt;/complexContent>
     41  
      * &lt;/complexType>
     42  
      * </pre>
     43  
      *
     44  
      *
     45  
      */
     46  
     @XmlAccessorType(XmlAccessType.FIELD)
     47  
     @XmlType(name = "Repository", propOrder = {
     48  
     
     49  
     })
     50  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     51  3
     public class Repository {
     52  
     
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected RepositoryPolicy releases;
     55  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     56  
         protected RepositoryPolicy snapshots;
     57  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     58  
         protected String id;
     59  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     60  
         protected String name;
     61  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     62  
         protected String url;
     63  
         @XmlElement(defaultValue = "default")
     64  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     65  
         protected String layout;
     66  
     
     67  
         /**
     68  
          * Gets the value of the releases property.
     69  
          *
     70  
          * @return
     71  
          *     possible object is
     72  
          *     {@link RepositoryPolicy }
     73  
          *
     74  
          */
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         public RepositoryPolicy getReleases() {
     77  0
             return releases;
     78  
         }
     79  
     
     80  
         /**
     81  
          * Sets the value of the releases property.
     82  
          *
     83  
          * @param value
     84  
          *     allowed object is
     85  
          *     {@link RepositoryPolicy }
     86  
          *
     87  
          */
     88  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     89  
         public void setReleases(RepositoryPolicy value) {
     90  0
             this.releases = value;
     91  0
         }
     92  
     
     93  
         /**
     94  
          * Gets the value of the snapshots property.
     95  
          *
     96  
          * @return
     97  
          *     possible object is
     98  
          *     {@link RepositoryPolicy }
     99  
          *
     100  
          */
     101  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     102  
         public RepositoryPolicy getSnapshots() {
     103  0
             return snapshots;
     104  
         }
     105  
     
     106  
         /**
     107  
          * Sets the value of the snapshots property.
     108  
          *
     109  
          * @param value
     110  
          *     allowed object is
     111  
          *     {@link RepositoryPolicy }
     112  
          *
     113  
          */
     114  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     115  
         public void setSnapshots(RepositoryPolicy value) {
     116  0
             this.snapshots = value;
     117  0
         }
     118  
     
     119  
         /**
     120  
          * Gets the value of the id property.
     121  
          *
     122  
          * @return
     123  
          *     possible object is
     124  
          *     {@link String }
     125  
          *
     126  
          */
     127  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     128  
         public String getId() {
     129  0
             return id;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Sets the value of the id property.
     134  
          *
     135  
          * @param value
     136  
          *     allowed object is
     137  
          *     {@link String }
     138  
          *
     139  
          */
     140  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     141  
         public void setId(String value) {
     142  0
             this.id = value;
     143  0
         }
     144  
     
     145  
         /**
     146  
          * Gets the value of the name property.
     147  
          *
     148  
          * @return
     149  
          *     possible object is
     150  
          *     {@link String }
     151  
          *
     152  
          */
     153  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     154  
         public String getName() {
     155  0
             return name;
     156  
         }
     157  
     
     158  
         /**
     159  
          * Sets the value of the name property.
     160  
          *
     161  
          * @param value
     162  
          *     allowed object is
     163  
          *     {@link String }
     164  
          *
     165  
          */
     166  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     167  
         public void setName(String value) {
     168  0
             this.name = value;
     169  0
         }
     170  
     
     171  
         /**
     172  
          * Gets the value of the url property.
     173  
          *
     174  
          * @return
     175  
          *     possible object is
     176  
          *     {@link String }
     177  
          *
     178  
          */
     179  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     180  
         public String getUrl() {
     181  0
             return url;
     182  
         }
     183  
     
     184  
         /**
     185  
          * Sets the value of the url property.
     186  
          *
     187  
          * @param value
     188  
          *     allowed object is
     189  
          *     {@link String }
     190  
          *
     191  
          */
     192  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     193  
         public void setUrl(String value) {
     194  0
             this.url = value;
     195  0
         }
     196  
     
     197  
         /**
     198  
          * Gets the value of the layout property.
     199  
          *
     200  
          * @return
     201  
          *     possible object is
     202  
          *     {@link String }
     203  
          *
     204  
          */
     205  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     206  
         public String getLayout() {
     207  0
             return layout;
     208  
         }
     209  
     
     210  
         /**
     211  
          * Sets the value of the layout property.
     212  
          *
     213  
          * @param value
     214  
          *     allowed object is
     215  
          *     {@link String }
     216  
          *
     217  
          */
     218  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     219  
         public void setLayout(String value) {
     220  0
             this.layout = value;
     221  0
         }
     222  
     
     223  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html new file mode 100644 index 000000000..9e3fa2f6a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html @@ -0,0 +1,282 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    RepositoryPolicy
    10%
    1/10
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      * Download policy
     20  
      *
     21  
      * <p>Java class for RepositoryPolicy complex type.
     22  
      *
     23  
      * <p>The following schema fragment specifies the expected content contained within this class.
     24  
      *
     25  
      * <pre>
     26  
      * &lt;complexType name="RepositoryPolicy">
     27  
      *   &lt;complexContent>
     28  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     29  
      *       &lt;all>
     30  
      *         &lt;element name="enabled" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     31  
      *         &lt;element name="updatePolicy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="checksumPolicy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *       &lt;/all>
     34  
      *     &lt;/restriction>
     35  
      *   &lt;/complexContent>
     36  
      * &lt;/complexType>
     37  
      * </pre>
     38  
      *
     39  
      *
     40  
      */
     41  
     @XmlAccessorType(XmlAccessType.FIELD)
     42  
     @XmlType(name = "RepositoryPolicy", propOrder = {
     43  
     
     44  
     })
     45  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     46  6
     public class RepositoryPolicy {
     47  
     
     48  
         @XmlElement(defaultValue = "true")
     49  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  
         protected Boolean enabled;
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String updatePolicy;
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected String checksumPolicy;
     55  
     
     56  
         /**
     57  
          * Gets the value of the enabled property.
     58  
          *
     59  
          * @return
     60  
          *     possible object is
     61  
          *     {@link Boolean }
     62  
          *
     63  
          */
     64  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     65  
         public Boolean isEnabled() {
     66  0
             return enabled;
     67  
         }
     68  
     
     69  
         /**
     70  
          * Sets the value of the enabled property.
     71  
          *
     72  
          * @param value
     73  
          *     allowed object is
     74  
          *     {@link Boolean }
     75  
          *
     76  
          */
     77  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     78  
         public void setEnabled(Boolean value) {
     79  0
             this.enabled = value;
     80  0
         }
     81  
     
     82  
         /**
     83  
          * Gets the value of the updatePolicy property.
     84  
          *
     85  
          * @return
     86  
          *     possible object is
     87  
          *     {@link String }
     88  
          *
     89  
          */
     90  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     91  
         public String getUpdatePolicy() {
     92  0
             return updatePolicy;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Sets the value of the updatePolicy property.
     97  
          *
     98  
          * @param value
     99  
          *     allowed object is
     100  
          *     {@link String }
     101  
          *
     102  
          */
     103  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     104  
         public void setUpdatePolicy(String value) {
     105  0
             this.updatePolicy = value;
     106  0
         }
     107  
     
     108  
         /**
     109  
          * Gets the value of the checksumPolicy property.
     110  
          *
     111  
          * @return
     112  
          *     possible object is
     113  
          *     {@link String }
     114  
          *
     115  
          */
     116  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     117  
         public String getChecksumPolicy() {
     118  0
             return checksumPolicy;
     119  
         }
     120  
     
     121  
         /**
     122  
          * Sets the value of the checksumPolicy property.
     123  
          *
     124  
          * @param value
     125  
          *     allowed object is
     126  
          *     {@link String }
     127  
          *
     128  
          */
     129  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     130  
         public void setChecksumPolicy(String value) {
     131  0
             this.checksumPolicy = value;
     132  0
         }
     133  
     
     134  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html new file mode 100644 index 000000000..8ff6ca60c --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html @@ -0,0 +1,683 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Resource
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Resource
    11%
    2/17
    N/A
    1.167
    Resource$Excludes
    25%
    1/4
    0%
    0/2
    1.167
    Resource$Includes
    25%
    1/4
    0%
    0/2
    1.167
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import java.util.ArrayList;
     12  
     import java.util.List;
     13  
     import javax.annotation.Generated;
     14  
     import javax.xml.bind.annotation.XmlAccessType;
     15  
     import javax.xml.bind.annotation.XmlAccessorType;
     16  
     import javax.xml.bind.annotation.XmlElement;
     17  
     import javax.xml.bind.annotation.XmlType;
     18  
     
     19  
     
     20  
     /**
     21  
      *
     22  
      *         This element describes all of the classpath resources associated with a project or
     23  
      *         unit tests.
     24  
      *
     25  
      *
     26  
      * <p>Java class for Resource complex type.
     27  
      *
     28  
      * <p>The following schema fragment specifies the expected content contained within this class.
     29  
      *
     30  
      * <pre>
     31  
      * &lt;complexType name="Resource">
     32  
      *   &lt;complexContent>
     33  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     34  
      *       &lt;all>
     35  
      *         &lt;element name="targetPath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     36  
      *         &lt;element name="filtering" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
     37  
      *         &lt;element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     38  
      *         &lt;element name="includes" minOccurs="0">
     39  
      *           &lt;complexType>
     40  
      *             &lt;complexContent>
     41  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     42  
      *                 &lt;sequence>
     43  
      *                   &lt;element name="include" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     44  
      *                 &lt;/sequence>
     45  
      *               &lt;/restriction>
     46  
      *             &lt;/complexContent>
     47  
      *           &lt;/complexType>
     48  
      *         &lt;/element>
     49  
      *         &lt;element name="excludes" minOccurs="0">
     50  
      *           &lt;complexType>
     51  
      *             &lt;complexContent>
     52  
      *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     53  
      *                 &lt;sequence>
     54  
      *                   &lt;element name="exclude" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     55  
      *                 &lt;/sequence>
     56  
      *               &lt;/restriction>
     57  
      *             &lt;/complexContent>
     58  
      *           &lt;/complexType>
     59  
      *         &lt;/element>
     60  
      *       &lt;/all>
     61  
      *     &lt;/restriction>
     62  
      *   &lt;/complexContent>
     63  
      * &lt;/complexType>
     64  
      * </pre>
     65  
      *
     66  
      *
     67  
      */
     68  
     @XmlAccessorType(XmlAccessType.FIELD)
     69  
     @XmlType(name = "Resource", propOrder = {
     70  
     
     71  
     })
     72  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     73  9
     public class Resource {
     74  
     
     75  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     76  
         protected String targetPath;
     77  
         @XmlElement(defaultValue = "false")
     78  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     79  
         protected Boolean filtering;
     80  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     81  
         protected String directory;
     82  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     83  
         protected Resource.Includes includes;
     84  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     85  
         protected Resource.Excludes excludes;
     86  
     
     87  
         /**
     88  
          * Gets the value of the targetPath property.
     89  
          *
     90  
          * @return
     91  
          *     possible object is
     92  
          *     {@link String }
     93  
          *
     94  
          */
     95  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     96  
         public String getTargetPath() {
     97  0
             return targetPath;
     98  
         }
     99  
     
     100  
         /**
     101  
          * Sets the value of the targetPath property.
     102  
          *
     103  
          * @param value
     104  
          *     allowed object is
     105  
          *     {@link String }
     106  
          *
     107  
          */
     108  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     109  
         public void setTargetPath(String value) {
     110  0
             this.targetPath = value;
     111  0
         }
     112  
     
     113  
         /**
     114  
          * Gets the value of the filtering property.
     115  
          *
     116  
          * @return
     117  
          *     possible object is
     118  
          *     {@link Boolean }
     119  
          *
     120  
          */
     121  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     122  
         public Boolean isFiltering() {
     123  0
             return filtering;
     124  
         }
     125  
     
     126  
         /**
     127  
          * Sets the value of the filtering property.
     128  
          *
     129  
          * @param value
     130  
          *     allowed object is
     131  
          *     {@link Boolean }
     132  
          *
     133  
          */
     134  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     135  
         public void setFiltering(Boolean value) {
     136  0
             this.filtering = value;
     137  0
         }
     138  
     
     139  
         /**
     140  
          * Gets the value of the directory property.
     141  
          *
     142  
          * @return
     143  
          *     possible object is
     144  
          *     {@link String }
     145  
          *
     146  
          */
     147  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     148  
         public String getDirectory() {
     149  0
             return directory;
     150  
         }
     151  
     
     152  
         /**
     153  
          * Sets the value of the directory property.
     154  
          *
     155  
          * @param value
     156  
          *     allowed object is
     157  
          *     {@link String }
     158  
          *
     159  
          */
     160  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     161  
         public void setDirectory(String value) {
     162  0
             this.directory = value;
     163  0
         }
     164  
     
     165  
         /**
     166  
          * Gets the value of the includes property.
     167  
          *
     168  
          * @return
     169  
          *     possible object is
     170  
          *     {@link Resource.Includes }
     171  
          *
     172  
          */
     173  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     174  
         public Resource.Includes getIncludes() {
     175  0
             return includes;
     176  
         }
     177  
     
     178  
         /**
     179  
          * Sets the value of the includes property.
     180  
          *
     181  
          * @param value
     182  
          *     allowed object is
     183  
          *     {@link Resource.Includes }
     184  
          *
     185  
          */
     186  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     187  
         public void setIncludes(Resource.Includes value) {
     188  0
             this.includes = value;
     189  0
         }
     190  
     
     191  
         /**
     192  
          * Gets the value of the excludes property.
     193  
          *
     194  
          * @return
     195  
          *     possible object is
     196  
          *     {@link Resource.Excludes }
     197  
          *
     198  
          */
     199  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     200  
         public Resource.Excludes getExcludes() {
     201  0
             return excludes;
     202  
         }
     203  
     
     204  
         /**
     205  
          * Sets the value of the excludes property.
     206  
          *
     207  
          * @param value
     208  
          *     allowed object is
     209  
          *     {@link Resource.Excludes }
     210  
          *
     211  
          */
     212  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     213  
         public void setExcludes(Resource.Excludes value) {
     214  0
             this.excludes = value;
     215  0
         }
     216  
     
     217  
     
     218  
         /**
     219  
          * <p>Java class for anonymous complex type.
     220  
          *
     221  
          * <p>The following schema fragment specifies the expected content contained within this class.
     222  
          *
     223  
          * <pre>
     224  
          * &lt;complexType>
     225  
          *   &lt;complexContent>
     226  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     227  
          *       &lt;sequence>
     228  
          *         &lt;element name="exclude" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     229  
          *       &lt;/sequence>
     230  
          *     &lt;/restriction>
     231  
          *   &lt;/complexContent>
     232  
          * &lt;/complexType>
     233  
          * </pre>
     234  
          *
     235  
          *
     236  
          */
     237  
         @XmlAccessorType(XmlAccessType.FIELD)
     238  
         @XmlType(name = "", propOrder = {
     239  
             "exclude"
     240  
         })
     241  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     242  2
         public static class Excludes {
     243  
     
     244  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     245  
             protected List<String> exclude;
     246  
     
     247  
             /**
     248  
              * Gets the value of the exclude property.
     249  
              *
     250  
              * <p>
     251  
              * This accessor method returns a reference to the live list,
     252  
              * not a snapshot. Therefore any modification you make to the
     253  
              * returned list will be present inside the JAXB object.
     254  
              * This is why there is not a <CODE>set</CODE> method for the exclude property.
     255  
              *
     256  
              * <p>
     257  
              * For example, to add a new item, do as follows:
     258  
              * <pre>
     259  
              *    getExclude().add(newItem);
     260  
              * </pre>
     261  
              *
     262  
              *
     263  
              * <p>
     264  
              * Objects of the following type(s) are allowed in the list
     265  
              * {@link String }
     266  
              *
     267  
              *
     268  
              */
     269  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     270  
             public List<String> getExclude() {
     271  0
                 if (exclude == null) {
     272  0
                     exclude = new ArrayList<String>();
     273  
                 }
     274  0
                 return this.exclude;
     275  
             }
     276  
     
     277  
         }
     278  
     
     279  
     
     280  
         /**
     281  
          * <p>Java class for anonymous complex type.
     282  
          *
     283  
          * <p>The following schema fragment specifies the expected content contained within this class.
     284  
          *
     285  
          * <pre>
     286  
          * &lt;complexType>
     287  
          *   &lt;complexContent>
     288  
          *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     289  
          *       &lt;sequence>
     290  
          *         &lt;element name="include" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
     291  
          *       &lt;/sequence>
     292  
          *     &lt;/restriction>
     293  
          *   &lt;/complexContent>
     294  
          * &lt;/complexType>
     295  
          * </pre>
     296  
          *
     297  
          *
     298  
          */
     299  9
         @XmlAccessorType(XmlAccessType.FIELD)
     300  
         @XmlType(name = "", propOrder = {
     301  
             "include"
     302  
         })
     303  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     304  3
         public static class Includes {
     305  
     
     306  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     307  
             protected List<String> include;
     308  
     
     309  
             /**
     310  
              * Gets the value of the include property.
     311  
              *
     312  
              * <p>
     313  
              * This accessor method returns a reference to the live list,
     314  
              * not a snapshot. Therefore any modification you make to the
     315  
              * returned list will be present inside the JAXB object.
     316  
              * This is why there is not a <CODE>set</CODE> method for the include property.
     317  
              *
     318  
              * <p>
     319  
              * For example, to add a new item, do as follows:
     320  
              * <pre>
     321  
              *    getInclude().add(newItem);
     322  
              * </pre>
     323  
              *
     324  
              *
     325  
              * <p>
     326  
              * Objects of the following type(s) are allowed in the list
     327  
              * {@link String }
     328  
              *
     329  
              *
     330  
              */
     331  
             @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     332  
             public List<String> getInclude() {
     333  0
                 if (include == null) {
     334  0
                     include = new ArrayList<String>();
     335  
                 }
     336  0
                 return this.include;
     337  
             }
     338  
     
     339  
         }
     340  
     
     341  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html new file mode 100644 index 000000000..14f7aed48 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html @@ -0,0 +1,337 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Scm
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Scm
    7%
    1/13
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlElement;
     15  
     import javax.xml.bind.annotation.XmlType;
     16  
     
     17  
     
     18  
     /**
     19  
      *  4.0.0
     20  
      *
     21  
      * <p>Java class for Scm complex type.
     22  
      *
     23  
      * <p>The following schema fragment specifies the expected content contained within this class.
     24  
      *
     25  
      * <pre>
     26  
      * &lt;complexType name="Scm">
     27  
      *   &lt;complexContent>
     28  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     29  
      *       &lt;all>
     30  
      *         &lt;element name="connection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     31  
      *         &lt;element name="developerConnection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="tag" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *       &lt;/all>
     35  
      *     &lt;/restriction>
     36  
      *   &lt;/complexContent>
     37  
      * &lt;/complexType>
     38  
      * </pre>
     39  
      *
     40  
      *
     41  
      */
     42  
     @XmlAccessorType(XmlAccessType.FIELD)
     43  
     @XmlType(name = "Scm", propOrder = {
     44  
     
     45  
     })
     46  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     47  6
     public class Scm {
     48  
     
     49  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  
         protected String connection;
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String developerConnection;
     53  
         @XmlElement(defaultValue = "HEAD")
     54  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     55  
         protected String tag;
     56  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     57  
         protected String url;
     58  
     
     59  
         /**
     60  
          * Gets the value of the connection property.
     61  
          *
     62  
          * @return
     63  
          *     possible object is
     64  
          *     {@link String }
     65  
          *
     66  
          */
     67  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     68  
         public String getConnection() {
     69  0
             return connection;
     70  
         }
     71  
     
     72  
         /**
     73  
          * Sets the value of the connection property.
     74  
          *
     75  
          * @param value
     76  
          *     allowed object is
     77  
          *     {@link String }
     78  
          *
     79  
          */
     80  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     81  
         public void setConnection(String value) {
     82  0
             this.connection = value;
     83  0
         }
     84  
     
     85  
         /**
     86  
          * Gets the value of the developerConnection property.
     87  
          *
     88  
          * @return
     89  
          *     possible object is
     90  
          *     {@link String }
     91  
          *
     92  
          */
     93  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     94  
         public String getDeveloperConnection() {
     95  0
             return developerConnection;
     96  
         }
     97  
     
     98  
         /**
     99  
          * Sets the value of the developerConnection property.
     100  
          *
     101  
          * @param value
     102  
          *     allowed object is
     103  
          *     {@link String }
     104  
          *
     105  
          */
     106  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     107  
         public void setDeveloperConnection(String value) {
     108  0
             this.developerConnection = value;
     109  0
         }
     110  
     
     111  
         /**
     112  
          * Gets the value of the tag property.
     113  
          *
     114  
          * @return
     115  
          *     possible object is
     116  
          *     {@link String }
     117  
          *
     118  
          */
     119  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     120  
         public String getTag() {
     121  0
             return tag;
     122  
         }
     123  
     
     124  
         /**
     125  
          * Sets the value of the tag property.
     126  
          *
     127  
          * @param value
     128  
          *     allowed object is
     129  
          *     {@link String }
     130  
          *
     131  
          */
     132  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     133  
         public void setTag(String value) {
     134  0
             this.tag = value;
     135  0
         }
     136  
     
     137  
         /**
     138  
          * Gets the value of the url property.
     139  
          *
     140  
          * @return
     141  
          *     possible object is
     142  
          *     {@link String }
     143  
          *
     144  
          */
     145  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     146  
         public String getUrl() {
     147  0
             return url;
     148  
         }
     149  
     
     150  
         /**
     151  
          * Sets the value of the url property.
     152  
          *
     153  
          * @param value
     154  
          *     allowed object is
     155  
          *     {@link String }
     156  
          *
     157  
          */
     158  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     159  
         public void setUrl(String value) {
     160  0
             this.url = value;
     161  0
         }
     162  
     
     163  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html new file mode 100644 index 000000000..8e5f64632 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html @@ -0,0 +1,282 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.Site
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Site
    10%
    1/10
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
     10  
     
     11  
     import javax.annotation.Generated;
     12  
     import javax.xml.bind.annotation.XmlAccessType;
     13  
     import javax.xml.bind.annotation.XmlAccessorType;
     14  
     import javax.xml.bind.annotation.XmlType;
     15  
     
     16  
     
     17  
     /**
     18  
      *
     19  
      *          Contains the information needed for deploying websites.
     20  
      *
     21  
      *
     22  
      * <p>Java class for Site complex type.
     23  
      *
     24  
      * <p>The following schema fragment specifies the expected content contained within this class.
     25  
      *
     26  
      * <pre>
     27  
      * &lt;complexType name="Site">
     28  
      *   &lt;complexContent>
     29  
      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     30  
      *       &lt;all>
     31  
      *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     32  
      *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     33  
      *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
     34  
      *       &lt;/all>
     35  
      *     &lt;/restriction>
     36  
      *   &lt;/complexContent>
     37  
      * &lt;/complexType>
     38  
      * </pre>
     39  
      *
     40  
      *
     41  
      */
     42  
     @XmlAccessorType(XmlAccessType.FIELD)
     43  
     @XmlType(name = "Site", propOrder = {
     44  
     
     45  
     })
     46  
     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     47  3
     public class Site {
     48  
     
     49  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     50  
         protected String id;
     51  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     52  
         protected String name;
     53  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     54  
         protected String url;
     55  
     
     56  
         /**
     57  
          * Gets the value of the id property.
     58  
          *
     59  
          * @return
     60  
          *     possible object is
     61  
          *     {@link String }
     62  
          *
     63  
          */
     64  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     65  
         public String getId() {
     66  0
             return id;
     67  
         }
     68  
     
     69  
         /**
     70  
          * Sets the value of the id property.
     71  
          *
     72  
          * @param value
     73  
          *     allowed object is
     74  
          *     {@link String }
     75  
          *
     76  
          */
     77  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     78  
         public void setId(String value) {
     79  0
             this.id = value;
     80  0
         }
     81  
     
     82  
         /**
     83  
          * Gets the value of the name property.
     84  
          *
     85  
          * @return
     86  
          *     possible object is
     87  
          *     {@link String }
     88  
          *
     89  
          */
     90  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     91  
         public String getName() {
     92  0
             return name;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Sets the value of the name property.
     97  
          *
     98  
          * @param value
     99  
          *     allowed object is
     100  
          *     {@link String }
     101  
          *
     102  
          */
     103  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     104  
         public void setName(String value) {
     105  0
             this.name = value;
     106  0
         }
     107  
     
     108  
         /**
     109  
          * Gets the value of the url property.
     110  
          *
     111  
          * @return
     112  
          *     possible object is
     113  
          *     {@link String }
     114  
          *
     115  
          */
     116  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     117  
         public String getUrl() {
     118  0
             return url;
     119  
         }
     120  
     
     121  
         /**
     122  
          * Sets the value of the url property.
     123  
          *
     124  
          * @param value
     125  
          *     allowed object is
     126  
          *     {@link String }
     127  
          *
     128  
          */
     129  
         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
     130  
         public void setUrl(String value) {
     131  0
             this.url = value;
     132  0
         }
     133  
     
     134  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html new file mode 100644 index 000000000..077c36ac2 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html @@ -0,0 +1,42 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.jaxb.pom.generated.package-info
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    package-info
    N/A
    N/A
    0
    +
     
    + + + + + + + + + + + + + + + + + + + +
     1  
     //
     2  
     // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
     3  
     // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
     4  
     // Any modifications to this file will be lost upon recompilation of the source schema.
     5  
     // Generated on: 2012.11.09 at 12:33:57 PM EST
     6  
     //
     7  
     
     8  
     @javax.xml.bind.annotation.XmlSchema(namespace = "http://maven.apache.org/POM/4.0.0", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
     9  
     package org.owasp.dependencycheck.jaxb.pom.generated;
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html new file mode 100644 index 000000000..8db78ef53 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html @@ -0,0 +1,442 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.reporting.ReportGenerator
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ReportGenerator
    54%
    45/82
    15%
    6/38
    5.333
    ReportGenerator$Format
    0%
    0/5
    N/A
    5.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.reporting;
     20  
     
     21  
     import java.io.FileInputStream;
     22  
     import java.io.File;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.FileOutputStream;
     25  
     import java.io.IOException;
     26  
     import java.io.InputStream;
     27  
     import java.io.InputStreamReader;
     28  
     import java.io.OutputStream;
     29  
     import java.io.OutputStreamWriter;
     30  
     import java.util.List;
     31  
     import java.util.logging.Level;
     32  
     import java.util.logging.Logger;
     33  
     import org.apache.velocity.app.VelocityEngine;
     34  
     import org.apache.velocity.context.Context;
     35  
     import org.apache.velocity.runtime.RuntimeConstants;
     36  
     import org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader;
     37  
     import org.apache.velocity.tools.ToolManager;
     38  
     import org.apache.velocity.tools.config.EasyFactoryConfiguration;
     39  
     import org.owasp.dependencycheck.analyzer.Analyzer;
     40  
     import org.owasp.dependencycheck.dependency.Dependency;
     41  
     
     42  
     /**
     43  
      * The ReportGenerator is used to, as the name implies, generate reports.
     44  
      * Internally the generator uses the Velocity Templating Engine. The
     45  
      * ReportGenerator exposes a list of Dependencies to the template when
     46  
      * generating the report.
     47  
      *
     48  
      * @author Jeremy Long (jeremy.long@owasp.org)
     49  
      */
     50  
     public class ReportGenerator {
     51  
     
     52  
         /**
     53  
          * An enumeration of the report formats.
     54  
          */
     55  0
         public enum Format {
     56  
     
     57  
             /**
     58  
              * Generate all reports.
     59  
              */
     60  0
             ALL,
     61  
             /**
     62  
              * Generate XML report.
     63  
              */
     64  0
             XML,
     65  
             /**
     66  
              * Generate HTML report.
     67  
              */
     68  0
             HTML,
     69  
             /**
     70  
              * Generate HTML Vulnerability report.
     71  
              */
     72  0
             VULN
     73  
         }
     74  
         /**
     75  
          * The Velocity Engine.
     76  
          */
     77  
         private final VelocityEngine engine;
     78  
         /**
     79  
          * The Velocity Engine Context.
     80  
          */
     81  
         private final Context context;
     82  
     
     83  
         /**
     84  
          * Constructs a new ReportGenerator.
     85  
          *
     86  
          * @param applicationName the application name being analyzed
     87  
          * @param dependencies the list of dependencies
     88  
          * @param analyzers the list of analyzers used.
     89  
          */
     90  1
         public ReportGenerator(String applicationName, List<Dependency> dependencies, List<Analyzer> analyzers) {
     91  1
             engine = createVelocityEngine();
     92  1
             context = createContext();
     93  
     
     94  1
             engine.init();
     95  
     
     96  1
             context.put("applicationName", applicationName);
     97  1
             context.put("dependencies", dependencies);
     98  1
             context.put("analyzers", analyzers);
     99  1
         }
     100  
     
     101  
         /**
     102  
          * Creates a new Velocity Engine.
     103  
          *
     104  
          * @return a velocity engine.
     105  
          */
     106  
         private VelocityEngine createVelocityEngine() {
     107  1
             final VelocityEngine ve = new VelocityEngine();
     108  1
             ve.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, VelocityLoggerRedirect.class.getName());
     109  1
             ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
     110  1
             ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
     111  1
             return ve;
     112  
         }
     113  
     
     114  
         /**
     115  
          * Creates a new Velocity Context initialized with escape and date tools.
     116  
          *
     117  
          * @return a Velocity Context.
     118  
          */
     119  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(value = "RV_RETURN_VALUE_IGNORED_INFERRED",
     120  
                 justification = "No plan to fix this style issue")
     121  
         private Context createContext() {
     122  1
             final ToolManager manager = new ToolManager();
     123  1
             final Context c = manager.createContext();
     124  1
             final EasyFactoryConfiguration config = new EasyFactoryConfiguration();
     125  1
             config.addDefaultTools();
     126  1
             config.toolbox("application").tool("esc", "org.apache.velocity.tools.generic.EscapeTool").tool("org.apache.velocity.tools.generic.DateTool");
     127  1
             manager.configure(config);
     128  1
             return c;
     129  
         }
     130  
     
     131  
         /**
     132  
          * Generates the Dependency Reports for the identified dependencies.
     133  
          *
     134  
          * @param outputDir the path where the reports should be written
     135  
          * @param format the format the report should be written in
     136  
          * @throws IOException is thrown when the template file does not exist
     137  
          * @throws Exception is thrown if there is an error writing out the reports.
     138  
          */
     139  
         public void generateReports(String outputDir, Format format) throws IOException, Exception {
     140  0
             if (format == Format.XML || format == Format.ALL) {
     141  0
                 generateReport("XmlReport", outputDir + File.separator + "DependencyCheck-Report.xml");
     142  
             }
     143  0
             if (format == Format.HTML || format == Format.ALL) {
     144  0
                 generateReport("HtmlReport", outputDir + File.separator + "DependencyCheck-Report.html");
     145  
             }
     146  0
             if (format == Format.VULN || format == Format.ALL) {
     147  0
                 generateReport("VulnerabilityReport", outputDir + File.separator + "DependencyCheck-Vulnerability.html");
     148  
             }
     149  0
         }
     150  
     
     151  
         /**
     152  
          * Generates the Dependency Reports for the identified dependencies.
     153  
          *
     154  
          * @param outputDir the path where the reports should be written
     155  
          * @param outputFormat the format the report should be written in (XML,
     156  
          * HTML, ALL)
     157  
          * @throws IOException is thrown when the template file does not exist
     158  
          * @throws Exception is thrown if there is an error writing out the reports.
     159  
          */
     160  
         public void generateReports(String outputDir, String outputFormat) throws IOException, Exception {
     161  0
             final String format = outputFormat.toUpperCase();
     162  0
             if (format.matches("^(XML|HTML|VULN|ALL)$")) {
     163  0
                 if ("XML".equalsIgnoreCase(format)) {
     164  0
                     generateReports(outputDir, Format.XML);
     165  
                 }
     166  0
                 if ("HTML".equalsIgnoreCase(format)) {
     167  0
                     generateReports(outputDir, Format.HTML);
     168  
                 }
     169  0
                 if ("VULN".equalsIgnoreCase(format)) {
     170  0
                     generateReports(outputDir, Format.VULN);
     171  
                 }
     172  0
                 if ("ALL".equalsIgnoreCase(format)) {
     173  0
                     generateReports(outputDir, Format.ALL);
     174  
                 }
     175  
             }
     176  0
         }
     177  
     
     178  
         /**
     179  
          * Generates a report from a given Velocity Template. The template name
     180  
          * provided can be the name of a template contained in the jar file, such as
     181  
          * 'XmlReport' or 'HtmlReport', or the template name can be the path to a
     182  
          * template file.
     183  
          *
     184  
          * @param templateName the name of the template to load.
     185  
          * @param outFileName the filename and path to write the report to.
     186  
          * @throws IOException is thrown when the template file does not exist.
     187  
          * @throws Exception is thrown when an exception occurs.
     188  
          */
     189  
         protected void generateReport(String templateName, String outFileName) throws IOException, Exception {
     190  1
             InputStream input = null;
     191  1
             String templatePath = null;
     192  1
             final File f = new File(templateName);
     193  1
             if (f.exists() && f.isFile()) {
     194  
                 try {
     195  0
                     templatePath = templateName;
     196  0
                     input = new FileInputStream(f);
     197  0
                 } catch (FileNotFoundException ex) {
     198  0
                     final String msg = "Unable to generate the report, the report template file could not be found.";
     199  0
                     Logger.getLogger(ReportGenerator.class.getName()).log(Level.SEVERE, msg);
     200  0
                     Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINE, null, ex);
     201  0
                 }
     202  
             } else {
     203  1
                 templatePath = "templates/" + templateName + ".vsl";
     204  1
                 input = this.getClass().getClassLoader().getResourceAsStream(templatePath);
     205  
             }
     206  1
             if (input == null) {
     207  0
                 throw new IOException("Template file doesn't exist");
     208  
             }
     209  
     
     210  1
             final InputStreamReader reader = new InputStreamReader(input, "UTF-8");
     211  1
             OutputStreamWriter writer = null;
     212  1
             OutputStream outputStream = null;
     213  
     
     214  
             try {
     215  1
                 final File outDir = new File(outFileName).getParentFile();
     216  1
                 if (!outDir.exists()) {
     217  0
                     final boolean created = outDir.mkdirs();
     218  0
                     if (!created) {
     219  0
                         throw new Exception("Unable to create directory '" + outDir.getAbsolutePath() + "'.");
     220  
                     }
     221  
                 }
     222  
     
     223  1
                 outputStream = new FileOutputStream(outFileName);
     224  1
                 writer = new OutputStreamWriter(outputStream, "UTF-8");
     225  
     
     226  1
                 if (!engine.evaluate(context, writer, templatePath, reader)) {
     227  0
                     throw new Exception("Failed to convert the template into html.");
     228  
                 }
     229  1
                 writer.flush();
     230  
             } finally {
     231  1
                 if (writer != null) {
     232  
                     try {
     233  1
                         writer.close();
     234  0
                     } catch (Exception ex) {
     235  0
                         Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
     236  1
                     }
     237  
                 }
     238  1
                 if (outputStream != null) {
     239  
                     try {
     240  1
                         outputStream.close();
     241  0
                     } catch (Exception ex) {
     242  0
                         Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
     243  1
                     }
     244  
                 }
     245  
                 try {
     246  1
                     reader.close();
     247  0
                 } catch (Exception ex) {
     248  0
                     Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
     249  1
                 }
     250  0
             }
     251  1
         }
     252  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html new file mode 100644 index 000000000..b300f2914 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html @@ -0,0 +1,226 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.reporting.VelocityLoggerRedirect
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VelocityLoggerRedirect
    57%
    8/14
    33%
    2/6
    3
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Steve Springett. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.reporting;
     20  
     
     21  
     import org.apache.velocity.app.Velocity;
     22  
     import org.apache.velocity.runtime.RuntimeServices;
     23  
     import org.apache.velocity.runtime.log.LogChute;
     24  
     
     25  
     import java.util.logging.Level;
     26  
     import java.util.logging.Logger;
     27  
     
     28  
     /**
     29  
      * <p>DependencyCheck uses {@link java.util.logging.Logger} as a logging
     30  
      * framework, and Apache Velocity uses a custom logging implementation that
     31  
      * outputs to a file named velocity.log by default. This class is an
     32  
      * implementation of a custom Velocity logger that redirects all velocity
     33  
      * logging to the Java Logger class.
     34  
      * </p><p>
     35  
      * This class was written to address permission issues when using
     36  
      * Dependency-Check in a server environment (such as the Jenkins plugin). In
     37  
      * some circumstances, Velocity would attempt to create velocity.log in an
     38  
      * un-writable directory.</p>
     39  
      *
     40  
      * @author Steve Springett (steve.springett@owasp.org)
     41  
      */
     42  1
     public class VelocityLoggerRedirect implements LogChute {
     43  
     
     44  
         /**
     45  
          * This will be invoked once by the LogManager.
     46  
          *
     47  
          * @param rsvc the RuntimeServices
     48  
          */
     49  
         public void init(RuntimeServices rsvc) {
     50  
             // do nothing
     51  1
         }
     52  
     
     53  
         /**
     54  
          * Given a Velocity log level and message, this method will call the
     55  
          * appropriate Logger level and log the specified values.
     56  
          *
     57  
          * @param level the logging level
     58  
          * @param message the message to be logged
     59  
          */
     60  
         public void log(int level, String message) {
     61  32
             Logger.getLogger(Velocity.class.getName()).log(getLevel(level), message);
     62  32
         }
     63  
     
     64  
         /**
     65  
          * Given a Velocity log level, message and Throwable, this method will call
     66  
          * the appropriate Logger level and log the specified values.
     67  
          *
     68  
          * @param level the logging level
     69  
          * @param message the message to be logged
     70  
          * @param t a throwable to log
     71  
          */
     72  
         public void log(int level, String message, Throwable t) {
     73  0
             Logger.getLogger(Velocity.class.getName()).log(getLevel(level), message, t);
     74  0
         }
     75  
     
     76  
         /**
     77  
          * Will always return true. The property file will decide what level to log.
     78  
          *
     79  
          * @param level the logging level
     80  
          * @return true
     81  
          */
     82  
         public boolean isLevelEnabled(int level) {
     83  13
             return true;
     84  
         }
     85  
     
     86  
         /**
     87  
          * Maps Velocity log levels to {@link Logger} values.
     88  
          *
     89  
          * @param velocityLevel the logging level
     90  
          * @return the logging level
     91  
          */
     92  
         private Level getLevel(int velocityLevel) {
     93  32
             switch (velocityLevel) {
     94  
                 case TRACE_ID:
     95  8
                     return Level.ALL;
     96  
                 case DEBUG_ID:
     97  24
                     return Level.FINE;
     98  
                 case INFO_ID:
     99  0
                     return Level.INFO;
     100  
                 case WARN_ID:
     101  0
                     return Level.WARNING;
     102  
                 case ERROR_ID:
     103  0
                     return Level.SEVERE;
     104  
                 default:
     105  0
                     return Level.INFO;
     106  
             }
     107  
         }
     108  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html new file mode 100644 index 000000000..1501b2be6 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html @@ -0,0 +1,356 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.PropertyType
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    PropertyType
    70%
    28/40
    46%
    13/28
    3.1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.regex.Pattern;
     22  
     
     23  
     /**
     24  
      * A simple PropertyType used to represent a string value that could be used as
     25  
      * a regular expression or could be case insensitive. The equals method has been
     26  
      * over-ridden so that the object will correctly compare to strings.
     27  
      *
     28  
      * @author Jeremy Long (jeremy.long@owasp.org)
     29  
      */
     30  22
     public class PropertyType {
     31  
     
     32  
         //<editor-fold defaultstate="collapsed" desc="properties">
     33  
         /**
     34  
          * The value.
     35  
          */
     36  
         private String value;
     37  
     
     38  
         /**
     39  
          * Gets the value of the value property.
     40  
          *
     41  
          * @return the value of the value property
     42  
          *
     43  
          */
     44  
         public String getValue() {
     45  15
             return value;
     46  
         }
     47  
     
     48  
         /**
     49  
          * Sets the value of the value property.
     50  
          *
     51  
          * @param value the value of the value property
     52  
          */
     53  
         public void setValue(String value) {
     54  29
             this.value = value;
     55  29
         }
     56  
         /**
     57  
          * Whether or not the expression is a regex.
     58  
          */
     59  22
         private boolean regex = false;
     60  
     
     61  
         /**
     62  
          * Returns whether or not the value is a regex.
     63  
          *
     64  
          * @return true if the value is a regex, otherwise false
     65  
          *
     66  
          */
     67  
         public boolean isRegex() {
     68  17
             return regex;
     69  
         }
     70  
     
     71  
         /**
     72  
          * Sets whether the value property is a regex.
     73  
          *
     74  
          * @param value true if the value is a regex, otherwise false
     75  
          *
     76  
          */
     77  
         public void setRegex(boolean value) {
     78  12
             this.regex = value;
     79  12
         }
     80  
         /**
     81  
          * Indicates case sensitivity.
     82  
          */
     83  22
         private boolean caseSensitive = false;
     84  
     
     85  
         /**
     86  
          * Gets the value of the caseSensitive property.
     87  
          *
     88  
          * @return true if the value is case sensitive
     89  
          *
     90  
          */
     91  
         public boolean isCaseSensitive() {
     92  4
             return caseSensitive;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Sets the value of the caseSensitive property.
     97  
          *
     98  
          * @param value whether the value is case sensitive
     99  
          *
     100  
          */
     101  
         public void setCaseSensitive(boolean value) {
     102  13
             this.caseSensitive = value;
     103  13
         }
     104  
         //</editor-fold>
     105  
     
     106  
         /**
     107  
          * Uses the object's properties to determine if the supplied string matches
     108  
          * the value of this property.
     109  
          *
     110  
          * @param text the String to validate
     111  
          * @return whether the text supplied is matched by the value of the property
     112  
          */
     113  
         public boolean matches(String text) {
     114  22
             if (text == null) {
     115  0
                 return false;
     116  
             }
     117  22
             if (this.regex) {
     118  
                 Pattern rx;
     119  7
                 if (this.caseSensitive) {
     120  2
                     rx = Pattern.compile(this.value);
     121  
                 } else {
     122  5
                     rx = Pattern.compile(this.value, Pattern.CASE_INSENSITIVE);
     123  
                 }
     124  7
                 return rx.matcher(text).matches();
     125  
             } else {
     126  15
                 if (this.caseSensitive) {
     127  2
                     return value.equals(text);
     128  
                 } else {
     129  13
                     return value.equalsIgnoreCase(text);
     130  
                 }
     131  
             }
     132  
         }
     133  
     
     134  
         //<editor-fold defaultstate="collapsed" desc="standard implmentations of hashCode, equals, and toString">
     135  
         /**
     136  
          * Default implementation of hashCode.
     137  
          *
     138  
          * @return the hash code
     139  
          */
     140  
         @Override
     141  
         public int hashCode() {
     142  0
             int hash = 3;
     143  0
             hash = 59 * hash + (this.value != null ? this.value.hashCode() : 0);
     144  0
             hash = 59 * hash + (this.regex ? 1 : 0);
     145  0
             hash = 59 * hash + (this.caseSensitive ? 1 : 0);
     146  0
             return hash;
     147  
         }
     148  
     
     149  
         /**
     150  
          * Default implementation of equals.
     151  
          *
     152  
          * @param obj the object to compare
     153  
          * @return whether the objects are equivalent
     154  
          */
     155  
         @Override
     156  
         public boolean equals(Object obj) {
     157  1
             if (obj == null) {
     158  0
                 return false;
     159  
             }
     160  1
             if (getClass() != obj.getClass()) {
     161  0
                 return false;
     162  
             }
     163  1
             final PropertyType other = (PropertyType) obj;
     164  1
             if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
     165  0
                 return false;
     166  
             }
     167  1
             if (this.regex != other.regex) {
     168  0
                 return false;
     169  
             }
     170  1
             if (this.caseSensitive != other.caseSensitive) {
     171  0
                 return false;
     172  
             }
     173  1
             return true;
     174  
         }
     175  
     
     176  
         /**
     177  
          * Default implementation of toString().
     178  
          *
     179  
          * @return the string representation of the object
     180  
          */
     181  
         @Override
     182  
         public String toString() {
     183  0
             return "PropertyType{" + "value=" + value + ", regex=" + regex + ", caseSensitive=" + caseSensitive + '}';
     184  
         }
     185  
         //</editor-fold>
     186  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html new file mode 100644 index 000000000..3c8edbf8a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html @@ -0,0 +1,194 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionErrorHandler
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionErrorHandler
    6%
    1/16
    0%
    0/8
    2.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.logging.Level;
     22  
     import java.util.logging.Logger;
     23  
     import org.xml.sax.ErrorHandler;
     24  
     import org.xml.sax.SAXException;
     25  
     import org.xml.sax.SAXParseException;
     26  
     
     27  
     /**
     28  
      * An XML parsing error handler.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  2
     public class SuppressionErrorHandler implements ErrorHandler {
     33  
     
     34  
         /**
     35  
          * Builds a prettier exception message.
     36  
          *
     37  
          * @param ex the SAXParseException
     38  
          * @return an easier to read exception message
     39  
          */
     40  
         private String getPrettyParseExceptionInfo(SAXParseException ex) {
     41  
     
     42  0
             final StringBuffer sb = new StringBuffer();
     43  
     
     44  0
             if (ex.getSystemId() != null) {
     45  0
                 sb.append("systemId=").append(ex.getSystemId()).append(", ");
     46  
             }
     47  0
             if (ex.getPublicId() != null) {
     48  0
                 sb.append("publicId=").append(ex.getPublicId()).append(", ");
     49  
             }
     50  0
             if (ex.getLineNumber() > 0) {
     51  0
                 sb.append("Line=").append(ex.getLineNumber());
     52  
             }
     53  0
             if (ex.getColumnNumber() > 0) {
     54  0
                 sb.append(", Column=").append(ex.getColumnNumber());
     55  
             }
     56  0
             sb.append(": ").append(ex.getMessage());
     57  
     
     58  0
             return sb.toString();
     59  
         }
     60  
     
     61  
         /**
     62  
          * Logs warnings.
     63  
          *
     64  
          * @param ex the warning to log
     65  
          * @throws SAXException is never thrown
     66  
          */
     67  
         @Override
     68  
         public void warning(SAXParseException ex) throws SAXException {
     69  0
             Logger.getLogger(SuppressionErrorHandler.class.getName()).log(Level.FINE, null, ex);
     70  0
         }
     71  
     
     72  
         /**
     73  
          * Handles errors.
     74  
          *
     75  
          * @param ex the error to handle
     76  
          * @throws SAXException is always thrown
     77  
          */
     78  
         @Override
     79  
         public void error(SAXParseException ex) throws SAXException {
     80  0
             throw new SAXException(getPrettyParseExceptionInfo(ex));
     81  
         }
     82  
     
     83  
         /**
     84  
          * Handles fatal exceptions.
     85  
          *
     86  
          * @param ex a fatal exception
     87  
          * @throws SAXException is always
     88  
          */
     89  
         @Override
     90  
         public void fatalError(SAXParseException ex) throws SAXException {
     91  0
             throw new SAXException(getPrettyParseExceptionInfo(ex));
     92  
         }
     93  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html new file mode 100644 index 000000000..38cc485e1 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html @@ -0,0 +1,331 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionHandler
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionHandler
    97%
    40/41
    84%
    22/26
    3.6
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.List;
     23  
     import org.xml.sax.Attributes;
     24  
     import org.xml.sax.SAXException;
     25  
     import org.xml.sax.helpers.DefaultHandler;
     26  
     
     27  
     /**
     28  
      * A handler to load suppression rules.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  2
     public class SuppressionHandler extends DefaultHandler {
     33  
     
     34  
         /**
     35  
          * The suppress node, indicates the start of a new rule.
     36  
          */
     37  
         public static final String SUPPRESS = "suppress";
     38  
         /**
     39  
          * The file path element name.
     40  
          */
     41  
         public static final String FILE_PATH = "filePath";
     42  
         /**
     43  
          * The sha1 hash element name.
     44  
          */
     45  
         public static final String SHA1 = "sha1";
     46  
         /**
     47  
          * The CVE element name.
     48  
          */
     49  
         public static final String CVE = "cve";
     50  
         /**
     51  
          * The CPE element name.
     52  
          */
     53  
         public static final String CPE = "cpe";
     54  
         /**
     55  
          * The CWE element name.
     56  
          */
     57  
         public static final String CWE = "cwe";
     58  
         /**
     59  
          * The cvssBelow element name.
     60  
          */
     61  
         public static final String CVSS_BELOW = "cvssBelow";
     62  
         /**
     63  
          * A list of suppression rules.
     64  
          */
     65  2
         private List<SuppressionRule> supressionRules = new ArrayList<SuppressionRule>();
     66  
     
     67  
         /**
     68  
          * Get the value of supressionRules.
     69  
          *
     70  
          * @return the value of supressionRules
     71  
          */
     72  
         public List<SuppressionRule> getSupressionRules() {
     73  2
             return supressionRules;
     74  
         }
     75  
         /**
     76  
          * The current rule being read.
     77  
          */
     78  
         private SuppressionRule rule;
     79  
         /**
     80  
          * The attributes of the node being read.
     81  
          */
     82  
         private Attributes currentAttributes;
     83  
         /**
     84  
          * The current node text being extracted from the element.
     85  
          */
     86  
         private StringBuffer currentText;
     87  
     
     88  
         /**
     89  
          * Handles the start element event.
     90  
          *
     91  
          * @param uri the uri of the element being processed
     92  
          * @param localName the local name of the element being processed
     93  
          * @param qName the qName of the element being processed
     94  
          * @param attributes the attributes of the element being processed
     95  
          * @throws SAXException thrown if there is an exception processing
     96  
          */
     97  
         @Override
     98  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     99  40
             currentAttributes = null;
     100  40
             currentText = new StringBuffer();
     101  
     
     102  40
             if (SUPPRESS.equals(qName)) {
     103  10
                 rule = new SuppressionRule();
     104  30
             } else if (FILE_PATH.equals(qName)) {
     105  6
                 currentAttributes = attributes;
     106  
             }
     107  40
         }
     108  
     
     109  
         /**
     110  
          * Handles the end element event.
     111  
          *
     112  
          * @param uri the uri of the element
     113  
          * @param localName the local name of the element
     114  
          * @param qName the qName of the element
     115  
          * @throws SAXException thrown if there is an exception processing
     116  
          */
     117  
         @Override
     118  
         public void endElement(String uri, String localName, String qName) throws SAXException {
     119  40
             if (SUPPRESS.equals(qName)) {
     120  10
                 supressionRules.add(rule);
     121  10
                 rule = null;
     122  30
             } else if (FILE_PATH.equals(qName)) {
     123  6
                 final PropertyType pt = processPropertyType();
     124  6
                 rule.setFilePath(pt);
     125  6
             } else if (SHA1.equals(qName)) {
     126  2
                 rule.setSha1(currentText.toString());
     127  22
             } else if (CPE.equals(qName)) {
     128  4
                 final PropertyType pt = processPropertyType();
     129  4
                 rule.addCpe(pt);
     130  4
             } else if (CWE.equals(qName)) {
     131  0
                 rule.addCwe(currentText.toString());
     132  18
             } else if (CVE.equals(qName)) {
     133  4
                 rule.addCve(currentText.toString());
     134  14
             } else if (CVSS_BELOW.equals(qName)) {
     135  2
                 final float cvss = Float.parseFloat(currentText.toString());
     136  2
                 rule.addCvssBelow(cvss);
     137  
             }
     138  40
         }
     139  
     
     140  
         /**
     141  
          * Collects the body text of the node being processed.
     142  
          *
     143  
          * @param ch the char array of text
     144  
          * @param start the start position to copy text from in the char array
     145  
          * @param length the number of characters to copy from the char array
     146  
          * @throws SAXException thrown if there is a parsing exception
     147  
          */
     148  
         @Override
     149  
         public void characters(char[] ch, int start, int length) throws SAXException {
     150  88
             currentText.append(ch, start, length);
     151  88
         }
     152  
     
     153  
         /**
     154  
          * Processes field members that have been collected during the characters
     155  
          * and startElement method to construct a PropertyType object.
     156  
          *
     157  
          * @return a PropertyType object
     158  
          */
     159  
         private PropertyType processPropertyType() {
     160  10
             final PropertyType pt = new PropertyType();
     161  10
             pt.setValue(currentText.toString());
     162  10
             if (currentAttributes != null && currentAttributes.getLength() > 0) {
     163  6
                 final String regex = currentAttributes.getValue("regex");
     164  6
                 if (regex != null) {
     165  6
                     pt.setRegex(Boolean.parseBoolean(regex));
     166  
                 }
     167  6
                 final String caseSensitive = currentAttributes.getValue("caseSensitive");
     168  6
                 if (regex != null) {
     169  6
                     pt.setCaseSensitive(Boolean.parseBoolean(caseSensitive));
     170  
                 }
     171  
             }
     172  10
             return pt;
     173  
         }
     174  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html new file mode 100644 index 000000000..096cd8bc9 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionParseException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionParseException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when parsing a suppression rule file fails.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class SuppressionParseException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version UID.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new SuppressionParseException.
     37  
          */
     38  
         public SuppressionParseException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new SuppressionParseException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public SuppressionParseException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new SuppressionParseException.
     53  
          *
     54  
          * @param ex the cause of the download failure.
     55  
          */
     56  
         public SuppressionParseException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new SuppressionParseException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the download failure.
     65  
          */
     66  
         public SuppressionParseException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html new file mode 100644 index 000000000..1163128a6 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html @@ -0,0 +1,209 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionParser
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionParser
    58%
    17/29
    N/A
    10
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileInputStream;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.IOException;
     25  
     import java.io.InputStream;
     26  
     import java.io.InputStreamReader;
     27  
     import java.io.Reader;
     28  
     import java.util.List;
     29  
     import java.util.logging.Level;
     30  
     import java.util.logging.Logger;
     31  
     import javax.xml.parsers.ParserConfigurationException;
     32  
     import javax.xml.parsers.SAXParser;
     33  
     import javax.xml.parsers.SAXParserFactory;
     34  
     import org.xml.sax.InputSource;
     35  
     import org.xml.sax.SAXException;
     36  
     import org.xml.sax.XMLReader;
     37  
     
     38  
     /**
     39  
      * A simple validating parser for XML Suppression Rules.
     40  
      *
     41  
      * @author Jeremy Long (jeremy.long@owasp.org)
     42  
      */
     43  1
     public class SuppressionParser {
     44  
     
     45  
         /**
     46  
          * JAXP Schema Language. Source:
     47  
          * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
     48  
          */
     49  
         public static final String JAXP_SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage";
     50  
         /**
     51  
          * W3C XML Schema. Source:
     52  
          * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
     53  
          */
     54  
         public static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema";
     55  
         /**
     56  
          * JAXP Schema Source. Source:
     57  
          * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
     58  
          */
     59  
         public static final String JAXP_SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource";
     60  
     
     61  
         /**
     62  
          * Parses the given xml file and returns a list of the suppression rules
     63  
          * contained.
     64  
          *
     65  
          * @param file an xml file containing suppression rules
     66  
          * @return a list of suppression rules
     67  
          * @throws SuppressionParseException thrown if the xml file cannot be parsed
     68  
          */
     69  
         public List<SuppressionRule> parseSuppressionRules(File file) throws SuppressionParseException {
     70  
             try {
     71  1
                 final InputStream schemaStream = this.getClass().getClassLoader().getResourceAsStream("schema/suppression.xsd");
     72  1
                 final SuppressionHandler handler = new SuppressionHandler();
     73  
     
     74  1
                 final SAXParserFactory factory = SAXParserFactory.newInstance();
     75  1
                 factory.setNamespaceAware(true);
     76  1
                 factory.setValidating(true);
     77  1
                 final SAXParser saxParser = factory.newSAXParser();
     78  1
                 saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_LANGUAGE, SuppressionParser.W3C_XML_SCHEMA);
     79  1
                 saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_SOURCE, new InputSource(schemaStream));
     80  1
                 final XMLReader xmlReader = saxParser.getXMLReader();
     81  1
                 xmlReader.setErrorHandler(new SuppressionErrorHandler());
     82  1
                 xmlReader.setContentHandler(handler);
     83  
     
     84  1
                 final InputStream inputStream = new FileInputStream(file);
     85  1
                 final Reader reader = new InputStreamReader(inputStream, "UTF-8");
     86  1
                 final InputSource in = new InputSource(reader);
     87  
                 //in.setEncoding("UTF-8");
     88  
     
     89  1
                 xmlReader.parse(in);
     90  
     
     91  
     
     92  1
                 return handler.getSupressionRules();
     93  0
             } catch (ParserConfigurationException ex) {
     94  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     95  0
                 throw new SuppressionParseException(ex);
     96  0
             } catch (SAXException ex) {
     97  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     98  0
                 throw new SuppressionParseException(ex);
     99  0
             } catch (FileNotFoundException ex) {
     100  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     101  0
                 throw new SuppressionParseException(ex);
     102  0
             } catch (IOException ex) {
     103  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     104  0
                 throw new SuppressionParseException(ex);
     105  
             }
     106  
         }
     107  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html new file mode 100644 index 000000000..eb0137e0a --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html @@ -0,0 +1,657 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionRule
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionRule
    95%
    93/97
    90%
    63/70
    2.583
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.Iterator;
     23  
     import java.util.List;
     24  
     import org.owasp.dependencycheck.dependency.Dependency;
     25  
     import org.owasp.dependencycheck.dependency.Identifier;
     26  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     27  
     
     28  
     /**
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  23
     public class SuppressionRule {
     33  
     
     34  
         /**
     35  
          * The file path for the suppression.
     36  
          */
     37  
         private PropertyType filePath;
     38  
     
     39  
         /**
     40  
          * Get the value of filePath.
     41  
          *
     42  
          * @return the value of filePath
     43  
          */
     44  
         public PropertyType getFilePath() {
     45  1
             return filePath;
     46  
         }
     47  
     
     48  
         /**
     49  
          * Set the value of filePath.
     50  
          *
     51  
          * @param filePath new value of filePath
     52  
          */
     53  
         public void setFilePath(PropertyType filePath) {
     54  8
             this.filePath = filePath;
     55  8
         }
     56  
         /**
     57  
          * The sha1 hash.
     58  
          */
     59  
         private String sha1;
     60  
     
     61  
         /**
     62  
          * Get the value of sha1.
     63  
          *
     64  
          * @return the value of sha1
     65  
          */
     66  
         public String getSha1() {
     67  1
             return sha1;
     68  
         }
     69  
     
     70  
         /**
     71  
          * Set the value of sha1.
     72  
          *
     73  
          * @param sha1 new value of sha1
     74  
          */
     75  
         public void setSha1(String sha1) {
     76  4
             this.sha1 = sha1;
     77  4
         }
     78  
         /**
     79  
          * A list of CPEs to suppression
     80  
          */
     81  23
         private List<PropertyType> cpe = new ArrayList<PropertyType>();
     82  
     
     83  
         /**
     84  
          * Get the value of cpe.
     85  
          *
     86  
          * @return the value of cpe
     87  
          */
     88  
         public List<PropertyType> getCpe() {
     89  1
             return cpe;
     90  
         }
     91  
     
     92  
         /**
     93  
          * Set the value of cpe.
     94  
          *
     95  
          * @param cpe new value of cpe
     96  
          */
     97  
         public void setCpe(List<PropertyType> cpe) {
     98  1
             this.cpe = cpe;
     99  1
         }
     100  
     
     101  
         /**
     102  
          * Adds the cpe to the cpe list.
     103  
          *
     104  
          * @param cpe the cpe to add
     105  
          */
     106  
         public void addCpe(PropertyType cpe) {
     107  8
             this.cpe.add(cpe);
     108  8
         }
     109  
     
     110  
         /**
     111  
          * Returns whether or not this suppression rule as CPE entries.
     112  
          *
     113  
          * @return whether or not this suppression rule as CPE entries
     114  
          */
     115  
         public boolean hasCpe() {
     116  10
             return cpe.size() > 0;
     117  
         }
     118  
         /**
     119  
          * The list of cvssBelow scores.
     120  
          */
     121  23
         private List<Float> cvssBelow = new ArrayList<Float>();
     122  
     
     123  
         /**
     124  
          * Get the value of cvssBelow.
     125  
          *
     126  
          * @return the value of cvssBelow
     127  
          */
     128  
         public List<Float> getCvssBelow() {
     129  1
             return cvssBelow;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Set the value of cvssBelow.
     134  
          *
     135  
          * @param cvssBelow new value of cvssBelow
     136  
          */
     137  
         public void setCvssBelow(List<Float> cvssBelow) {
     138  1
             this.cvssBelow = cvssBelow;
     139  1
         }
     140  
     
     141  
         /**
     142  
          * Adds the cvss to the cvssBelow list.
     143  
          *
     144  
          * @param cvss the cvss to add
     145  
          */
     146  
         public void addCvssBelow(Float cvss) {
     147  5
             this.cvssBelow.add(cvss);
     148  5
         }
     149  
     
     150  
         /**
     151  
          * Returns whether or not this suppression rule has cvss suppressions.
     152  
          *
     153  
          * @return whether or not this suppression rule has cvss suppressions
     154  
          */
     155  
         public boolean hasCvssBelow() {
     156  7
             return cvssBelow.size() > 0;
     157  
         }
     158  
         /**
     159  
          * The list of cwe entries to suppress.
     160  
          */
     161  23
         private List<String> cwe = new ArrayList<String>();
     162  
     
     163  
         /**
     164  
          * Get the value of cwe.
     165  
          *
     166  
          * @return the value of cwe
     167  
          */
     168  
         public List<String> getCwe() {
     169  1
             return cwe;
     170  
         }
     171  
     
     172  
         /**
     173  
          * Set the value of cwe.
     174  
          *
     175  
          * @param cwe new value of cwe
     176  
          */
     177  
         public void setCwe(List<String> cwe) {
     178  1
             this.cwe = cwe;
     179  1
         }
     180  
     
     181  
         /**
     182  
          * Adds the cwe to the cwe list.
     183  
          *
     184  
          * @param cwe the cwe to add
     185  
          */
     186  
         public void addCwe(String cwe) {
     187  2
             this.cwe.add(cwe);
     188  2
         }
     189  
     
     190  
         /**
     191  
          * Returns whether this suppression rule has CWE entries.
     192  
          *
     193  
          * @return whether this suppression rule has CWE entries
     194  
          */
     195  
         public boolean hasCwe() {
     196  8
             return cwe.size() > 0;
     197  
         }
     198  
         /**
     199  
          * The list of cve entries to suppress.
     200  
          */
     201  23
         private List<String> cve = new ArrayList<String>();
     202  
     
     203  
         /**
     204  
          * Get the value of cve.
     205  
          *
     206  
          * @return the value of cve
     207  
          */
     208  
         public List<String> getCve() {
     209  1
             return cve;
     210  
         }
     211  
     
     212  
         /**
     213  
          * Set the value of cve.
     214  
          *
     215  
          * @param cve new value of cve
     216  
          */
     217  
         public void setCve(List<String> cve) {
     218  1
             this.cve = cve;
     219  1
         }
     220  
     
     221  
         /**
     222  
          * Adds the cve to the cve list.
     223  
          *
     224  
          * @param cve the cve to add
     225  
          */
     226  
         public void addCve(String cve) {
     227  7
             this.cve.add(cve);
     228  7
         }
     229  
     
     230  
         /**
     231  
          * Returns whether this suppression rule has CVE entries.
     232  
          *
     233  
          * @return whether this suppression rule has CVE entries
     234  
          */
     235  
         public boolean hasCve() {
     236  10
             return cve.size() > 0;
     237  
         }
     238  
     
     239  
         /**
     240  
          * Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS
     241  
          * scores should be suppressed. If any should be, they are removed from the
     242  
          * dependency.
     243  
          *
     244  
          * @param dependency a project dependency to analyze
     245  
          */
     246  
         public void process(Dependency dependency) {
     247  9
             if (filePath != null && !filePath.matches(dependency.getFilePath())) {
     248  0
                 return;
     249  
             }
     250  9
             if (sha1 != null && !sha1.equalsIgnoreCase(dependency.getSha1sum())) {
     251  1
                 return;
     252  
             }
     253  8
             if (this.hasCpe()) {
     254  3
                 final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
     255  8
                 while (itr.hasNext()) {
     256  5
                     final Identifier i = itr.next();
     257  5
                     for (PropertyType c : this.cpe) {
     258  9
                         if (cpeMatches(c, i)) {
     259  4
                             itr.remove();
     260  4
                             break;
     261  
                         }
     262  
                     }
     263  5
                 }
     264  
             }
     265  8
             if (hasCve() || hasCwe() || hasCvssBelow()) {
     266  5
                 final Iterator<Vulnerability> itr = dependency.getVulnerabilities().iterator();
     267  5
                 boolean remove = false;
     268  10
                 while (!remove && itr.hasNext()) {
     269  5
                     final Vulnerability v = itr.next();
     270  5
                     for (String entry : this.cve) {
     271  3
                         if (entry.equalsIgnoreCase(v.getName())) {
     272  1
                             remove = true;
     273  1
                             break;
     274  
                         }
     275  
                     }
     276  5
                     if (!remove) {
     277  4
                         for (String entry : this.cwe) {
     278  1
                             if (v.getCwe() != null) {
     279  1
                                 final String toMatch = String.format("CWE-%s ", entry);
     280  1
                                 final String toTest = v.getCwe().substring(0, toMatch.length()).toUpperCase();
     281  1
                                 if (toTest.equals(toMatch)) {
     282  1
                                     remove = true;
     283  1
                                     break;
     284  
                                 }
     285  0
                             }
     286  
                         }
     287  
                     }
     288  5
                     if (!remove) {
     289  3
                         for (float cvss : this.cvssBelow) {
     290  3
                             if (v.getCvssScore() < cvss) {
     291  1
                                 remove = true;
     292  1
                                 break;
     293  
                             }
     294  
                         }
     295  
                     }
     296  5
                     if (remove) {
     297  3
                         itr.remove();
     298  
                     }
     299  5
                 }
     300  
             }
     301  8
         }
     302  
     
     303  
         /**
     304  
          * Identifies if the cpe specified by the cpe suppression rule does not
     305  
          * specify a version.
     306  
          *
     307  
          * @param c a suppression rule identifier
     308  
          * @return true if the property type does not specify a version; otherwise
     309  
          * false
     310  
          */
     311  
         boolean cpeHasNoVersion(PropertyType c) {
     312  14
             if (c.isRegex()) {
     313  2
                 return false;
     314  
             } // cpe:/a:jboss:jboss:1.0.0:
     315  12
             if (countCharacter(c.getValue(), ':') == 3) {
     316  3
                 return true;
     317  
             }
     318  9
             return false;
     319  
         }
     320  
     
     321  
         /**
     322  
          * Counts the number of occurrences of the character found within the
     323  
          * string.
     324  
          *
     325  
          * @param str the string to check
     326  
          * @param c the character to count
     327  
          * @return the number of times the character is found in the string
     328  
          */
     329  
         int countCharacter(String str, char c) {
     330  15
             int count = 0;
     331  15
             int pos = str.indexOf(c) + 1;
     332  66
             while (pos > 0) {
     333  51
                 count += 1;
     334  51
                 pos = str.indexOf(c, pos) + 1;
     335  
             }
     336  15
             return count;
     337  
         }
     338  
     
     339  
         /**
     340  
          * Determines if the cpeEntry specified as a PropertyType matches the given
     341  
          * Identifier.
     342  
          *
     343  
          * @param cpeEntry a suppression rule entry
     344  
          * @param identifier a CPE identifier to check
     345  
          * @return true if the entry matches; otherwise false
     346  
          */
     347  
         boolean cpeMatches(PropertyType cpeEntry, Identifier identifier) {
     348  16
             if (cpeEntry.matches(identifier.getValue())) {
     349  5
                 return true;
     350  11
             } else if (cpeHasNoVersion(cpeEntry)) {
     351  2
                 if (cpeEntry.isCaseSensitive()) {
     352  0
                     if (identifier.getValue().startsWith(cpeEntry.getValue())) {
     353  0
                         return true;
     354  
                     }
     355  
                 } else {
     356  2
                     final String id = identifier.getValue().toLowerCase();
     357  2
                     final String check = cpeEntry.getValue().toLowerCase();
     358  2
                     if (id.startsWith(check)) {
     359  2
                         return true;
     360  
                     }
     361  
                 }
     362  
             }
     363  9
             return false;
     364  
         }
     365  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html new file mode 100644 index 000000000..db64fc027 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html @@ -0,0 +1,213 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.Checksum
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Checksum
    84%
    21/25
    90%
    9/10
    2.75
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     package org.owasp.dependencycheck.utils;
     2  
     
     3  
     import java.io.File;
     4  
     import java.io.FileInputStream;
     5  
     import java.io.IOException;
     6  
     import java.io.InputStream;
     7  
     import java.security.MessageDigest;
     8  
     import java.security.NoSuchAlgorithmException;
     9  
     import java.util.logging.Level;
     10  
     import java.util.logging.Logger;
     11  
     
     12  
     /**
     13  
      * Includes methods to generate the MD5 and SHA1 checksum.
     14  
      *
     15  
      * This code was copied from Real's How To. It has been slightly modified.
     16  
      *
     17  
      * Written and compiled by Réal Gagnon ©1998-2012
     18  
      *
     19  
      * @author Real's How To: http://www.rgagnon.com/javadetails/java-0416.html
     20  
      *
     21  
      */
     22  0
     public class Checksum {
     23  
     
     24  
         /**
     25  
          * <p>Creates the cryptographic checksum of a given file using the specified
     26  
          * algorithm.</p> <p>This algorithm was copied and heavily modified from
     27  
          * Real's How To: http://www.rgagnon.com/javadetails/java-0416.html</p>
     28  
          *
     29  
          * @param algorithm the algorithm to use to calculate the checksum
     30  
          * @param file the file to calculate the checksum for
     31  
          * @return the checksum
     32  
          * @throws IOException when the file does not exist
     33  
          * @throws NoSuchAlgorithmException when an algorithm is specified that does
     34  
          * not exist
     35  
          */
     36  
         public static byte[] getChecksum(String algorithm, File file) throws NoSuchAlgorithmException, IOException {
     37  77
             InputStream fis = null;
     38  77
             byte[] buffer = new byte[1024];
     39  77
             MessageDigest complete = MessageDigest.getInstance(algorithm);
     40  
             int numRead;
     41  
             try {
     42  76
                 fis = new FileInputStream(file);
     43  
                 do {
     44  40746
                     numRead = fis.read(buffer);
     45  40746
                     if (numRead > 0) {
     46  40671
                         complete.update(buffer, 0, numRead);
     47  
                     }
     48  40746
                 } while (numRead != -1);
     49  
             } finally {
     50  76
                 if (fis != null) {
     51  
                     try {
     52  75
                         fis.close();
     53  0
                     } catch (IOException ex) {
     54  0
                         Logger.getLogger(Checksum.class.getName()).log(Level.FINEST, "Error closing file '" + file.getName() + "'.", ex);
     55  76
                     }
     56  
                 }
     57  
             }
     58  75
             return complete.digest();
     59  
         }
     60  
     
     61  
         /**
     62  
          * Calculates the MD5 checksum of a specified file.
     63  
          *
     64  
          * @param file the file to generate the MD5 checksum
     65  
          * @return the hex representation of the MD5 hash
     66  
          * @throws IOException when the file passed in does not exist
     67  
          * @throws NoSuchAlgorithmException when the MD5 algorithm is not available
     68  
          */
     69  
         public static String getMD5Checksum(File file) throws IOException, NoSuchAlgorithmException {
     70  37
             byte[] b = getChecksum("MD5", file);
     71  37
             return getHex(b);
     72  
         }
     73  
     
     74  
         /**
     75  
          * Calculates the SHA1 checksum of a specified file.
     76  
          *
     77  
          * @param file the file to generate the MD5 checksum
     78  
          * @return the hex representation of the SHA1 hash
     79  
          * @throws IOException when the file passed in does not exist
     80  
          * @throws NoSuchAlgorithmException when the SHA1 algorithm is not available
     81  
          */
     82  
         public static String getSHA1Checksum(File file) throws IOException, NoSuchAlgorithmException {
     83  37
             byte[] b = getChecksum("SHA1", file);
     84  37
             return getHex(b);
     85  
         }
     86  
         private static final String HEXES = "0123456789ABCDEF";
     87  
     
     88  
         /**
     89  
          * <p>Converts a byte array into a hex string.</p>
     90  
          *
     91  
          * <p>This method was copied from <a
     92  
          * href="http://www.rgagnon.com/javadetails/java-0596.html">http://www.rgagnon.com/javadetails/java-0596.html</a></p>
     93  
          *
     94  
          * @param raw a byte array
     95  
          * @return the hex representation of the byte array
     96  
          */
     97  
         public static String getHex(byte[] raw) {
     98  75
             if (raw == null) {
     99  0
                 return null;
     100  
             }
     101  75
             final StringBuilder hex = new StringBuilder(2 * raw.length);
     102  1424
             for (final byte b : raw) {
     103  1349
                 hex.append(HEXES.charAt((b & 0xF0) >> 4)).append(HEXES.charAt((b & 0x0F)));
     104  
             }
     105  75
             return hex.toString();
     106  
         }
     107  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html new file mode 100644 index 000000000..e556840c3 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html @@ -0,0 +1,452 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.DependencyVersion
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyVersion
    92%
    76/82
    80%
    50/62
    5.091
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.Iterator;
     23  
     import java.util.List;
     24  
     import java.util.regex.Matcher;
     25  
     import java.util.regex.Pattern;
     26  
     import org.apache.commons.lang.StringUtils;
     27  
     
     28  
     /**
     29  
      * <p>Simple object to track the parts of a version number. The parts are
     30  
      * contained in a List such that version 1.2.3 will be stored as:
     31  
      * <code>versionParts[0] = 1;
     32  
      * versionParts[1] = 2;
     33  
      * versionParts[2] = 3;
     34  
      * </code></p>
     35  
      * <p>Note, the parser contained in this class expects the version numbers to be
     36  
      * separated by periods. If a different separator is used the parser will likely
     37  
      * fail.</p>
     38  
      *
     39  
      * @author Jeremy Long (jeremy.long@owasp.org)
     40  
      */
     41  13
     public class DependencyVersion implements Iterable, Comparable<DependencyVersion> {
     42  
     
     43  
         /**
     44  
          * Constructor for a empty DependencyVersion.
     45  
          */
     46  20
         public DependencyVersion() {
     47  20
         }
     48  
     
     49  
         /**
     50  
          * Constructor for a DependencyVersion that will parse a version string.
     51  
          * <b>Note</b>, this should only be used when the version passed in is
     52  
          * already known to be a well formated version number. Otherwise,
     53  
          * DependencyVersionUtil.parseVersion() should be used instead.
     54  
          *
     55  
          * @param version the well formated version number to parse
     56  
          */
     57  12869
         public DependencyVersion(String version) {
     58  12869
             parseVersion(version);
     59  12869
         }
     60  
     
     61  
         /**
     62  
          * Parses a version string into its sub parts: major, minor, revision,
     63  
          * build, etc. <b>Note</b>, this should only be used to parse something that
     64  
          * is already known to be a version number.
     65  
          *
     66  
          * @param version the version string to parse
     67  
          */
     68  
         public final void parseVersion(String version) {
     69  12871
             versionParts = new ArrayList<String>();
     70  12871
             if (version != null) {
     71  12871
                 final Pattern rx = Pattern.compile("(\\d+|[a-z]+\\d+|(release|beta|alpha)$)");
     72  12871
                 final Matcher matcher = rx.matcher(version.toLowerCase());
     73  53001
                 while (matcher.find()) {
     74  40130
                     versionParts.add(matcher.group());
     75  
                 }
     76  12871
                 if (versionParts.isEmpty()) {
     77  77
                     versionParts.add(version);
     78  
                 }
     79  
             }
     80  12871
         }
     81  
         /**
     82  
          * A list of the version parts.
     83  
          */
     84  
         private List<String> versionParts;
     85  
     
     86  
         /**
     87  
          * Get the value of versionParts.
     88  
          *
     89  
          * @return the value of versionParts
     90  
          */
     91  
         public List<String> getVersionParts() {
     92  18242
             return versionParts;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Set the value of versionParts.
     97  
          *
     98  
          * @param versionParts new value of versionParts
     99  
          */
     100  
         public void setVersionParts(List<String> versionParts) {
     101  19
             this.versionParts = versionParts;
     102  19
         }
     103  
     
     104  
         /**
     105  
          * Retrieves an iterator for the version parts.
     106  
          *
     107  
          * @return an iterator for the version parts
     108  
          */
     109  
         public Iterator iterator() {
     110  1
             return versionParts.iterator();
     111  
         }
     112  
     
     113  
         /**
     114  
          * Reconstructs the version string from the split version parts.
     115  
          *
     116  
          * @return a string representing the version.
     117  
          */
     118  
         @Override
     119  
         public String toString() {
     120  3718
             return StringUtils.join(versionParts.toArray(), ".");
     121  
         }
     122  
     
     123  
         /**
     124  
          * Compares the equality of this object to the one passed in as a parameter.
     125  
          *
     126  
          * @param obj the object to compare equality
     127  
          * @return returns true only if the two objects are equal, otherwise false
     128  
          */
     129  
         @Override
     130  
         public boolean equals(Object obj) {
     131  12505
             if (obj == null) {
     132  0
                 return false;
     133  
             }
     134  12505
             if (getClass() != obj.getClass()) {
     135  0
                 return false;
     136  
             }
     137  12505
             final DependencyVersion other = (DependencyVersion) obj;
     138  12505
             final int max = (this.versionParts.size() < other.versionParts.size())
     139  
                     ? this.versionParts.size() : other.versionParts.size();
     140  
             //TODO steal better version of code from compareTo
     141  18989
             for (int i = 0; i < max; i++) {
     142  18298
                 final String thisPart = this.versionParts.get(i);
     143  18298
                 final String otherPart = other.versionParts.get(i);
     144  18298
                 if (!thisPart.equals(otherPart)) {
     145  11814
                     return false;
     146  
                 }
     147  
             }
     148  691
             if (this.versionParts.size() > max) {
     149  86
                 for (int i = max; i < this.versionParts.size(); i++) {
     150  86
                     if (!"0".equals(this.versionParts.get(i))) {
     151  86
                         return false;
     152  
                     }
     153  
                 }
     154  
             }
     155  
     
     156  605
             if (other.versionParts.size() > max) {
     157  463
                 for (int i = max; i < other.versionParts.size(); i++) {
     158  447
                     if (!"0".equals(other.versionParts.get(i))) {
     159  415
                         return false;
     160  
                     }
     161  
                 }
     162  
             }
     163  
     
     164  
             /*
     165  
              *  if (this.versionParts != other.versionParts && (this.versionParts == null || !this.versionParts.equals(other.versionParts))) {
     166  
              *      return false;
     167  
              *  }
     168  
              */
     169  190
             return true;
     170  
         }
     171  
     
     172  
         /**
     173  
          * Calculates the hashCode for this object.
     174  
          *
     175  
          * @return the hashCode
     176  
          */
     177  
         @Override
     178  
         public int hashCode() {
     179  1
             int hash = 5;
     180  1
             hash = 71 * hash + (this.versionParts != null ? this.versionParts.hashCode() : 0);
     181  1
             return hash;
     182  
         }
     183  
     
     184  
         /**
     185  
          * Determines if the three most major major version parts are identical. For
     186  
          * instances, if version 1.2.3.4 was compared to 1.2.3 this function would
     187  
          * return true.
     188  
          *
     189  
          * @param version the version number to compare
     190  
          * @return true if the first three major parts of the version are identical
     191  
          */
     192  
         public boolean matchesAtLeastThreeLevels(DependencyVersion version) {
     193  8359
             if (version == null) {
     194  0
                 return false;
     195  
             }
     196  
     
     197  8359
             boolean ret = true;
     198  8359
             int max = (this.versionParts.size() < version.versionParts.size())
     199  
                     ? this.versionParts.size() : version.versionParts.size();
     200  
     
     201  8359
             if (max > 3) {
     202  2
                 max = 3;
     203  
             }
     204  
     
     205  12674
             for (int i = 0; i < max; i++) {
     206  12260
                 if (this.versionParts.get(i) == null || !this.versionParts.get(i).equals(version.versionParts.get(i))) {
     207  7945
                     ret = false;
     208  7945
                     break;
     209  
                 }
     210  
             }
     211  
     
     212  8359
             return ret;
     213  
         }
     214  
     
     215  
         @Override
     216  
         public int compareTo(DependencyVersion version) {
     217  54
             if (version == null) {
     218  0
                 return 1;
     219  
             }
     220  54
             final List<String> left = this.getVersionParts();
     221  54
             final List<String> right = version.getVersionParts();
     222  54
             final int max = left.size() < right.size() ? left.size() : right.size();
     223  
     
     224  88
             for (int i = 0; i < max; i++) {
     225  81
                 final String lStr = left.get(i);
     226  81
                 final String rStr = right.get(i);
     227  81
                 if (lStr.equals(rStr)) {
     228  34
                     continue;
     229  
                 }
     230  
                 try {
     231  47
                     final int l = Integer.parseInt(lStr);
     232  46
                     final int r = Integer.parseInt(rStr);
     233  41
                     if (l < r) {
     234  32
                         return -1;
     235  9
                     } else if (l > r) {
     236  9
                         return 1;
     237  
                     }
     238  6
                 } catch (NumberFormatException ex) {
     239  6
                     final int comp = left.get(i).compareTo(right.get(i));
     240  6
                     if (comp < 0) {
     241  0
                         return -1;
     242  6
                     } else if (comp > 0) {
     243  6
                         return 1;
     244  
                     }
     245  0
                 }
     246  
             }
     247  7
             if (left.size() < right.size()) {
     248  3
                 return -1;
     249  4
             } else if (left.size() > right.size()) {
     250  3
                 return 1;
     251  
             } else {
     252  1
                 return 0;
     253  
             }
     254  
         }
     255  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html new file mode 100644 index 000000000..97c1692c3 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html @@ -0,0 +1,188 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.DependencyVersionUtil
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyVersionUtil
    92%
    24/26
    100%
    14/14
    7
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.regex.Matcher;
     23  
     import java.util.regex.Pattern;
     24  
     
     25  
     /**
     26  
      * <p>A utility class to extract version numbers from file names (or other
     27  
      * strings containing version numbers.</p>
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  
     public final class DependencyVersionUtil {
     32  
     
     33  
         /**
     34  
          * Regular expression to extract version numbers from file names.
     35  
          */
     36  1
         private static final Pattern RX_VERSION = Pattern.compile("\\d+(\\.\\d{1,6})+(\\.?([_-](release|beta|alpha)|[a-zA-Z_-]{1,3}\\d{1,8}))?");
     37  
         /**
     38  
          * Regular expression to extract a single version number without periods.
     39  
          * This is a last ditch effort just to check in case we are missing a
     40  
          * version number using the previous regex.
     41  
          */
     42  1
         private static final Pattern RX_SINGLE_VERSION = Pattern.compile("\\d+(\\.?([_-](release|beta|alpha)|[a-zA-Z_-]{1,3}\\d{1,8}))?");
     43  
     
     44  
         /**
     45  
          * Private constructor for utility class.
     46  
          */
     47  0
         private DependencyVersionUtil() {
     48  0
         }
     49  
     
     50  
         /**
     51  
          * <p>A utility class to extract version numbers from file names (or other
     52  
          * strings containing version numbers.<br/>
     53  
          * Example:<br/>
     54  
          * Give the file name: library-name-1.4.1r2-release.jar<br/>
     55  
          * This function would return: 1.4.1.r2</p>
     56  
          *
     57  
          * @param text the text being analyzed
     58  
          * @return a DependencyVersion containing the version
     59  
          */
     60  
         public static DependencyVersion parseVersion(String text) {
     61  12835
             if (text == null) {
     62  40
                 return null;
     63  
             }
     64  
             //'-' is a special case used within the CVE entries, just include it as the version.
     65  12795
             if ("-".equals(text)) {
     66  19
                 final DependencyVersion dv = new DependencyVersion();
     67  19
                 final ArrayList<String> list = new ArrayList<String>();
     68  19
                 list.add(text);
     69  19
                 dv.setVersionParts(list);
     70  19
                 return dv;
     71  
             }
     72  12776
             String version = null;
     73  12776
             Matcher matcher = RX_VERSION.matcher(text);
     74  12776
             if (matcher.find()) {
     75  12660
                 version = matcher.group();
     76  
             }
     77  
             //throw away the results if there are two things that look like version numbers
     78  12776
             if (matcher.find()) {
     79  2
                 return null;
     80  
             }
     81  12774
             if (version == null) {
     82  116
                 matcher = RX_SINGLE_VERSION.matcher(text);
     83  116
                 if (matcher.find()) {
     84  106
                     version = matcher.group();
     85  
                 } else {
     86  10
                     return null;
     87  
                 }
     88  
                 //throw away the results if there are two things that look like version numbers
     89  106
                 if (matcher.find()) {
     90  1
                     return null;
     91  
                 }
     92  
             }
     93  12763
             return new DependencyVersion(version);
     94  
         }
     95  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html new file mode 100644 index 000000000..c693c0d5f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.DownloadFailedException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DownloadFailedException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when a download fails.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class DownloadFailedException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version UID.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new DownloadFailedException.
     37  
          */
     38  
         public DownloadFailedException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new DownloadFailedException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public DownloadFailedException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new DownloadFailedException.
     53  
          *
     54  
          * @param ex the cause of the download failure.
     55  
          */
     56  
         public DownloadFailedException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new DownloadFailedException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the download failure.
     65  
          */
     66  
         public DownloadFailedException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html new file mode 100644 index 000000000..c9f4fcff4 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html @@ -0,0 +1,388 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.Downloader
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Downloader
    7%
    7/88
    3%
    1/28
    6.6
    Downloader$1
    0%
    0/4
    0%
    0/2
    6.6
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.BufferedOutputStream;
     22  
     import java.io.File;
     23  
     import java.io.FileOutputStream;
     24  
     import java.io.IOException;
     25  
     import java.io.InputStream;
     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  0
         private Downloader() {
     50  0
         }
     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  0
             HttpURLConnection conn = null;
     62  
             try {
     63  0
                 conn = Downloader.getConnection(url);
     64  0
                 conn.setRequestProperty("Accept-Encoding", "gzip, deflate");
     65  0
                 conn.connect();
     66  0
             } catch (IOException ex) {
     67  
                 try {
     68  0
                     if (conn != null) {
     69  0
                         conn.disconnect();
     70  
                     }
     71  
                 } finally {
     72  0
                     conn = null;
     73  0
                 }
     74  0
                 throw new DownloadFailedException("Error downloading file.", ex);
     75  0
             }
     76  0
             final String encoding = conn.getContentEncoding();
     77  
     
     78  0
             BufferedOutputStream writer = null;
     79  0
             InputStream reader = null;
     80  
             try {
     81  0
                 if (encoding != null && "gzip".equalsIgnoreCase(encoding)) {
     82  0
                     reader = new GZIPInputStream(conn.getInputStream());
     83  0
                 } else if (encoding != null && "deflate".equalsIgnoreCase(encoding)) {
     84  0
                     reader = new InflaterInputStream(conn.getInputStream());
     85  
                 } else {
     86  0
                     reader = conn.getInputStream();
     87  
                 }
     88  
     
     89  0
                 writer = new BufferedOutputStream(new FileOutputStream(outputPath));
     90  0
                 final byte[] buffer = new byte[4096];
     91  
                 int bytesRead;
     92  0
                 while ((bytesRead = reader.read(buffer)) > 0) {
     93  0
                     writer.write(buffer, 0, bytesRead);
     94  
                 }
     95  0
             } catch (Exception ex) {
     96  0
                 throw new DownloadFailedException("Error saving downloaded file.", ex);
     97  
             } finally {
     98  0
                 if (writer != null) {
     99  
                     try {
     100  0
                         writer.close();
     101  0
                     } catch (Exception ex) {
     102  0
                         Logger.getLogger(Downloader.class.getName()).log(Level.FINEST,
     103  
                                 "Error closing the writer in Downloader.", ex);
     104  0
                     }
     105  
                 }
     106  0
                 if (reader != null) {
     107  
                     try {
     108  0
                         reader.close();
     109  0
                     } catch (Exception ex) {
     110  0
                         Logger.getLogger(Downloader.class.getName()).log(Level.FINEST,
     111  
                                 "Error closing the reader in Downloader.", ex);
     112  0
                     }
     113  
                 }
     114  
                 try {
     115  0
                     conn.disconnect();
     116  
                 } finally {
     117  0
                     conn = null;
     118  0
                 }
     119  0
             }
     120  0
         }
     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  14
             long timestamp = 0;
     134  
             //TODO add the FPR protocol?
     135  14
             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  14
                     lastModifiedFile = new File(url.toURI());
     147  
     //                }
     148  0
                 } catch (URISyntaxException ex) {
     149  0
                     final String msg = String.format("Unable to locate '%s'; is the cve.url-2.0.modified property set correctly?", url.toString());
     150  0
                     throw new DownloadFailedException(msg);
     151  14
                 }
     152  14
                 timestamp = lastModifiedFile.lastModified();
     153  14
             } else {
     154  0
                 HttpURLConnection conn = null;
     155  
                 try {
     156  0
                     conn = Downloader.getConnection(url);
     157  0
                     conn.setRequestMethod("HEAD");
     158  0
                     conn.connect();
     159  0
                     timestamp = conn.getLastModified();
     160  0
                 } catch (Exception ex) {
     161  0
                     throw new DownloadFailedException("Error making HTTP HEAD request.", ex);
     162  
                 } finally {
     163  0
                     if (conn != null) {
     164  
                         try {
     165  0
                             conn.disconnect();
     166  
                         } finally {
     167  0
                             conn = null;
     168  0
                         }
     169  
                     }
     170  
                 }
     171  
             }
     172  14
             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  0
             HttpURLConnection conn = null;
     186  0
             Proxy proxy = null;
     187  0
             final String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL);
     188  
             try {
     189  0
                 if (proxyUrl != null) {
     190  0
                     final int proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT);
     191  0
                     final SocketAddress addr = new InetSocketAddress(proxyUrl, proxyPort);
     192  
     
     193  0
                     final String username = Settings.getString(Settings.KEYS.PROXY_USERNAME);
     194  0
                     final String password = Settings.getString(Settings.KEYS.PROXY_PASSWORD);
     195  0
                     if (username != null && password != null) {
     196  0
                         final Authenticator auth = new Authenticator() {
     197  
                             @Override
     198  
                             public PasswordAuthentication getPasswordAuthentication() {
     199  0
                                 if (getRequestorType().equals(RequestorType.PROXY)) {
     200  0
                                     return new PasswordAuthentication(username, password.toCharArray());
     201  
                                 }
     202  0
                                 return super.getPasswordAuthentication();
     203  
                             }
     204  
                         };
     205  0
                         Authenticator.setDefault(auth);
     206  
                     }
     207  
     
     208  0
                     proxy = new Proxy(Proxy.Type.HTTP, addr);
     209  0
                     conn = (HttpURLConnection) url.openConnection(proxy);
     210  0
                 } else {
     211  0
                     conn = (HttpURLConnection) url.openConnection();
     212  
                 }
     213  0
                 final int timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000);
     214  0
                 conn.setConnectTimeout(timeout);
     215  0
             } catch (IOException ex) {
     216  0
                 if (conn != null) {
     217  
                     try {
     218  0
                         conn.disconnect();
     219  
                     } finally {
     220  0
                         conn = null;
     221  0
                     }
     222  
                 }
     223  0
                 throw new DownloadFailedException("Error getting connection.", ex);
     224  0
             }
     225  0
             return conn;
     226  
         }
     227  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html new file mode 100644 index 000000000..fa4564afb --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.ExtractionException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ExtractionException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when a file is unable to be un-zipped.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class ExtractionException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version UID.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new ExtractionException.
     37  
          */
     38  
         public ExtractionException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new ExtractionException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public ExtractionException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new ExtractionException.
     53  
          *
     54  
          * @param ex the cause of the download failure.
     55  
          */
     56  
         public ExtractionException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new ExtractionException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the download failure.
     65  
          */
     66  
         public ExtractionException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html new file mode 100644 index 000000000..f2a4ae015 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html @@ -0,0 +1,414 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.FileUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    FileUtils
    52%
    40/76
    56%
    18/32
    5.286
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.BufferedInputStream;
     22  
     import java.io.BufferedOutputStream;
     23  
     import java.io.File;
     24  
     import java.io.FileInputStream;
     25  
     import java.io.FileNotFoundException;
     26  
     import java.io.FileOutputStream;
     27  
     import java.io.IOException;
     28  
     import java.io.UnsupportedEncodingException;
     29  
     import java.net.URLDecoder;
     30  
     import java.util.logging.Level;
     31  
     import java.util.logging.Logger;
     32  
     import java.util.zip.ZipEntry;
     33  
     import java.util.zip.ZipInputStream;
     34  
     import org.owasp.dependencycheck.Engine;
     35  
     
     36  
     /**
     37  
      * A collection of utilities for processing information about files.
     38  
      *
     39  
      * @author Jeremy Long (jeremy.long@owasp.org)
     40  
      */
     41  
     public final class FileUtils {
     42  
     
     43  
         /**
     44  
          * The buffer size to use when extracting files from the archive.
     45  
          */
     46  
         private static final int BUFFER_SIZE = 4096;
     47  
     
     48  
         /**
     49  
          * Private constructor for a utility class.
     50  
          */
     51  0
         private FileUtils() {
     52  0
         }
     53  
     
     54  
         /**
     55  
          * Returns the (lowercase) file extension for a specified file.
     56  
          *
     57  
          * @param fileName the file name to retrieve the file extension from.
     58  
          * @return the file extension.
     59  
          */
     60  
         public static String getFileExtension(String fileName) {
     61  207
             String ret = null;
     62  207
             final int pos = fileName.lastIndexOf(".");
     63  207
             if (pos >= 0) {
     64  199
                 ret = fileName.substring(pos + 1, fileName.length()).toLowerCase();
     65  
             }
     66  207
             return ret;
     67  
         }
     68  
     
     69  
         /**
     70  
          * Deletes a file. If the File is a directory it will recursively delete the
     71  
          * contents.
     72  
          *
     73  
          * @param file the File to delete
     74  
          * @throws IOException is thrown if the file could not be deleted
     75  
          */
     76  
         public static void delete(File file) throws IOException {
     77  5
             if (file.isDirectory()) {
     78  3
                 for (File c : file.listFiles()) {
     79  2
                     delete(c);
     80  
                 }
     81  
             }
     82  5
             if (!org.apache.commons.io.FileUtils.deleteQuietly(file)) {
     83  0
                 throw new FileNotFoundException("Failed to delete file: " + file);
     84  
             }
     85  
             /* else {
     86  
              //delete on exit was a bad idea. if for some reason the file can't be deleted
     87  
              // this will cause a newly constructed file to be deleted and a subsequent run may fail.
     88  
              // still not sure why a file fails to be deleted, but can be overwritten... odd.
     89  
              file.deleteOnExit();
     90  
              }*/
     91  5
         }
     92  
     
     93  
         /**
     94  
          * Returns the data directory. If a path was specified in
     95  
          * dependencycheck.properties or was specified using the Settings object,
     96  
          * and the path exists, that path will be returned as a File object. If it
     97  
          * does not exist, then a File object will be created based on the file
     98  
          * location of the JAR containing the specified class.
     99  
          *
     100  
          * @param configuredFilePath the configured relative or absolute path
     101  
          * @param clazz the class whos path will be resolved
     102  
          * @return a File object
     103  
          * @throws IOException is thrown if the path could not be decoded
     104  
          * @deprecated This method should no longer be used. See the implementation
     105  
          * in dependency-check-cli/App.java to see how the data directory should be
     106  
          * set.
     107  
          */
     108  
         @java.lang.Deprecated
     109  
         public static File getDataDirectory(String configuredFilePath, Class clazz) throws IOException {
     110  0
             final File file = new File(configuredFilePath);
     111  0
             if (file.isDirectory() && file.canWrite()) {
     112  0
                 return new File(file.getCanonicalPath());
     113  
             } else {
     114  0
                 final File exePath = getPathToJar(clazz);
     115  0
                 return new File(exePath, configuredFilePath);
     116  
             }
     117  
         }
     118  
     
     119  
         /**
     120  
          * Retrieves the physical path to the parent directory containing the
     121  
          * provided class. For example, if a JAR file contained a class
     122  
          * org.something.clazz this method would return the parent directory of the
     123  
          * JAR file.
     124  
          *
     125  
          * @param clazz the class to determine the parent directory of
     126  
          * @return the parent directory of the file containing the specified class.
     127  
          * @throws UnsupportedEncodingException thrown if UTF-8 is not supported.
     128  
          * @deprecated this should no longer be used.
     129  
          */
     130  
         @java.lang.Deprecated
     131  
         public static File getPathToJar(Class clazz) throws UnsupportedEncodingException {
     132  0
             final String filePath = clazz.getProtectionDomain().getCodeSource().getLocation().getPath();
     133  0
             final String decodedPath = URLDecoder.decode(filePath, "UTF-8");
     134  0
             final File jarPath = new File(decodedPath);
     135  0
             return jarPath.getParentFile();
     136  
         }
     137  
     
     138  
         /**
     139  
          * Extracts the contents of an archive into the specified directory.
     140  
          *
     141  
          * @param archive an archive file such as a WAR or EAR
     142  
          * @param extractTo a directory to extract the contents to
     143  
          * @throws ExtractionException thrown if an exception occurs while
     144  
          * extracting the files
     145  
          */
     146  
         public static void extractFiles(File archive, File extractTo) throws ExtractionException {
     147  1
             extractFiles(archive, extractTo, null);
     148  1
         }
     149  
     
     150  
         /**
     151  
          * Extracts the contents of an archive into the specified directory. The
     152  
          * files are only extracted if they are supported by the analyzers loaded
     153  
          * into the specified engine. If the engine is specified as null then all
     154  
          * files are extracted.
     155  
          *
     156  
          * @param archive an archive file such as a WAR or EAR
     157  
          * @param extractTo a directory to extract the contents to
     158  
          * @param engine the scanning engine
     159  
          * @throws ExtractionException thrown if there is an error extracting the
     160  
          * files
     161  
          */
     162  
         public static void extractFiles(File archive, File extractTo, Engine engine) throws ExtractionException {
     163  1
             if (archive == null || extractTo == null) {
     164  0
                 return;
     165  
             }
     166  
     
     167  1
             FileInputStream fis = null;
     168  1
             ZipInputStream zis = null;
     169  
     
     170  
             try {
     171  1
                 fis = new FileInputStream(archive);
     172  0
             } catch (FileNotFoundException ex) {
     173  0
                 Logger.getLogger(FileUtils.class.getName()).log(Level.INFO, null, ex);
     174  0
                 throw new ExtractionException("Archive file was not found.", ex);
     175  1
             }
     176  1
             zis = new ZipInputStream(new BufferedInputStream(fis));
     177  
             ZipEntry entry;
     178  
             try {
     179  5
                 while ((entry = zis.getNextEntry()) != null) {
     180  4
                     if (entry.isDirectory()) {
     181  1
                         final File d = new File(extractTo, entry.getName());
     182  1
                         if (!d.exists() && !d.mkdirs()) {
     183  0
                             final String msg = String.format("Unable to create '%s'.", d.getAbsolutePath());
     184  0
                             throw new ExtractionException(msg);
     185  
                         }
     186  1
                     } else {
     187  3
                         final File file = new File(extractTo, entry.getName());
     188  3
                         final String ext = getFileExtension(file.getName());
     189  3
                         if (engine == null || engine.supportsExtension(ext)) {
     190  3
                             BufferedOutputStream bos = null;
     191  
                             FileOutputStream fos;
     192  
                             try {
     193  3
                                 fos = new FileOutputStream(file);
     194  3
                                 bos = new BufferedOutputStream(fos, BUFFER_SIZE);
     195  
                                 int count;
     196  3
                                 final byte data[] = new byte[BUFFER_SIZE];
     197  90235
                                 while ((count = zis.read(data, 0, BUFFER_SIZE)) != -1) {
     198  90232
                                     bos.write(data, 0, count);
     199  
                                 }
     200  3
                                 bos.flush();
     201  0
                             } catch (FileNotFoundException ex) {
     202  0
                                 Logger.getLogger(FileUtils.class.getName()).log(Level.FINE, null, ex);
     203  0
                                 final String msg = String.format("Unable to find file '%s'.", file.getName());
     204  0
                                 throw new ExtractionException(msg, ex);
     205  0
                             } catch (IOException ex) {
     206  0
                                 Logger.getLogger(FileUtils.class.getName()).log(Level.FINE, null, ex);
     207  0
                                 final String msg = String.format("IO Exception while parsing file '%s'.", file.getName());
     208  0
                                 throw new ExtractionException(msg, ex);
     209  
                             } finally {
     210  3
                                 if (bos != null) {
     211  
                                     try {
     212  3
                                         bos.close();
     213  0
                                     } catch (IOException ex) {
     214  0
                                         Logger.getLogger(FileUtils.class.getName()).log(Level.FINEST, null, ex);
     215  3
                                     }
     216  
                                 }
     217  
                             }
     218  
                         }
     219  3
                     }
     220  
                 }
     221  0
             } catch (IOException ex) {
     222  0
                 final String msg = String.format("Exception reading archive '%s'.", archive.getName());
     223  0
                 Logger.getLogger(FileUtils.class.getName()).log(Level.FINE, msg, ex);
     224  0
                 throw new ExtractionException(msg, ex);
     225  
             } finally {
     226  0
                 try {
     227  1
                     zis.close();
     228  0
                 } catch (IOException ex) {
     229  0
                     Logger.getLogger(FileUtils.class.getName()).log(Level.FINEST, null, ex);
     230  1
                 }
     231  0
             }
     232  1
         }
     233  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html new file mode 100644 index 000000000..15ffa0314 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html @@ -0,0 +1,142 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.Filter
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Filter
    100%
    4/4
    N/A
    1.667
    Filter$1
    100%
    2/2
    N/A
    1.667
    Filter$FilterIterator
    90%
    18/20
    80%
    8/10
    1.667
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     package org.owasp.dependencycheck.utils;
     2  
     
     3  
     import java.util.Iterator;
     4  
     import java.util.NoSuchElementException;
     5  
     
     6  
     /*
     7  
      * This is an abstract filter that can be used to filter iterable list.
     8  
      *
     9  
      * This Filter class was copied from:
     10  
      * http://erikras.com/2008/01/18/the-filter-pattern-java-conditional-abstraction-with-iterables/
     11  
      *
     12  
      * Erik Rasmussen - © 2006 - 2012 All Rights Reserved. @author Erik Rasmussen
     13  
      * https://plus.google.com/115403795880834599019/?rel=author
     14  
      */
     15  6
     public abstract class Filter<T> {
     16  
     
     17  
         public abstract boolean passes(T object);
     18  
     
     19  
         public Iterator<T> filter(Iterator<T> iterator) {
     20  1883
             return new FilterIterator(iterator);
     21  
         }
     22  
     
     23  
         public Iterable<T> filter(final Iterable<T> iterable) {
     24  1883
             return new Iterable<T>() {
     25  
     
     26  
                 public Iterator<T> iterator() {
     27  1883
                     return filter(iterable.iterator());
     28  
                 }
     29  
             };
     30  
         }
     31  
     
     32  6
         private class FilterIterator implements Iterator<T> {
     33  
     
     34  
             private final Iterator<T> iterator;
     35  
             private T next;
     36  
     
     37  1883
             private FilterIterator(Iterator<T> iterator) {
     38  1883
                 this.iterator = iterator;
     39  1883
                 toNext();
     40  1883
             }
     41  
     
     42  
             public boolean hasNext() {
     43  8052
                 return next != null;
     44  
             }
     45  
     
     46  
             public T next() {
     47  6675
                 if (next == null) {
     48  0
                     throw new NoSuchElementException();
     49  
                 }
     50  6675
                 T returnValue = next;
     51  6675
                 toNext();
     52  6675
                 return returnValue;
     53  
             }
     54  
     
     55  
             public void remove() {
     56  0
                 throw new UnsupportedOperationException();
     57  
             }
     58  
     
     59  
             private void toNext() {
     60  8558
                 next = null;
     61  12702
                 while (iterator.hasNext()) {
     62  11211
                     T item = iterator.next();
     63  11211
                     if (item != null && passes(item)) {
     64  7067
                         next = item;
     65  7067
                         break;
     66  
                     }
     67  4144
                 }
     68  8558
             }
     69  
         }
     70  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html new file mode 100644 index 000000000..37bb8a26f --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.InvalidSettingException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    InvalidSettingException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when an error occurs reading a setting.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class InvalidSettingException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version UID.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new InvalidSettingException.
     37  
          */
     38  
         public InvalidSettingException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new InvalidSettingException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public InvalidSettingException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new InvalidSettingException.
     53  
          *
     54  
          * @param ex the cause of the setting exception.
     55  
          */
     56  
         public InvalidSettingException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new InvalidSettingException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the setting exception.
     65  
          */
     66  
         public InvalidSettingException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html new file mode 100644 index 000000000..bb737bae5 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html @@ -0,0 +1,109 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.LogFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    LogFilter
    0%
    0/3
    0%
    0/6
    3
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.util.logging.Filter;
     22  
     import java.util.logging.LogRecord;
     23  
     
     24  
     /**
     25  
      * A simple log filter to limit the entries written to the verbose log file. The
     26  
      * verbose log file uses the root logger as I couldn't get anything else to
     27  
      * work; as such, this filter limits the log entries to specific classes.
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  0
     public class LogFilter implements Filter {
     32  
     
     33  
         /**
     34  
          * Determines if the record should be logged.
     35  
          *
     36  
          * @param record a log record to examine
     37  
          * @return true if the record should be logged, otherwise false
     38  
          */
     39  
         @Override
     40  
         public boolean isLoggable(LogRecord record) {
     41  0
             final String name = record.getSourceClassName();
     42  0
             return name.startsWith("org.owasp.dependencycheck") && !name.contains("generated") && !name.contains("VelocityLoggerRedirect");
     43  
         }
     44  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html new file mode 100644 index 000000000..8a96d7ee7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html @@ -0,0 +1,177 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.LogUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    LogUtils
    8%
    2/25
    0%
    0/6
    3
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.io.InputStream;
     23  
     import java.util.logging.FileHandler;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.LogManager;
     26  
     import java.util.logging.Logger;
     27  
     import java.util.logging.SimpleFormatter;
     28  
     
     29  
     /**
     30  
      * A utility class to aide in the setup of the logging mechanism.
     31  
      *
     32  
      * @author Jeremy Long (jeremy.long@owasp.org)
     33  
      */
     34  
     public final class LogUtils {
     35  
     
     36  
         /**
     37  
          * Private constructor for a utility class.
     38  
          */
     39  0
         private LogUtils() {
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Configures the logger for use by the application.
     44  
          *
     45  
          * @param in the input stream to read the log settings from
     46  
          * @param verboseLogFile the file path for the verbose log
     47  
          */
     48  
         public static void prepareLogger(InputStream in, String verboseLogFile) {
     49  
             try {
     50  0
                 LogManager.getLogManager().reset();
     51  0
                 LogManager.getLogManager().readConfiguration(in);
     52  0
                 if (verboseLogFile != null && !verboseLogFile.isEmpty()) {
     53  0
                     verboseLoggingEnabled = true;
     54  0
                     final Logger logger = Logger.getLogger("");
     55  0
                     final FileHandler handler = new FileHandler(verboseLogFile, true);
     56  0
                     handler.setFormatter(new SimpleFormatter());
     57  0
                     handler.setLevel(Level.FINE);
     58  0
                     handler.setFilter(new LogFilter());
     59  0
                     logger.addHandler(handler);
     60  0
                     logger.setLevel(Level.FINE);
     61  
                 }
     62  0
             } catch (IOException ex) {
     63  0
                 Logger.getLogger(LogUtils.class.getName()).log(Level.FINE, "IO Error preparing the logger", ex);
     64  0
             } catch (SecurityException ex) {
     65  0
                 Logger.getLogger(LogUtils.class.getName()).log(Level.FINE, "Error preparing the logger", ex);
     66  
             } finally {
     67  0
                 if (in != null) {
     68  
                     try {
     69  0
                         in.close();
     70  0
                     } catch (Exception ex) {
     71  0
                         Logger.getLogger(LogUtils.class.getName()).log(Level.FINEST, "Error closing resource stream", ex);
     72  0
                     }
     73  
                 }
     74  
             }
     75  0
         }
     76  
         /**
     77  
          * Whether or not verbose logging is enabled.
     78  
          */
     79  1
         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  3
             return verboseLoggingEnabled;
     88  
         }
     89  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html new file mode 100644 index 000000000..db63f83a1 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html @@ -0,0 +1,119 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.NonClosingStream
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NonClosingStream
    100%
    3/3
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.FilterInputStream;
     22  
     import java.io.InputStream;
     23  
     
     24  
     /**
     25  
      * NonClosingStream is a stream filter which prevents another class that
     26  
      * processes the stream from closing it. This is necessary when dealing with
     27  
      * things like JAXB and zipInputStreams.
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  
     public class NonClosingStream extends FilterInputStream {
     32  
     
     33  
         /**
     34  
          * Constructs a new NonClosingStream.
     35  
          *
     36  
          * @param in an input stream.
     37  
          */
     38  
         public NonClosingStream(InputStream in) {
     39  7
             super(in);
     40  7
         }
     41  
     
     42  
         /**
     43  
          * Prevents closing of the stream.
     44  
          */
     45  
         @Override
     46  
         public void close() {
     47  
             // don't close the stream.
     48  7
         }
     49  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html new file mode 100644 index 000000000..549d95bd7 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html @@ -0,0 +1,866 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.Settings
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Settings
    61%
    52/85
    43%
    7/16
    2.333
    Settings$KEYS
    0%
    0/2
    N/A
    2.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileInputStream;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.IOException;
     25  
     import java.io.InputStream;
     26  
     import java.io.UnsupportedEncodingException;
     27  
     import java.net.URLDecoder;
     28  
     import java.util.Properties;
     29  
     import java.util.logging.Level;
     30  
     import java.util.logging.Logger;
     31  
     
     32  
     /**
     33  
      * A simple settings container that wraps the dependencycheck.properties file.
     34  
      *
     35  
      * @author Jeremy Long (jeremy.long@owasp.org)
     36  
      */
     37  
     public final class Settings {
     38  
     
     39  
         /**
     40  
          * The collection of keys used within the properties file.
     41  
          */
     42  
         public static final class KEYS {
     43  
     
     44  
             /**
     45  
              * private constructor because this is a "utility" class containing
     46  
              * constants
     47  
              */
     48  0
             private KEYS() {
     49  
                 //do nothing
     50  0
             }
     51  
             /**
     52  
              * The properties key indicating whether or not the cached data sources
     53  
              * should be updated.
     54  
              */
     55  
             public static final String AUTO_UPDATE = "autoupdate";
     56  
             /**
     57  
              * The database driver class name. If this is not in the properties file
     58  
              * the embedded database is used.
     59  
              */
     60  
             public static final String DB_DRIVER = "database.drive";
     61  
             /**
     62  
              * The database connection string. If this is not in the properties file
     63  
              * the embedded database is used.
     64  
              */
     65  
             public static final String DB_CONNECTION_STRING = "database.connectionstring";
     66  
             /**
     67  
              * The base path to use for the data directory.
     68  
              */
     69  
             public static final String DATA_DIRECTORY = "data.directory";
     70  
             /**
     71  
              * The location of the batch update URL. This is a zip file that
     72  
              * contains the contents of the data directory.
     73  
              */
     74  
             public static final String BATCH_UPDATE_URL = "batch.update.url";
     75  
             /**
     76  
              * The properties key for the path where the CVE H2 database will be
     77  
              * stored.
     78  
              */
     79  
             public static final String CVE_DATA_DIRECTORY = "data.cve";
     80  
             /**
     81  
              * The properties key for the URL to retrieve the "meta" data from about
     82  
              * the CVE entries.
     83  
              */
     84  
             public static final String CVE_META_URL = "cve.url.meta";
     85  
             /**
     86  
              * The properties key for the URL to retrieve the recently modified and
     87  
              * added CVE entries (last 8 days) using the 2.0 schema.
     88  
              */
     89  
             public static final String CVE_MODIFIED_20_URL = "cve.url-2.0.modified";
     90  
             /**
     91  
              * The properties key for the URL to retrieve the recently modified and
     92  
              * added CVE entries (last 8 days) using the 1.2 schema.
     93  
              */
     94  
             public static final String CVE_MODIFIED_12_URL = "cve.url-1.2.modified";
     95  
             /**
     96  
              * The properties key for the URL to retrieve the recently modified and
     97  
              * added CVE entries (last 8 days).
     98  
              */
     99  
             public static final String CVE_MODIFIED_VALID_FOR_DAYS = "cve.url.modified.validfordays";
     100  
             /**
     101  
              * The properties key for the telling us how many cvr.url.* URLs exists.
     102  
              * This is used in combination with CVE_BASE_URL to be able to retrieve
     103  
              * the URLs for all of the files that make up the NVD CVE listing.
     104  
              */
     105  
             public static final String CVE_START_YEAR = "cve.startyear";
     106  
             /**
     107  
              * The properties key for the CVE schema version 1.2.
     108  
              */
     109  
             public static final String CVE_SCHEMA_1_2 = "cve.url-1.2.base";
     110  
             /**
     111  
              * The properties key for the CVE schema version 2.0.
     112  
              */
     113  
             public static final String CVE_SCHEMA_2_0 = "cve.url-2.0.base";
     114  
             /**
     115  
              * The properties key for the proxy url.
     116  
              */
     117  
             public static final String PROXY_URL = "proxy.url";
     118  
             /**
     119  
              * The properties key for the proxy port - this must be an integer
     120  
              * value.
     121  
              */
     122  
             public static final String PROXY_PORT = "proxy.port";
     123  
             /**
     124  
              * The properties key for the proxy username.
     125  
              */
     126  
             public static final String PROXY_USERNAME = "proxy.username";
     127  
             /**
     128  
              * The properties key for the proxy password.
     129  
              */
     130  
             public static final String PROXY_PASSWORD = "proxy.password";
     131  
             /**
     132  
              * The properties key for the connection timeout.
     133  
              */
     134  
             public static final String CONNECTION_TIMEOUT = "connection.timeout";
     135  
             /**
     136  
              * The location of the temporary directory.
     137  
              */
     138  
             public static final String TEMP_DIRECTORY = "temp.directory";
     139  
             /**
     140  
              * The maximum number of threads to allocate when downloading files.
     141  
              */
     142  
             public static final String MAX_DOWNLOAD_THREAD_POOL_SIZE = "max.download.threads";
     143  
             /**
     144  
              * The key for a list of suppression files.
     145  
              */
     146  
             public static final String SUPPRESSION_FILE = "suppression.file";
     147  
         }
     148  
         /**
     149  
          * The properties file location.
     150  
          */
     151  
         private static final String PROPERTIES_FILE = "dependencycheck.properties";
     152  
         /**
     153  
          * The singleton instance variable.
     154  
          */
     155  1
         private static final Settings INSTANCE = new Settings();
     156  
         /**
     157  
          * The properties.
     158  
          */
     159  1
         private Properties props = null;
     160  
     
     161  
         /**
     162  
          * Private constructor for the Settings class. This class loads the
     163  
          * properties files.
     164  
          */
     165  1
         private Settings() {
     166  1
             InputStream in = null;
     167  1
             props = new Properties();
     168  
             try {
     169  1
                 in = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
     170  1
                 props.load(in);
     171  0
             } catch (IOException ex) {
     172  0
                 Logger.getLogger(Settings.class.getName()).log(Level.SEVERE, "Unable to load default settings.");
     173  0
                 Logger.getLogger(Settings.class.getName()).log(Level.FINE, null, ex);
     174  
             } finally {
     175  1
                 if (in != null) {
     176  
                     try {
     177  1
                         in.close();
     178  0
                     } catch (IOException ex) {
     179  0
                         Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
     180  1
                     }
     181  
                 }
     182  
             }
     183  1
         }
     184  
     
     185  
         /**
     186  
          * Sets a property value.
     187  
          *
     188  
          * @param key the key for the property
     189  
          * @param value the value for the property
     190  
          */
     191  
         public static void setString(String key, String value) {
     192  17
             INSTANCE.props.setProperty(key, value);
     193  17
         }
     194  
     
     195  
         /**
     196  
          * Sets a property value.
     197  
          *
     198  
          * @param key the key for the property
     199  
          * @param value the value for the property
     200  
          */
     201  
         public static void setBoolean(String key, boolean value) {
     202  5
             if (value) {
     203  0
                 INSTANCE.props.setProperty(key, Boolean.TRUE.toString());
     204  
             } else {
     205  5
                 INSTANCE.props.setProperty(key, Boolean.FALSE.toString());
     206  
             }
     207  5
         }
     208  
     
     209  
         /**
     210  
          * Merges a new properties file into the current properties. This method
     211  
          * allows for the loading of a user provided properties file.<br/><br/>
     212  
          * Note: even if using this method - system properties will be loaded before
     213  
          * properties loaded from files.
     214  
          *
     215  
          * @param filePath the path to the properties file to merge.
     216  
          * @throws FileNotFoundException is thrown when the filePath points to a
     217  
          * non-existent file
     218  
          * @throws IOException is thrown when there is an exception loading/merging
     219  
          * the properties
     220  
          */
     221  
         public static void mergeProperties(File filePath) throws FileNotFoundException, IOException {
     222  0
             final FileInputStream fis = new FileInputStream(filePath);
     223  0
             mergeProperties(fis);
     224  0
         }
     225  
     
     226  
         /**
     227  
          * Merges a new properties file into the current properties. This method
     228  
          * allows for the loading of a user provided properties file.<br/><br/>
     229  
          * Note: even if using this method - system properties will be loaded before
     230  
          * properties loaded from files.
     231  
          *
     232  
          * @param filePath the path to the properties file to merge.
     233  
          * @throws FileNotFoundException is thrown when the filePath points to a
     234  
          * non-existent file
     235  
          * @throws IOException is thrown when there is an exception loading/merging
     236  
          * the properties
     237  
          */
     238  
         public static void mergeProperties(String filePath) throws FileNotFoundException, IOException {
     239  1
             final FileInputStream fis = new FileInputStream(filePath);
     240  1
             mergeProperties(fis);
     241  1
         }
     242  
     
     243  
         /**
     244  
          * Merges a new properties file into the current properties. This method
     245  
          * allows for the loading of a user provided properties file.<br/><br/>
     246  
          * Note: even if using this method - system properties will be loaded before
     247  
          * properties loaded from files.
     248  
          *
     249  
          * @param stream an Input Stream pointing at a properties file to merge
     250  
          * @throws IOException is thrown when there is an exception loading/merging
     251  
          * the properties
     252  
          */
     253  
         public static void mergeProperties(InputStream stream) throws IOException {
     254  1
             INSTANCE.props.load(stream);
     255  1
         }
     256  
     
     257  
         /**
     258  
          * Returns a value from the properties file as a File object. If the value
     259  
          * was specified as a system property or passed in via the -Dprop=value
     260  
          * argument - this method will return the value from the system properties
     261  
          * before the values in the contained configuration file.
     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  6
             final String file = getString(key);
     268  6
             if (file == null) {
     269  6
                 return null;
     270  
             }
     271  0
             return new File(file);
     272  
         }
     273  
     
     274  
         /**
     275  
          * Returns a value from the properties file as a File object. If the value
     276  
          * was specified as a system property or passed in via the -Dprop=value
     277  
          * argument - this method will return the value from the system properties
     278  
          * before the values in the contained configuration file.
     279  
          *
     280  
          * This method will check the configured base directory and will use this as
     281  
          * the base of the file path. Additionally, if the base directory begins
     282  
          * with a leading "[JAR]\" sequence with the path to the folder containing
     283  
          * the JAR file containing this class.
     284  
          *
     285  
          * @param key the key to lookup within the properties file
     286  
          * @return the property from the properties file converted to a File object
     287  
          */
     288  
         public static File getDataFile(String key) {
     289  60
             final String file = getString(key);
     290  60
             final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);
     291  60
             if (baseDir != null) {
     292  60
                 if (baseDir.startsWith("[JAR]/")) {
     293  0
                     final File jarPath = getJarPath();
     294  0
                     final File newBase = new File(jarPath, baseDir.substring(6));
     295  0
                     if (Settings.KEYS.DATA_DIRECTORY.equals(key)) {
     296  0
                         return newBase;
     297  
                     }
     298  0
                     return new File(newBase, file);
     299  
                 }
     300  60
                 if (Settings.KEYS.DATA_DIRECTORY.equals(key)) {
     301  34
                     return new File(baseDir);
     302  
                 }
     303  26
                 return new File(baseDir, file);
     304  
             }
     305  0
             return new File(file);
     306  
         }
     307  
     
     308  
         /**
     309  
          * Attempts to retrieve the folder containing the Jar file containing the
     310  
          * Settings class.
     311  
          *
     312  
          * @return a File object
     313  
          */
     314  
         private static File getJarPath() {
     315  0
             final String jarPath = Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath();
     316  0
             String decodedPath = ".";
     317  
             try {
     318  0
                 decodedPath = URLDecoder.decode(jarPath, "UTF-8");
     319  0
             } catch (UnsupportedEncodingException ex) {
     320  0
                 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
     321  0
             }
     322  
     
     323  0
             final File path = new File(decodedPath);
     324  0
             if (path.getName().toLowerCase().endsWith(".jar")) {
     325  0
                 return path.getParentFile();
     326  
             } else {
     327  0
                 return new File(".");
     328  
             }
     329  
         }
     330  
     
     331  
         /**
     332  
          * Returns a value from the properties file. If the value was specified as a
     333  
          * system property or passed in via the -Dprop=value argument - this method
     334  
          * will return the value from the system properties before the values in the
     335  
          * contained configuration file.
     336  
          *
     337  
          * @param key the key to lookup within the properties file
     338  
          * @param defaultValue the default value for the requested property
     339  
          * @return the property from the properties file
     340  
          */
     341  
         public static String getString(String key, String defaultValue) {
     342  26
             final String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue));
     343  26
             return str;
     344  
         }
     345  
     
     346  
         /**
     347  
          * Returns the temporary directory.
     348  
          *
     349  
          * @return the temporary directory
     350  
          */
     351  
         public static File getTempDirectory() {
     352  11
             return new File(Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty("java.io.tmpdir")));
     353  
         }
     354  
     
     355  
         /**
     356  
          * Returns a value from the properties file. If the value was specified as a
     357  
          * system property or passed in via the -Dprop=value argument - this method
     358  
          * will return the value from the system properties before the values in the
     359  
          * contained configuration file.
     360  
          *
     361  
          * @param key the key to lookup within the properties file
     362  
          * @return the property from the properties file
     363  
          */
     364  
         public static String getString(String key) {
     365  152
             return System.getProperty(key, INSTANCE.props.getProperty(key));
     366  
         }
     367  
     
     368  
         /**
     369  
          * Removes a property from the local properties collection. This is mainly
     370  
          * used in test cases.
     371  
          *
     372  
          * @param key the property key to remove
     373  
          */
     374  
         public static void removeProperty(String key) {
     375  1
             INSTANCE.props.remove(key);
     376  1
         }
     377  
     
     378  
         /**
     379  
          * Returns an int value from the properties file. If the value was specified
     380  
          * as a system property or passed in via the -Dprop=value argument - this
     381  
          * method will return the value from the system properties before the values
     382  
          * in the contained configuration file.
     383  
          *
     384  
          * @param key the key to lookup within the properties file
     385  
          * @return the property from the properties file
     386  
          * @throws InvalidSettingException is thrown if there is an error retrieving
     387  
          * the setting
     388  
          */
     389  
         public static int getInt(String key) throws InvalidSettingException {
     390  
             int value;
     391  
             try {
     392  1
                 value = Integer.parseInt(Settings.getString(key));
     393  0
             } catch (NumberFormatException ex) {
     394  0
                 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
     395  1
             }
     396  1
             return value;
     397  
         }
     398  
     
     399  
         /**
     400  
          * Returns an int value from the properties file. If the value was specified
     401  
          * as a system property or passed in via the -Dprop=value argument - this
     402  
          * method will return the value from the system properties before the values
     403  
          * in the contained configuration file.
     404  
          *
     405  
          * @param key the key to lookup within the properties file
     406  
          * @param defaultValue the default value to return
     407  
          * @return the property from the properties file or the defaultValue if the
     408  
          * property does not exist or cannot be converted to an integer
     409  
          */
     410  
         public static int getInt(String key, int defaultValue) {
     411  
             int value;
     412  
             try {
     413  1
                 value = Integer.parseInt(Settings.getString(key));
     414  1
             } catch (NumberFormatException ex) {
     415  1
                 final String msg = String.format("Could not convert property '%s' to an int.", key);
     416  1
                 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, msg, ex);
     417  1
                 value = defaultValue;
     418  0
             }
     419  1
             return value;
     420  
         }
     421  
     
     422  
         /**
     423  
          * Returns a long value from the properties file. If the value was specified
     424  
          * as a system property or passed in via the -Dprop=value argument - this
     425  
          * method will return the value from the system properties before the values
     426  
          * in the contained configuration 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 long getLong(String key) throws InvalidSettingException {
     434  
             long value;
     435  
             try {
     436  1
                 value = Long.parseLong(Settings.getString(key));
     437  0
             } catch (NumberFormatException ex) {
     438  0
                 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
     439  1
             }
     440  1
             return value;
     441  
         }
     442  
     
     443  
         /**
     444  
          * Returns a boolean value from the properties file. If the value was
     445  
          * specified as a system property or passed in via the
     446  
          * <code>-Dprop=value</code> argument this method will return the value from
     447  
          * the system properties before the values in the contained configuration
     448  
          * file.
     449  
          *
     450  
          * @param key the key to lookup within the properties file
     451  
          * @return the property from the properties file
     452  
          * @throws InvalidSettingException is thrown if there is an error retrieving
     453  
          * the setting
     454  
          */
     455  
         public static boolean getBoolean(String key) throws InvalidSettingException {
     456  
             boolean value;
     457  
             try {
     458  7
                 value = Boolean.parseBoolean(Settings.getString(key));
     459  0
             } catch (NumberFormatException ex) {
     460  0
                 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
     461  7
             }
     462  7
             return value;
     463  
         }
     464  
     }
    + + + + diff --git a/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html new file mode 100644 index 000000000..7a9161525 --- /dev/null +++ b/css/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html @@ -0,0 +1,225 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.UrlStringUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UrlStringUtils
    82%
    19/23
    75%
    9/12
    2.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.utils;
     20  
     
     21  
     import java.net.MalformedURLException;
     22  
     import java.net.URL;
     23  
     import java.util.ArrayList;
     24  
     import java.util.Arrays;
     25  
     import java.util.HashSet;
     26  
     import java.util.List;
     27  
     import java.util.regex.Pattern;
     28  
     
     29  
     /**
     30  
      *
     31  
      * @author Jeremy Long (jeremy.long@owasp.org)
     32  
      */
     33  
     public final class UrlStringUtils {
     34  
     
     35  
         /**
     36  
          * Private constructor for a utility class.
     37  
          */
     38  0
         private UrlStringUtils() {
     39  0
         }
     40  
         /**
     41  
          * A regular expression to test if a string contains a URL.
     42  
          */
     43  1
         private static final Pattern CONTAINS_URL_TEST = Pattern.compile("^.*(ht|f)tps?://.*$", Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
     44  
         /**
     45  
          * A regular expression to test if a string is a URL.
     46  
          */
     47  1
         private static final Pattern IS_URL_TEST = Pattern.compile("^(ht|f)tps?://.*", Pattern.CASE_INSENSITIVE);
     48  
     
     49  
         /**
     50  
          * Tests if the text provided contains a URL. This is somewhat limited
     51  
          * search in that it only looks for (ftp|http|https)://
     52  
          *
     53  
          * @param text the text to search
     54  
          * @return true if the text contains a url, otherwise false
     55  
          */
     56  
         public static boolean containsUrl(String text) {
     57  21169
             return CONTAINS_URL_TEST.matcher(text).matches();
     58  
         }
     59  
     
     60  
         /**
     61  
          * Tests if the given text is url.
     62  
          *
     63  
          * @param text the string to test
     64  
          * @return returns true if the text is a url, otherwise false
     65  
          */
     66  
         public static boolean isUrl(String text) {
     67  135
             return IS_URL_TEST.matcher(text).matches();
     68  
         }
     69  
         /**
     70  
          * A listing of domain parts that shold not be used as evidence. Yes, this
     71  
          * is an incomplete list.
     72  
          */
     73  1
         private static final HashSet<String> IGNORE_LIST = new HashSet<String>(
     74  
                 Arrays.asList("www", "com", "org", "gov", "info", "name", "net", "pro", "tel", "mobi", "xxx"));
     75  
     
     76  
         /**
     77  
          * <p>Takes a URL, in String format, and adds the important parts of the URL
     78  
          * to a list of strings.</p>
     79  
          * <p>Example, given the following input:</p>
     80  
          * <code>"https://www.somedomain.com/path1/path2/file.php?id=439"</code>
     81  
          * <p>The function would return:</p>
     82  
          * <code>{"somedomain", "path1", "path2", "file"}</code>
     83  
          *
     84  
          * @param text a URL
     85  
          * @return importantParts a list of the important parts of the URL
     86  
          * @throws MalformedURLException thrown if the URL is malformed
     87  
          */
     88  
         public static List<String> extractImportantUrlData(String text) throws MalformedURLException {
     89  135
             final ArrayList<String> importantParts = new ArrayList<String>();
     90  135
             final URL url = new URL(text);
     91  135
             final String[] domain = url.getHost().split("\\.");
     92  
             //add the domain except www and the tld.
     93  404
             for (int i = 0; i < domain.length - 1; i++) {
     94  269
                 final String sub = domain[i];
     95  269
                 if (!IGNORE_LIST.contains(sub.toLowerCase())) {
     96  185
                     importantParts.add(sub);
     97  
                 }
     98  
             }
     99  135
             final String document = url.getPath();
     100  135
             final String[] pathParts = document.split("[\\//]");
     101  135
             for (int i = 0; i < pathParts.length - 2; i++) {
     102  0
                 if (!pathParts[i].isEmpty()) {
     103  0
                     importantParts.add(pathParts[i]);
     104  
                 }
     105  
             }
     106  135
             if (pathParts.length > 0 && !pathParts[pathParts.length - 1].isEmpty()) {
     107  47
                 final String fileNameNoExt = pathParts[pathParts.length - 1].replaceAll("\\..*{0,5}$", "");
     108  47
                 importantParts.add(fileNameNoExt);
     109  
             }
     110  135
             return importantParts;
     111  
         }
     112  
     }
    + + + + diff --git a/css/dependency-check-core/cpd.html b/css/dependency-check-core/cpd.html new file mode 100644 index 000000000..7036f40b6 --- /dev/null +++ b/css/dependency-check-core/cpd.html @@ -0,0 +1,243 @@ + + + + + + + + + dependency-check-core - CPD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    CPD Results

    +

    The following document contains the results of PMD's CPD 5.0.2.

    +
    +

    Duplications

    +

    CPD found no problems in your source code.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/css/apache-maven-fluido-1.3.0.min.css b/css/dependency-check-core/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/css/dependency-check-core/css/apache-maven-fluido-1.3.0.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.1.0 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:20px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:1;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1{font-size:36px;line-height:40px}h2{font-size:30px;line-height:40px}h3{font-size:24px;line-height:40px}h4{font-size:18px;line-height:20px}h5{font-size:14px;line-height:20px}h6{font-size:12px;line-height:20px}h1 small{font-size:24px}h2 small{font-size:18px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal dt{float:left;width:120px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:130px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:9px;font-size:14px;line-height:20px;color:#555;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}input,textarea{width:210px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #bbb}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:18px;padding-left:18px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-18px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"]{float:left}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;font-size:14px;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{margin-left:-1px;vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:160px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:160px}.form-horizontal .help-block{margin-top:10px;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-right-topleft:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table [class*=span],.row-fluid table [class*=span]{display:table-cell;float:none;margin-left:0}table .span1{float:none;width:44px;margin-left:0}table .span2{float:none;width:124px;margin-left:0}table .span3{float:none;width:204px;margin-left:0}table .span4{float:none;width:284px;margin-left:0}table .span5{float:none;width:364px;margin-left:0}table .span6{float:none;width:444px;margin-left:0}table .span7{float:none;width:524px;margin-left:0}table .span8{float:none;width:604px;margin-left:0}table .span9{float:none;width:684px;margin-left:0}table .span10{float:none;width:764px;margin-left:0}table .span11{float:none;width:844px;margin-left:0}table .span12{float:none;width:924px;margin-left:0}table .span13{float:none;width:1004px;margin-left:0}table .span14{float:none;width:1084px;margin-left:0}table .span15{float:none;width:1164px;margin-left:0}table .span16{float:none;width:1244px;margin-left:0}table .span17{float:none;width:1324px;margin-left:0}table .span18{float:none;width:1404px;margin-left:0}table .span19{float:none;width:1484px;margin-left:0}table .span20{float:none;width:1564px;margin-left:0}table .span21{float:none;width:1644px;margin-left:0}table .span22{float:none;width:1724px;margin-left:0}table .span23{float:none;width:1804px;margin-left:0}table .span24{float:none;width:1884px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.info td{background-color:#d9edf7}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav>.active>a>[class^="icon-"],.nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:linear-gradient(to bottom,#08c,#0077b3);background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover .dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;overflow:visible \9;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 14px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:9px 14px;font-size:16px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.btn-large [class^="icon-"]{margin-top:2px}.btn-small{padding:3px 9px;font-size:12px;line-height:18px}.btn-small [class^="icon-"]{margin-top:0}.btn-mini{padding:2px 6px;font-size:11px;line-height:16px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-image:-moz-linear-gradient(top,#08c,#04c);background-repeat:repeat-x;border-color:#04c #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-image:-moz-linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-image:-moz-linear-gradient(top,#444,#222);background-repeat:repeat-x;border-color:#222 #222222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-group{position:relative;*margin-left:.3em;font-size:0;white-space:nowrap}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn-group{display:inline-block;*display:inline;*zoom:1}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-top:0;border-bottom:5px solid #000}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eeeeee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #dddddd #eee #eeeeee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eeeeee #eee #dddddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#555}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar .container{width:auto}.nav-collapse.collapse{height:auto}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#555;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#555}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:6px}.navbar .btn-group .btn{margin:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;width:100%;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner,.navbar-static-top .navbar-inner{border:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#555;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-image:-moz-linear-gradient(top,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{height:40px;margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination li{display:inline}.pagination a,.pagination span{float:left;padding:0 14px;line-height:38px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination a:hover,.pagination .active a,.pagination .active span{background-color:#f5f5f5}.pagination .active a,.pagination .active span{color:#999;cursor:default}.pagination .disabled span,.pagination .disabled a,.pagination .disabled a:hover{color:#999;cursor:default;background-color:transparent}.pagination li:first-child a,.pagination li:first-child span{border-left-width:1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.pagination li:last-child a,.pagination li:last-child span{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager a{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next a{float:right}.pager .previous a{float:left}.pager .disabled a,.pager .disabled a:hover{color:#999;cursor:default;background-color:#fff}.modal-open .dropdown-menu{z-index:2050}.modal-open .dropdown.open{*z-index:2050}.modal-open .popover{z-index:2060}.modal-open .tooltip{z-index:2080}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;overflow:auto;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-bottom:10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-right:10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.label,.badge{font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{padding:1px 4px 2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding:1px 9px 2px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit p{font-size:18px;font-weight:200;line-height:30px;color:inherit}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}.clear{clear:both;visibility:hidden}.clear hr{display:none}.section p,.section p,.section dt,.section dt{margin-right:7px;margin-left:7px}#ohloh{margin-bottom:10px}#poweredBy{text-align:center}a.externalLink{background:url('../images/external.png') right center no-repeat;padding-right:18px}a.newWindow{background:url('../images/window-new.png') right center no-repeat;padding-right:18px}a.externalLink[href^=http]{background:url('../images/internet-web-browser.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".asc"]{background:url('../images/accessories-text-editor.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".jpg"],a.externalLink[href$=".jpeg"],a.externalLink[href$=".gif"],a.externalLink[href$=".png"]{background:url('../images/image-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".tar.gz"],a.externalLink[href$=".zip"]{background:url('../images/package-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".md5"],a.externalLink[href$=".sha1"]{background:url('../images/document-properties.png') right center no-repeat;padding-right:18px}a.externalLink[href^=https]{background:url('../images/application-certificate.png') right center no-repeat;padding-right:18px}a.externalLink[href^=file]{background:url('../images/drive-harddisk.png') right center no-repeat;padding-right:18px}a.externalLink[href^=ftp]{background:url('../images/network-server.png') right center no-repeat;padding-right:18px}a.externalLink[href^=mailto]{background:url('../images/contact-new.png') right center no-repeat;padding-right:18px}li.none{list-style:none}.search-query{background-image:url(http://www.google.com/cse/intl/en/images/google_custom_search_watermark.gif);background-attachment:initial;background-origin:initial;background-clip:initial;background-color:#fff;background-position:0 50%;background-repeat:no-repeat no-repeat;width:95%}body.topBarEnabled{padding-top:60px}body.topBarDisabled{padding-top:20px}.builtBy{display:block}img.builtBy{margin:10px auto}#search-form{margin-left:9px;margin-right:9px}.hero-unit h2{font-size:60px}tt{padding:0 3px 2px;font-family:Monaco,Andale Mono,Courier New,monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#fee9cc;color:rgba(0,0,0,0.75);padding:1px 3px}li{color:#404040}table.zebra-striped{background-color:#FFF}.footer{background-color:#EEE}.sidebar-nav{padding-left:0;padding-right:0}.sidebar-nav .icon-chevron-right,.sidebar-nav .icon-chevron-down{margin-top:2px;margin-right:-6px;float:right;opacity:.25}.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0;padding-left:15px}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/css/dependency-check-core/css/print.css b/css/dependency-check-core/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/css/dependency-check-core/css/print.css @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/* $Id: print.css 1201871 2011-11-14 20:18:24Z simonetripodi $ */ + +#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/css/dependency-check-core/css/site.css b/css/dependency-check-core/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/css/dependency-check-core/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/css/dependency-check-core/dependency-updates-report.html b/css/dependency-check-core/dependency-updates-report.html new file mode 100644 index 000000000..edb9b07db --- /dev/null +++ b/css/dependency-check-core/dependency-updates-report.html @@ -0,0 +1,1245 @@ + + + + + + + + + dependency-check-core - Dependency Updates Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This report summarizes newer versions that may be available for your project's various dependencies.

    + + + + + + + + + + + + + + + + + + + + +
    # of dependencies using the latest version available8
    # of dependencies where the next version available is smaller than an incremental version update1
    # of dependencies where the next version available is an incremental version update7
    # of dependencies where the next version available is a minor version update9
    # of dependencies where the next version available is a major version update0
    +
    +

    Dependency Management

    +

    This project does not declare any dependencies in a dependencyManagement section.

    +
    +

    Dependencies

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    com.google.code.findbugsannotations2.0.1compilejar2.0.2
    com.h2databaseh21.3.172compilejar1.3.173
    com.hazelcasthazelcast2.5providedjar2.5.12.63.0
    commons-clicommons-cli1.2compilejar
    commons-iocommons-io2.4compilejar
    commons-langcommons-lang2.5compilejar2.6
    junitjunit4.11testjar
    net.sf.ehcacheehcache-core2.2.0providedjar2.3.0
    org.apache.axis2axis2-adb1.4.1providedjar1.5
    org.apache.axis2axis2-spring1.4.1providedjar1.5
    org.apache.commonscommons-compress1.5compilejar1.6
    org.apache.geronimo.daytraderdaytrader-ear2.1.7providedear
    org.apache.lucenelucene-analyzers-common4.5.1compilejar4.6.0
    org.apache.lucenelucene-core4.5.1compilejar4.6.0
    org.apache.lucenelucene-queryparser4.5.1compilejar4.6.0
    org.apache.lucenelucene-test-framework4.3.1testjar4.4.0
    org.apache.maven.scmmaven-scm-provider-cvsexe1.8.1providedjar
    org.apache.strutsstruts2-core2.1.2providedjar2.1.62.2.1
    org.apache.velocityvelocity1.7compilejar
    org.apache.velocityvelocity-tools2.0compilejar
    org.dojotoolkitdojo-war1.3.0providedwar1.3.11.4.2
    org.glassfish.main.adminguiwar4.0providedwar
    org.jsoupjsoup1.7.2compilejar1.7.3
    org.mortbay.jettyjetty6.1.0providedjar6.1H.226.1.17
    org.springframeworkspring-webmvc2.5.5providedjar2.5.63.0.0.RELEASE
    StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

    Dependency Updates

    +

    +
    +

    com.google.code.findbugs:annotations

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idcom.google.code.findbugs
    Artifact Idannotations
    Current Version2.0.1
    Scopecompile
    Classifier
    Typejar
    Newer versions2.0.2 Next Incremental
    +
    +

    com.h2database:h2

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idcom.h2database
    Artifact Idh2
    Current Version1.3.172
    Scopecompile
    Classifier
    Typejar
    Newer versions1.3.173 Next Incremental
    1.3.174 Latest Incremental
    +
    +

    com.hazelcast:hazelcast

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idcom.hazelcast
    Artifact Idhazelcast
    Current Version2.5
    Scopeprovided
    Classifier
    Typejar
    Newer versions2.5.1 Next Incremental
    2.6 Next Minor
    2.6.1
    2.6.2
    2.6.3
    2.6.4
    2.6.5
    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
    3.1.2 Latest Major
    +
    +

    commons-cli:commons-cli

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idcommons-cli
    Artifact Idcommons-cli
    Current Version1.2
    Scopecompile
    Classifier
    Typejar
    +
    +

    commons-io:commons-io

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idcommons-io
    Artifact Idcommons-io
    Current Version2.4
    Scopecompile
    Classifier
    Typejar
    +
    +

    commons-lang:commons-lang

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idcommons-lang
    Artifact Idcommons-lang
    Current Version2.5
    Scopecompile
    Classifier
    Typejar
    Newer versions2.6 Next Minor
    +
    +

    junit:junit

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idjunit
    Artifact Idjunit
    Current Version4.11
    Scopetest
    Classifier
    Typejar
    +
    +

    net.sf.ehcache:ehcache-core

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idnet.sf.ehcache
    Artifact Idehcache-core
    Current Version2.2.0
    Scopeprovided
    Classifier
    Typejar
    Newer versions2.3.0 Next Minor
    2.3.1
    2.3.2
    2.3.3
    2.4.0
    2.4.1
    2.4.2
    2.4.3
    2.4.4
    2.4.5
    2.4.6
    2.4.7
    2.4.8
    2.5.0
    2.5.1
    2.5.2
    2.5.3
    2.5.4
    2.5.5
    2.5.6
    2.5.7
    2.6.0
    2.6.2
    2.6.3
    2.6.5
    2.6.6 Latest Minor
    +
    +

    org.apache.axis2:axis2-adb

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.axis2
    Artifact Idaxis2-adb
    Current Version1.4.1
    Scopeprovided
    Classifier
    Typejar
    Newer versions1.5 Next Minor
    1.5.1
    1.5.2
    1.5.3
    1.5.4
    1.5.5
    1.5.6
    1.6.0
    1.6.1
    1.6.2 Latest Minor
    +
    +

    org.apache.axis2:axis2-spring

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.axis2
    Artifact Idaxis2-spring
    Current Version1.4.1
    Scopeprovided
    Classifier
    Typejar
    Newer versions1.5 Next Minor
    1.5.1
    1.5.2
    1.5.3
    1.5.4
    1.5.5
    1.5.6
    1.6.0
    1.6.1
    1.6.2 Latest Minor
    +
    +

    org.apache.commons:commons-compress

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.commons
    Artifact Idcommons-compress
    Current Version1.5
    Scopecompile
    Classifier
    Typejar
    Newer versions1.6 Next Minor
    +
    +

    org.apache.geronimo.daytrader:daytrader-ear

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.geronimo.daytrader
    Artifact Iddaytrader-ear
    Current Version2.1.7
    Scopeprovided
    Classifier
    Typeear
    +
    +

    org.apache.lucene:lucene-analyzers-common

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.lucene
    Artifact Idlucene-analyzers-common
    Current Version4.5.1
    Scopecompile
    Classifier
    Typejar
    Newer versions4.6.0 Next Minor
    +
    +

    org.apache.lucene:lucene-core

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.lucene
    Artifact Idlucene-core
    Current Version4.5.1
    Scopecompile
    Classifier
    Typejar
    Newer versions4.6.0 Next Minor
    +
    +

    org.apache.lucene:lucene-queryparser

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.lucene
    Artifact Idlucene-queryparser
    Current Version4.5.1
    Scopecompile
    Classifier
    Typejar
    Newer versions4.6.0 Next Minor
    +
    +

    org.apache.lucene:lucene-test-framework

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.lucene
    Artifact Idlucene-test-framework
    Current Version4.3.1
    Scopetest
    Classifier
    Typejar
    Newer versions4.4.0 Next Minor
    4.5.0
    4.5.1
    4.6.0 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.scm
    Artifact Idmaven-scm-provider-cvsexe
    Current Version1.8.1
    Scopeprovided
    Classifier
    Typejar
    +
    +

    org.apache.struts:struts2-core

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.struts
    Artifact Idstruts2-core
    Current Version2.1.2
    Scopeprovided
    Classifier
    Typejar
    Newer versions2.1.6 Next Incremental
    2.1.8
    2.1.8.1 Latest Incremental
    2.2.1 Next Minor
    2.2.1.1
    2.2.3
    2.2.3.1
    2.3.1
    2.3.1.1
    2.3.1.2
    2.3.3
    2.3.4
    2.3.4.1
    2.3.7
    2.3.8
    2.3.12
    2.3.14
    2.3.14.1
    2.3.14.2
    2.3.14.3
    2.3.15
    2.3.15.1
    2.3.15.2
    2.3.15.3 Latest Minor
    +
    +

    org.apache.velocity:velocity

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.velocity
    Artifact Idvelocity
    Current Version1.7
    Scopecompile
    Classifier
    Typejar
    +
    +

    org.apache.velocity:velocity-tools

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.velocity
    Artifact Idvelocity-tools
    Current Version2.0
    Scopecompile
    Classifier
    Typejar
    +
    +

    org.dojotoolkit:dojo-war

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.dojotoolkit
    Artifact Iddojo-war
    Current Version1.3.0
    Scopeprovided
    Classifier
    Typewar
    Newer versions1.3.1 Next Incremental
    1.3.2 Latest Incremental
    1.4.2 Next Minor
    1.4.3
    1.5.0
    1.6.0
    1.6.1
    1.7.0
    1.7.1
    1.7.2
    1.8.0
    1.8.1
    1.8.2
    1.8.3
    1.9.0b2
    1.9.0
    1.9.1 Latest Minor
    +
    +

    org.glassfish.main.admingui:war

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.glassfish.main.admingui
    Artifact Idwar
    Current Version4.0
    Scopeprovided
    Classifier
    Typewar
    +
    +

    org.jsoup:jsoup

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.jsoup
    Artifact Idjsoup
    Current Version1.7.2
    Scopecompile
    Classifier
    Typejar
    Newer versions1.7.3 Next Incremental
    +
    +

    org.mortbay.jetty:jetty

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer version available.
    Group Idorg.mortbay.jetty
    Artifact Idjetty
    Current Version6.1.0
    Scopeprovided
    Classifier
    Typejar
    Newer versions6.1H.22 Next Version
    6.1.17 Next Incremental
    6.1.18
    6.1.19
    6.1.20
    6.1.21
    6.1.22
    6.1.23
    6.1.24
    6.1.25
    6.1.26RC0
    6.1.26 Latest Incremental
    +
    +

    org.springframework:spring-webmvc

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.springframework
    Artifact Idspring-webmvc
    Current Version2.5.5
    Scopeprovided
    Classifier
    Typejar
    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
    3.2.5.RELEASE Latest Major
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/failsafe-report.html b/css/dependency-check-core/failsafe-report.html new file mode 100644 index 000000000..e96486561 --- /dev/null +++ b/css/dependency-check-core/failsafe-report.html @@ -0,0 +1,423 @@ + + + + + + + + + dependency-check-core - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    6000100%315.529

    +

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


    +
    +

    Package List

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PackageTestsErrors FailuresSkippedSuccess RateTime
    org.owasp.dependencycheck1000100%176.186
    org.owasp.dependencycheck.utils2000100%3.221
    org.owasp.dependencycheck.data.update3000100%136.122

    +

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

    +
    +

    org.owasp.dependencycheck

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    EngineIntegrationTest1000100%176.186
    +
    +

    org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DownloaderIntegrationTest2000100%3.221
    +
    +

    org.owasp.dependencycheck.data.update

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DatabaseUpdaterIntegrationTest1000100%135.694
    StandardUpdateTaskIntegrationTest2000100%0.428

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    DatabaseUpdaterIntegrationTest

    + + + + +
    testUpdate135.694
    +
    +

    StandardUpdateTaskIntegrationTest

    + + + + + + + + +
    testUpdatesNeeded0.361
    testUpdate0.067
    +
    +

    EngineIntegrationTest

    + + + + +
    testScan176.186
    +
    +

    DownloaderIntegrationTest

    + + + + + + + + +
    testGetLastModified0.407
    testFetchFile2.814

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/findbugs.html b/css/dependency-check-core/findbugs.html new file mode 100644 index 000000000..f08ecd14c --- /dev/null +++ b/css/dependency-check-core/findbugs.html @@ -0,0 +1,376 @@ + + + + + + + + + dependency-check-core - FindBugs Bug Detector Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    FindBugs Bug Detector Report

    +

    The following document contains the results of FindBugs Report

    +

    FindBugs Version is 2.0.1

    +

    Threshold is medium

    +

    Effort is min

    +
    +

    Summary

    + + + + + + + + + + +
    ClassesBugsErrorsMissing Classes
    194800
    + +
    +

    org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer

    + + + + + + + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    Possible null pointer dereference of currentVersion in org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.removeSpuriousCPE(Dependency)CORRECTNESSNP_NULL_ON_SOME_PATH166Medium
    Possible null pointer dereference of nextVersion on branch that might be infeasible in org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.removeSpuriousCPE(Dependency)STYLENP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE166Medium
    +
    +

    org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer

    + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    Dead store to extractComments in org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.analyze(Dependency, Engine)STYLEDLS_DEAD_LOCAL_STORE99Medium
    +
    +

    org.owasp.dependencycheck.concurrency.DirectorySpinLock

    + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    exceptional return value of java.io.File.delete() ignored in org.owasp.dependencycheck.concurrency.DirectorySpinLock.close()BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE247Medium
    +
    +

    org.owasp.dependencycheck.data.nvdcve.CveDB

    + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    org.owasp.dependencycheck.data.nvdcve.CveDB.getVendorProductList() may fail to close PreparedStatementBAD_PRACTICEODR_OPEN_DATABASE_RESOURCE177Medium
    +
    +

    org.owasp.dependencycheck.utils.Downloader

    + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    Redundant nullcheck of conn which is known to be null in org.owasp.dependencycheck.utils.Downloader.getConnection(URL)STYLERCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE216Medium
    +
    +

    org.owasp.dependencycheck.utils.LogUtils

    + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    Changes to logger could be lost in org.owasp.dependencycheck.utils.LogUtils.prepareLogger(InputStream, String)EXPERIMENTALLG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE59High
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/images/accessories-text-editor.png b/css/dependency-check-core/images/accessories-text-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..abc3366edad864f1c06e1354c2f7cd0ee1f2a080 GIT binary patch literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z!(tV6XFWw9$CP!U~&MEL_-~2 zturUYuc~G2k7NQOAQwpPnVm8{M-46l)ZW(7+}_y&l!c=+t7L#iU0Nn~YlG3l-F|15 z@P0VoetaRz%cI#-`!i3iRywta^WbvRtIMVKukt^?RPfMZskwP_>zl3S&Y%79fJLFr)R5u{`~pcwQJ|jo!h;8_nch0Czn_4o{=~$Tdkui?!}82 zPoF-0^5jWpw9vyV8+S~Jn~|&5P#DqD)^z{={fV`486gG>yE10vs7-0jnK^T2duMA= zxOS1hU{#Kw#hCr%tWa%9@{DF+T5IJs^5$&)9i&zL%I{+xaL_HEjdBN!3HH6)q7{X9{`;59Zq8_K&a?NFvhbtJ!a#ML1s;*b3=G^r zHn%V%!>lqE9PESpH$neQx=aVO*B2%Y?K6$dU zvO@Al$kmjqrY2jrl%|w^{UQ0|3oj3EZ%?m}Pw82fGm<}abk?qEJm7ZynqNRiHh(Bgn?ad9p@g!lX0?hAY$6qZbCW z0lmYZTH+c}l9E`GYL#4+3Zxi}3=9o*fylrz#K6+Z#K6kbLfgR5%D~`Tz=gvo8glbf ZGSez?YiQ@qs0V6b@O1TaS?83{1OS^WRoMUl literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/add.gif b/css/dependency-check-core/images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..1cb3dbf936e38b5c5efdc3e247a042eb1b1d23e9 GIT binary patch literal 397 zcmV;80doFFNk%w1VGsZi0Hrwqfq{XHjC_`scb}hfo}Qksu4?V%HuUQ#_Ut72?;iT^ zBKq(m_wPpc?_K-yJooTv`tnWp@M`+UP{`_CX>@2HM@dakAa8CUVIWOmV*nxf1OW;FKL9KM0000G01yBG z28=)gU`QMW1_i@!3CKC0&ddYCI52ah&u7HtL@q0qBk^l$xg^p?lB(HEigIo{N|QVi z)(zKM$kAyhAQ&1iFcb)XbtESzDjgOT6Af33jV>-IB_SdLSAi#(F{3g$0H2JZE~KTW ra*U!eGBdQMSC^|Yvokcda+j>Uy{=7A#!jw6Max43OV7~J&_Mt@cAw$D literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/apache-maven-project-2.png b/css/dependency-check-core/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c096ec0c7d50ecca14e76dd49b1fcb9382c3d07 GIT binary patch literal 33442 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 AyZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/contact-new.png b/css/dependency-check-core/images/contact-new.png new file mode 100644 index 0000000000000000000000000000000000000000..ebc4316d844dea7c644b636a768348a4a105fefe GIT binary patch literal 736 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z~~#`6XFWw{(0&D=T+#RHwAw` z&Hnpo&YySH^B2wT=xUuXq4DDJ;vXMY{rmmm?~n68U)N8b+W+is-}IT2Cr_OKQ8Rn) zjLlm%?%28R-u1=5z8w7b_w%10wGpKB`?6U6pFe*dJ9ccrf(7f>ue)&m)R!-BCQRynbY{!R9*ZYy+@7p-UY@S-`Sa%w zA3nT)|NhsnUlS(vzIpp-Vt+(alI*llmi}Ot{8X*wt1GWuxpMjPD8G_FtAwYlM(@+7PjBA5dHwqJt5>i7{Q0y0(1MB6!uuu%PnZ(1WB07bk00N^ zfB)XSdp~~s0NV5M7AY?6_YmX)lQk*=z#qM@b= z;jzxa-qG&i{`U`D;5cDwW@u`>eZ!Vb+cs`xE_y2~Gk1<|Ow8SwyS5T3HhcHf*8Kf* zmx-x4rs2+m2^The=s2c1x z@?`Pi#gUPb%a$!mPfyRv%4%q+zjyD}h7B7sGBPqVGdnvwA3b_>`}XY_GiFp&ROIC3 zBqk>2=H`C-^y%l%pKss3eemGH!-o&gojcdo*4Ee8cjwNX^XJbmU%q_Jnl)d(e3_rK zQ5)znu96_XUAfnlM+?I*J`vNB)4cy(~cFE%!y3*C+dtm|AkbLP(0rAtI-WalPl zXQ#h^a3Yue>8TkOmX^DBoNC%>bIn0P>y;XJk*Kt_xlBQUk->(IhZxnF8MX%rzU~pe z)edx+YKdz^NlIc#s#S7PDv)9@GB7mM1tJ5>5Ccmq69X$#3vB~KD+7aX0T&LVXvob^ Z$xN%nt)ZPaqaLV%!PC{xWt~$(69B9}1)l%_ literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/drive-harddisk.png b/css/dependency-check-core/images/drive-harddisk.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ce475f83900cfe56bc5374932b5bf2ca4dbc8d GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zC&II^`xaJjPLr`yjcXv-mMOEp) zfB$~|{Q2qgr}E0uH*ep*0fM(c8pHz9pFVy1{{8!_SFc~e@M|D=_4?z-kMG~VfBN+4 z=g*&?JbCir!-ub5zrK9=^4G6l&z?Q|^5x6(=g-S4OG?X&9zTA3@7}!^FJ6?E7oReKBW~hUcb538A@(YtL-+^H_dcdDlJpJ=Y$-@O`Fz zG@0+R=gebQ3|6LQE_?ex(qMMck(v6_v=g$+AOFmI(3&Wse&EvEy!Sf~KCI~aV|0G{ zk1FrS2B$YEFiv@18F*(Wd((ez|EgADxttge3!oF5szM@4obz*YQ}ap~7&xwf_C2e8 zRrlN)FW64!{5l*E!$tK_0oAjM#0U}&fdLejY7 zI~FXQH)-jvha*6u#Df8X9ChYuY)a%k^~E2mDLxODNt zmCKi|T)zC|@uR1YAH8|~^39u9@7}$6_wMcc_wPP@0HXIFK79E6`SZ7LU%!9<{_EGT z|C9m6e^Smxsfi`2DGKG8B^e6tp1uJJ`FRS73ciWS42nNl7`Yhi8FUzc0OVr^w%h~r z3p{khINcN{dHm3sxp?^`71bH@yqi{KNeBh-JDpc0PP#ir~m)} literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/icon_error_sml.gif b/css/dependency-check-core/images/icon_error_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..12e9a01a930c8dfa20992254a9c2b19272d1d491 GIT binary patch literal 633 zcmZ?wbhEHb6krfwIF`;38Xg=L5fUB=M4=H;VNo&RafvaB$?-`k33&xMO~v8m6{R(` zl?_dGEv=0$ZA~rhO>G^`?Hw)coj}yu(b?MG)!Nb3($Ur0+1)m2a{u;z-^o)aPMJDs z`t(UNXHAo#m!w{g?@=WBc~Zm8X~W#g8u zo3?D*v~~ODZQHl}UT^n%gZ1x?R=+k`T;JBTW7oDFySD${^*eoz@Oc*hmRckzCZ2A(L+a%9{G7V>Fe>N z^XJe0KGXR7Y}4;^^*`^=|M7h0?^~=l4^&mpY`6;P-`9HR5qr6O1d8TwsR`3>b@UzlT;FtFnna2=nZ#cumG*CCfUXh`R z+r!d5z(O-R)XZE>lB1r*D>%&0R$Il*Mn_6Qf{%sS(JIbXUpX=*NJ;FP;1pg}V|6*} zv?MJFQE_3;iOj5Q?9#Ex;l6qz5+~F=Ii~BU9y&2WMUzuPiAOcCQYbJ`P)$^n_v8t~ IKm`VC0O`0&yZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/icon_help_sml.gif b/css/dependency-check-core/images/icon_help_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..aaf20e6eea4148fe8fbb09bdf4595eb98334fff6 GIT binary patch literal 1072 zcmZ?wbhEHb6krfwcs`v$!K+=-yF&?xd^(hUI+cApRs6bC{eh@k&A(ecpj#`rPbZ{T zHx!8a^g{b}!zSp5_v=SYG>n*N6g|Zlh+?Lg#7s4dnQRg})go?+MZ$E8gc;Te)2xza zS|`u4Ntxx4KG!L8zI)~z=dAgzISbu#7kcN-_sn1Ho4>%jXsJ)pQs3fbfo02sDpp2R zERC#K7E-k)vT8+i)$*{KwK3JpV{2AK)o)0wTb10nI<9$BO4FK@rnRX}Ym!%=V3`o!hfJHsy3|$nM;n-n}!oduvYb_N=~Lg}qy|`*#=hZ!es< zJAcyNg30?!r|d17cCdKb!IJ3*D`y_8n0>Tq?!mT&hdUP@>REWOXVJm#rN<{MJ>0+I z#FUlCrmQ_Pd;RIzn=UTca(=iaqXVV+mGGa zb@J}slehPtx^v*n-9zW@9lP}K#FZzfu01_{?di$u&(B2A zoI?4BMCM#(ZeZdNx5?S*;=#(TTgt)U(ejX?g-3ph&!#D=Y`v;IOgUFKENEgEY}K2& zbK&FTQ{0&t&PXaHI(LYby<^~<)WRug%f?Vsn9S(HDV}gdq)=(8*E}P}f0hC+DlA;` z)Ad{zHa+cG#KBxFQ?<#-BSSmll8aH3zyUtzf;|p9o6`Ijt8uE?Ni?%hQnAZc^O50L PaG-&a!$_HjgTWdA|E#c| literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/icon_info_sml.gif b/css/dependency-check-core/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..b776326703c341ce559f98f028bb92fe4c332a83 GIT binary patch literal 638 zcmZ?wbhEHb6krfwI99}9U|?WrY3AnUX5m?3;Z0M>*4P;bV`&8Ka zl-c-J*!q^)`BgduR5=D#I|r7#hSa%**1Lx{c!gJaL^OLwwt7Xic}F+L#o2`7dnmC(1Rt2?c3!lt^38_VY&t(beHXZDWXIXh-7+1tM2%&evRR;+4S zwr0k}b!V5aoiTgei6v_fuiiLg?#^pV_uW{w@5aglH&-3Jx&6@9oky;1J$7sB@!MNZ zJveyg`hg3N4_$b0@Y0i`mmVIv{N(WECzr2oIC}Nz@oP^{UVDDw>Vp&4U!1=A;>^t# zmu@{ecl+ht`>QY9eSP`<>nji5TzT;J+QYXu9=*N!_}$}YyB<7!`{3D|d(S`KfBxyw z^Y`~(e0uQm)1z0PU%x&0;{BHw@4vo%|K;_EudhFRd-L)8=Wi$9eg5(O^Y^bmPJRCV z>&y3FUw{1i{`2>*-+zDo`TOV3-~U7d#ecdQ$(jmA1_mYyUWwVINeaOwshN4HMO<9Y zMX8A;sVNHOnI#ztAsML(?w-B@42nNl7`Yhg8FUzc02GM~?5i5;o0>S;m|56)n!B60 zjgkxVVs!X>ns_~P6XU}IL#+gR_>6Khb5di2o!vBrx&@MxvJ29p102vbQyButm$y)r=@GSbQ7fuf zG&hu(RxhgI;Nx!Xk#a$OMKhbYL0W}^MFz8kslSGfx4@b6vWfA)m`-W&brNWq_@1%Hm^{yEe1`?BYsvn_wmHvhTm`R8WJ@7psnMoCG5mA-y?dAS}$C^BFZzMd3&ORu3u6b1u&a%gnW4I(EOT#*fRVX@ zj=Hjv*wR)(6J1pWB^l0kHf~;N6*);RcGfnA&uq+0JK1LSU+Ld<{2%8ZVGags09itc As{jB1 literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/icon_warning_sml.gif b/css/dependency-check-core/images/icon_warning_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac6ad6ada39ea693ac0500810196fe551833b2d0 GIT binary patch literal 625 zcmZ?wbhEHb6krfwI99~a)zjYH+tJh8+1uaM2SgLPCr;{|FsXOac1bJ1)uHC+K>&~59ckkZ5d-v|2$A0(j-F^3{>(7(0`}gnuc^UfX z@x#ZDA3c8Z_|NN&Cy&7yo%%@b}sNzt0Z-eYxt-yV^f*C;fTf`1eES z-w!>1J}>_JdEuYWOa6Xd^!Lk}zhBn<{kq}rw|)P9oc;IX{NEo}|Ngl7@B5>FKhOXB zdEwvh=l_1c{P*YWzd!H({eA!M@Av;i1I2$*&PAz-C8;S2<(VZJ3hti10Sftf3W*B7 ziOCF#KUo;L80r~x7=Qp2V+`yY8tR*xTUy(i#HHHXrMkN7MWySl%=MJ(rA6DMjY2bX z(u0-cWZJ_D^HP)IBjwwzGV=?v5~Cw*Wm|eJbJMa@;-dULC8WeVqzp2WlM-S=yxk;w zTU5hiJ%ZG^dBjB8Rrm$j6kTluIQSS_WQ2shECQX()EphTT0}XuoqXM`9onu0Tx4Ka w$mp{`;N!m2?G#bv7+&QNR_PU4c>CU?Yd7!v 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/logos/build-by-maven-white.png b/css/dependency-check-core/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/logos/maven-feather.png b/css/dependency-check-core/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/network-server.png b/css/dependency-check-core/images/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d12e1938ac4d8817701a555a97b36a42413ff7f GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh0wlLOK8*rWOiAAEE({6J?VYlKJkA1-$YKTt zZXpn6ymYtj4+8_EfTxRNh{R>v^Lzb75+zt4q?_IE(UC6ToMFIeXrjjU_Pbcl8wEu* zmFNogJ4~&tCL!OBSWj@$7M9kE%GC+rI&-8+^}#zUfge$ z%95%FVq)d@YWpHh0*~9IeYCDS=DEjWT6&NB;?38!S{%Af^K0ULzq^XpMf{AfPW9%` z{By-F@#G`{r|bn{ZSl6`PhU_~!26>8WB9W7wxA3jxWq>uP}{$dFi` z{%E$YFs9ZZ#)XBd3yahj7HcdhP@0i0c5-Fei4|q1R+pb%U2$f0$(hxq%c@PLC-F^7 z;+vfzx~NcTNs0RMD#LrH*W5ZZ>(GMCN2iutSY3E&UD>s*_1Cu4-#;|z!_Cdtc6J?G zUUG6}>4z(;KU`e+;r#6P=Vrb?Gxgo+Deq2AczdGv?eU&>7nf}8_Wf{u{fF!8K3rS- z;o6$_*H*v3y88XKb$9o403A6wmUUi^)Rkq4C;QDWElr%4Ewvz5_U@*FYx8|>Z^)aU zBeO7H?&+SoN9z+G?W$goC%33j@%7nxua0&%tapcEij439aV6bJZW8_q7iNx>mKsHKHUXu_VbP0l+XkKAq+)H literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/profiles/pre-release.png b/css/dependency-check-core/images/profiles/pre-release.png new file mode 100644 index 0000000000000000000000000000000000000000..d448e850cd3f885844d0c28da7dddf4457e25300 GIT binary patch literal 32607 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 IO1}yIe}jHRegFUf literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/profiles/retired.png b/css/dependency-check-core/images/profiles/retired.png new file mode 100644 index 0000000000000000000000000000000000000000..f89f6a29c6b61beafd8d2f729085fbf1d17b0e86 GIT binary patch literal 22003 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/images/profiles/sandbox.png b/css/dependency-check-core/images/profiles/sandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..f88b3626761f591fefcb7408ff290b4f48ebe0d9 GIT binary patch literal 33010 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 OGkCiCxvXLW=UkO8ip# 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 B7G?kd literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/img/glyphicons-halflings.png b/css/dependency-check-core/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-core/index.html b/css/dependency-check-core/index.html new file mode 100644 index 000000000..8ad5d842a --- /dev/null +++ b/css/dependency-check-core/index.html @@ -0,0 +1,182 @@ + + + + + + + + + dependency-check-core - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    About

    +

    Dependency-check-core is the primary library that contains analyzers used to scan (java) application dependencies. The purpose of the analysis is to identify the library used and subsequently report on any CVE entries related to the library.

    +

    The core engine can be extended by implementing new Analyzers; see the project wiki for details.

    +

    The engine is currently exposed via:

    + + +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/js/apache-maven-fluido-1.3.0.min.js b/css/dependency-check-core/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/css/dependency-check-core/js/apache-maven-fluido-1.3.0.min.js @@ -0,0 +1,21 @@ +/*! + * jQuery JavaScript Library v1.8.0 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: Thu Aug 09 2012 16:24:48 GMT-0400 (Eastern Daylight Time) + */ +(function(a2,aB){var x,af,o=a2.document,aI=a2.location,d=a2.navigator,bg=a2.jQuery,I=a2.$,am=Array.prototype.push,a4=Array.prototype.slice,aK=Array.prototype.indexOf,A=Object.prototype.toString,V=Object.prototype.hasOwnProperty,aN=String.prototype.trim,bG=function(e,bZ){return new bG.fn.init(e,bZ,x)},bx=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,aa=/\S/,aV=/\s+/,D=aa.test("\xA0")?(/^[\s\xA0]+|[\s\xA0]+$/g):/^\s+|\s+$/g,bo=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,a=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,bf=/^[\],:{}\s]*$/,bi=/(?:^|:|,)(?:\s*\[)+/g,bD=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,a0=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,bP=/^-ms-/,aU=/-([\da-z])/gi,N=function(e,bZ){return(bZ+"").toUpperCase()},aF=function(){if(o.addEventListener){o.removeEventListener("DOMContentLoaded",aF,false);bG.ready()}else{if(o.readyState==="complete"){o.detachEvent("onreadystatechange",aF);bG.ready()}}},Z={};bG.fn=bG.prototype={constructor:bG,init:function(e,b2,b1){var b0,b3,bZ,b4;if(!e){return this}if(e.nodeType){this.context=this[0]=e;this.length=1;return this}if(typeof e==="string"){if(e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3){b0=[null,e,null]}else{b0=bo.exec(e)}if(b0&&(b0[1]||!b2)){if(b0[1]){b2=b2 instanceof bG?b2[0]:b2;b4=(b2&&b2.nodeType?b2.ownerDocument||b2:o);e=bG.parseHTML(b0[1],b4,true);if(a.test(b0[1])&&bG.isPlainObject(b2)){this.attr.call(e,b2,true)}return bG.merge(this,e)}else{b3=o.getElementById(b0[2]);if(b3&&b3.parentNode){if(b3.id!==b0[2]){return b1.find(e)}this.length=1;this[0]=b3}this.context=o;this.selector=e;return this}}else{if(!b2||b2.jquery){return(b2||b1).find(e)}else{return this.constructor(b2).find(e)}}}else{if(bG.isFunction(e)){return b1.ready(e)}}if(e.selector!==aB){this.selector=e.selector;this.context=e.context}return bG.makeArray(e,this)},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return a4.call(this)},get:function(e){return e==null?this.toArray():(e<0?this[this.length+e]:this[e])},pushStack:function(bZ,b1,e){var b0=bG.merge(this.constructor(),bZ);b0.prevObject=this;b0.context=this.context;if(b1==="find"){b0.selector=this.selector+(this.selector?" ":"")+e}else{if(b1){b0.selector=this.selector+"."+b1+"("+e+")"}}return b0},each:function(bZ,e){return bG.each(this,bZ,e)},ready:function(e){bG.ready.promise().done(e);return this},eq:function(e){e=+e;return e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(a4.apply(this,arguments),"slice",a4.call(arguments).join(","))},map:function(e){return this.pushStack(bG.map(this,function(b0,bZ){return e.call(b0,bZ,b0)}))},end:function(){return this.prevObject||this.constructor(null)},push:am,sort:[].sort,splice:[].splice};bG.fn.init.prototype=bG.fn;bG.extend=bG.fn.extend=function(){var b7,b0,e,bZ,b4,b5,b3=arguments[0]||{},b2=1,b1=arguments.length,b6=false;if(typeof b3==="boolean"){b6=b3;b3=arguments[1]||{};b2=2}if(typeof b3!=="object"&&!bG.isFunction(b3)){b3={}}if(b1===b2){b3=this;--b2}for(;b20){return}af.resolveWith(o,[bG]);if(bG.fn.trigger){bG(o).trigger("ready").off("ready")}},isFunction:function(e){return bG.type(e)==="function"},isArray:Array.isArray||function(e){return bG.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return !isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):Z[A.call(e)]||"object"},isPlainObject:function(b1){if(!b1||bG.type(b1)!=="object"||b1.nodeType||bG.isWindow(b1)){return false}try{if(b1.constructor&&!V.call(b1,"constructor")&&!V.call(b1.constructor.prototype,"isPrototypeOf")){return false}}catch(b0){return false}var bZ;for(bZ in b1){}return bZ===aB||V.call(b1,bZ)},isEmptyObject:function(bZ){var e;for(e in bZ){return false}return true},error:function(e){throw new Error(e)},parseHTML:function(b1,b0,e){var bZ;if(!b1||typeof b1!=="string"){return null}if(typeof b0==="boolean"){e=b0;b0=0}b0=b0||o;if((bZ=a.exec(b1))){return[b0.createElement(bZ[1])]}bZ=bG.buildFragment([b1],b0,e?null:[]);return bG.merge([],(bZ.cacheable?bG.clone(bZ.fragment):bZ.fragment).childNodes)},parseJSON:function(e){if(!e||typeof e!=="string"){return null}e=bG.trim(e);if(a2.JSON&&a2.JSON.parse){return a2.JSON.parse(e)}if(bf.test(e.replace(bD,"@").replace(a0,"]").replace(bi,""))){return(new Function("return "+e))()}bG.error("Invalid JSON: "+e)},parseXML:function(b1){var bZ,b0;if(!b1||typeof b1!=="string"){return null}try{if(a2.DOMParser){b0=new DOMParser();bZ=b0.parseFromString(b1,"text/xml")}else{bZ=new ActiveXObject("Microsoft.XMLDOM");bZ.async="false";bZ.loadXML(b1)}}catch(b2){bZ=aB}if(!bZ||!bZ.documentElement||bZ.getElementsByTagName("parsererror").length){bG.error("Invalid XML: "+b1)}return bZ},noop:function(){},globalEval:function(e){if(e&&aa.test(e)){(a2.execScript||function(bZ){a2["eval"].call(a2,bZ)})(e)}},camelCase:function(e){return e.replace(bP,"ms-").replace(aU,N)},nodeName:function(bZ,e){return bZ.nodeName&&bZ.nodeName.toUpperCase()===e.toUpperCase()},each:function(b3,b4,b0){var bZ,b1=0,b2=b3.length,e=b2===aB||bG.isFunction(b3);if(b0){if(e){for(bZ in b3){if(b4.apply(b3[bZ],b0)===false){break}}}else{for(;b10&&e[0]&&e[bZ-1])||bZ===0||bG.isArray(e));if(b1){for(;b0-1){b5.splice(ca,1);if(b2){if(ca<=b3){b3--}if(ca<=b4){b4--}}}})}return this},has:function(b9){return bG.inArray(b9,b5)>-1},empty:function(){b5=[];return this},disable:function(){b5=b6=b1=aB;return this},disabled:function(){return !b5},lock:function(){b6=aB;if(!b1){b7.disable()}return this},locked:function(){return !b6},fireWith:function(ca,b9){b9=b9||[];b9=[ca,b9.slice?b9.slice():b9];if(b5&&(!e||b6)){if(b2){b6.push(b9)}else{bZ(b9)}}return this},fire:function(){b7.fireWith(this,arguments);return this},fired:function(){return !!e}};return b7};bG.extend({Deferred:function(b0){var bZ=[["resolve","done",bG.Callbacks("once memory"),"resolved"],["reject","fail",bG.Callbacks("once memory"),"rejected"],["notify","progress",bG.Callbacks("memory")]],b1="pending",b2={state:function(){return b1},always:function(){e.done(arguments).fail(arguments);return this},then:function(){var b3=arguments;return bG.Deferred(function(b4){bG.each(bZ,function(b6,b5){var b8=b5[0],b7=b3[b6];e[b5[1]](bG.isFunction(b7)?function(){var b9=b7.apply(this,arguments);if(b9&&bG.isFunction(b9.promise)){b9.promise().done(b4.resolve).fail(b4.reject).progress(b4.notify)}else{b4[b8+"With"](this===e?b4:this,[b9])}}:b4[b8])});b3=null}).promise()},promise:function(b3){return typeof b3==="object"?bG.extend(b3,b2):b2}},e={};b2.pipe=b2.then;bG.each(bZ,function(b4,b3){var b6=b3[2],b5=b3[3];b2[b3[1]]=b6.add;if(b5){b6.add(function(){b1=b5},bZ[b4^1][2].disable,bZ[2][2].lock)}e[b3[0]]=b6.fire;e[b3[0]+"With"]=b6.fireWith});b2.promise(e);if(b0){b0.call(e,e)}return e},when:function(b2){var b0=0,b4=a4.call(arguments),e=b4.length,bZ=e!==1||(b2&&bG.isFunction(b2.promise))?e:0,b7=bZ===1?b2:bG.Deferred(),b1=function(b9,ca,b8){return function(cb){ca[b9]=this;b8[b9]=arguments.length>1?a4.call(arguments):cb;if(b8===b6){b7.notifyWith(ca,b8)}else{if(!(--bZ)){b7.resolveWith(ca,b8)}}}},b6,b3,b5;if(e>1){b6=new Array(e);b3=new Array(e);b5=new Array(e);for(;b0
    a";ca=b0.getElementsByTagName("*");b8=b0.getElementsByTagName("a")[0];b8.style.cssText="top:1px;float:left;opacity:.5";if(!ca||!ca.length||!b8){return{}}b9=o.createElement("select");b2=b9.appendChild(o.createElement("option"));b7=b0.getElementsByTagName("input")[0];cb={leadingWhitespace:(b0.firstChild.nodeType===3),tbody:!b0.getElementsByTagName("tbody").length,htmlSerialize:!!b0.getElementsByTagName("link").length,style:/top/.test(b8.getAttribute("style")),hrefNormalized:(b8.getAttribute("href")==="/a"),opacity:/^0.5/.test(b8.style.opacity),cssFloat:!!b8.style.cssFloat,checkOn:(b7.value==="on"),optSelected:b2.selected,getSetAttribute:b0.className!=="t",enctype:!!o.createElement("form").enctype,html5Clone:o.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",boxModel:(o.compatMode==="CSS1Compat"),submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true,boxSizingReliable:true,pixelPosition:false};b7.checked=true;cb.noCloneChecked=b7.cloneNode(true).checked;b9.disabled=true;cb.optDisabled=!b2.disabled;try{delete b0.test}catch(b5){cb.deleteExpando=false}if(!b0.addEventListener&&b0.attachEvent&&b0.fireEvent){b0.attachEvent("onclick",bZ=function(){cb.noCloneEvent=false});b0.cloneNode(true).fireEvent("onclick");b0.detachEvent("onclick",bZ)}b7=o.createElement("input");b7.value="t";b7.setAttribute("type","radio");cb.radioValue=b7.value==="t";b7.setAttribute("checked","checked");b7.setAttribute("name","t");b0.appendChild(b7);b6=o.createDocumentFragment();b6.appendChild(b0.lastChild);cb.checkClone=b6.cloneNode(true).cloneNode(true).lastChild.checked;cb.appendChecked=b7.checked;b6.removeChild(b7);b6.appendChild(b0);if(b0.attachEvent){for(b3 in {submit:true,change:true,focusin:true}){b4="on"+b3;b1=(b4 in b0);if(!b1){b0.setAttribute(b4,"return;");b1=(typeof b0[b4]==="function")}cb[b3+"Bubbles"]=b1}}bG(function(){var cc,cg,ce,cf,cd="padding:0;margin:0;border:0;display:block;overflow:hidden;",e=o.getElementsByTagName("body")[0];if(!e){return}cc=o.createElement("div");cc.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";e.insertBefore(cc,e.firstChild);cg=o.createElement("div");cc.appendChild(cg);cg.innerHTML="
    t
    ";ce=cg.getElementsByTagName("td");ce[0].style.cssText="padding:0;margin:0;border:0;display:none";b1=(ce[0].offsetHeight===0);ce[0].style.display="";ce[1].style.display="none";cb.reliableHiddenOffsets=b1&&(ce[0].offsetHeight===0);cg.innerHTML="";cg.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";cb.boxSizing=(cg.offsetWidth===4);cb.doesNotIncludeMarginInBodyOffset=(e.offsetTop!==1);if(a2.getComputedStyle){cb.pixelPosition=(a2.getComputedStyle(cg,null)||{}).top!=="1%";cb.boxSizingReliable=(a2.getComputedStyle(cg,null)||{width:"4px"}).width==="4px";cf=o.createElement("div");cf.style.cssText=cg.style.cssText=cd;cf.style.marginRight=cf.style.width="0";cg.style.width="1px";cg.appendChild(cf);cb.reliableMarginRight=!parseFloat((a2.getComputedStyle(cf,null)||{}).marginRight)}if(typeof cg.style.zoom!=="undefined"){cg.innerHTML="";cg.style.cssText=cd+"width:1px;padding:1px;display:inline;zoom:1";cb.inlineBlockNeedsLayout=(cg.offsetWidth===3);cg.style.display="block";cg.style.overflow="visible";cg.innerHTML="
    ";cg.firstChild.style.width="5px";cb.shrinkWrapBlocks=(cg.offsetWidth!==3);cc.style.zoom=1}e.removeChild(cc);cc=cg=ce=cf=null});b6.removeChild(b0);ca=b8=b9=b2=b7=b6=b0=null;return cb})();var bt=/^(?:\{.*\}|\[.*\])$/,aL=/([A-Z])/g;bG.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(bG.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?bG.cache[e[bG.expando]]:e[bG.expando];return !!e&&!O(e)},data:function(b1,bZ,b3,b2){if(!bG.acceptData(b1)){return}var b4,b6,b7=bG.expando,b5=typeof bZ==="string",b8=b1.nodeType,e=b8?bG.cache:b1,b0=b8?b1[b7]:b1[b7]&&b7;if((!b0||!e[b0]||(!b2&&!e[b0].data))&&b5&&b3===aB){return}if(!b0){if(b8){b1[b7]=b0=bG.deletedIds.pop()||++bG.uuid}else{b0=b7}}if(!e[b0]){e[b0]={};if(!b8){e[b0].toJSON=bG.noop}}if(typeof bZ==="object"||typeof bZ==="function"){if(b2){e[b0]=bG.extend(e[b0],bZ)}else{e[b0].data=bG.extend(e[b0].data,bZ)}}b4=e[b0];if(!b2){if(!b4.data){b4.data={}}b4=b4.data}if(b3!==aB){b4[bG.camelCase(bZ)]=b3}if(b5){b6=b4[bZ];if(b6==null){b6=b4[bG.camelCase(bZ)]}}else{b6=b4}return b6},removeData:function(b1,bZ,b2){if(!bG.acceptData(b1)){return}var b5,b4,b3,b6=b1.nodeType,e=b6?bG.cache:b1,b0=b6?b1[bG.expando]:bG.expando;if(!e[b0]){return}if(bZ){b5=b2?e[b0]:e[b0].data;if(b5){if(!bG.isArray(bZ)){if(bZ in b5){bZ=[bZ]}else{bZ=bG.camelCase(bZ);if(bZ in b5){bZ=[bZ]}else{bZ=bZ.split(" ")}}}for(b4=0,b3=bZ.length;b41,null,false)},removeData:function(e){return this.each(function(){bG.removeData(this,e)})}});function bv(b1,b0,b2){if(b2===aB&&b1.nodeType===1){var bZ="data-"+b0.replace(aL,"-$1").toLowerCase();b2=b1.getAttribute(bZ);if(typeof b2==="string"){try{b2=b2==="true"?true:b2==="false"?false:b2==="null"?null:+b2+""===b2?+b2:bt.test(b2)?bG.parseJSON(b2):b2}catch(b3){}bG.data(b1,b0,b2)}else{b2=aB}}return b2}function O(bZ){var e;for(e in bZ){if(e==="data"&&bG.isEmptyObject(bZ[e])){continue}if(e!=="toJSON"){return false}}return true}bG.extend({queue:function(b0,bZ,b1){var e;if(b0){bZ=(bZ||"fx")+"queue";e=bG._data(b0,bZ);if(b1){if(!e||bG.isArray(b1)){e=bG._data(b0,bZ,bG.makeArray(b1))}else{e.push(b1)}}return e||[]}},dequeue:function(b3,b2){b2=b2||"fx";var bZ=bG.queue(b3,b2),b1=bZ.shift(),e=bG._queueHooks(b3,b2),b0=function(){bG.dequeue(b3,b2)};if(b1==="inprogress"){b1=bZ.shift()}if(b1){if(b2==="fx"){bZ.unshift("inprogress")}delete e.stop;b1.call(b3,b0,e)}if(!bZ.length&&e){e.empty.fire()}},_queueHooks:function(b0,bZ){var e=bZ+"queueHooks";return bG._data(b0,e)||bG._data(b0,e,{empty:bG.Callbacks("once memory").add(function(){bG.removeData(b0,bZ+"queue",true);bG.removeData(b0,e,true)})})}});bG.fn.extend({queue:function(e,bZ){var b0=2;if(typeof e!=="string"){bZ=e;e="fx";b0--}if(arguments.length1)},removeAttr:function(e){return this.each(function(){bG.removeAttr(this,e)})},prop:function(e,bZ){return bG.access(this,bG.prop,e,bZ,arguments.length>1)},removeProp:function(e){e=bG.propFix[e]||e;return this.each(function(){try{this[e]=aB;delete this[e]}catch(bZ){}})},addClass:function(b2){var b4,b0,bZ,b1,b3,b5,e;if(bG.isFunction(b2)){return this.each(function(b6){bG(this).addClass(b2.call(this,b6,this.className))})}if(b2&&typeof b2==="string"){b4=b2.split(aV);for(b0=0,bZ=this.length;b0-1){b2=b2.replace(" "+b1[b5]+" "," ")}}b3.className=b4?bG.trim(b2):""}}}return this},toggleClass:function(b1,bZ){var b0=typeof b1,e=typeof bZ==="boolean";if(bG.isFunction(b1)){return this.each(function(b2){bG(this).toggleClass(b1.call(this,b2,this.className,bZ),bZ)})}return this.each(function(){if(b0==="string"){var b4,b3=0,b2=bG(this),b5=bZ,b6=b1.split(aV);while((b4=b6[b3++])){b5=e?b5:!b2.hasClass(b4);b2[b5?"addClass":"removeClass"](b4)}}else{if(b0==="undefined"||b0==="boolean"){if(this.className){bG._data(this,"__className__",this.className)}this.className=this.className||b1===false?"":bG._data(this,"__className__")||""}}})},hasClass:function(e){var b1=" "+e+" ",b0=0,bZ=this.length;for(;b0-1){return true}}return false},val:function(b1){var e,bZ,b2,b0=this[0];if(!arguments.length){if(b0){e=bG.valHooks[b0.type]||bG.valHooks[b0.nodeName.toLowerCase()];if(e&&"get" in e&&(bZ=e.get(b0,"value"))!==aB){return bZ}bZ=b0.value;return typeof bZ==="string"?bZ.replace(ai,""):bZ==null?"":bZ}return}b2=bG.isFunction(b1);return this.each(function(b4){var b5,b3=bG(this);if(this.nodeType!==1){return}if(b2){b5=b1.call(this,b4,b3.val())}else{b5=b1}if(b5==null){b5=""}else{if(typeof b5==="number"){b5+=""}else{if(bG.isArray(b5)){b5=bG.map(b5,function(b6){return b6==null?"":b6+""})}}}e=bG.valHooks[this.type]||bG.valHooks[this.nodeName.toLowerCase()];if(!e||!("set" in e)||e.set(this,b5,"value")===aB){this.value=b5}})}});bG.extend({valHooks:{option:{get:function(e){var bZ=e.attributes.value;return !bZ||bZ.specified?e.value:e.text}},select:{get:function(e){var b4,bZ,b3,b1,b2=e.selectedIndex,b5=[],b6=e.options,b0=e.type==="select-one";if(b2<0){return null}bZ=b0?b2:0;b3=b0?b2+1:b6.length;for(;bZ=0});if(!e.length){bZ.selectedIndex=-1}return e}}},attrFn:{},attr:function(b4,b1,b5,b3){var b0,e,b2,bZ=b4.nodeType;if(!b4||bZ===3||bZ===8||bZ===2){return}if(b3&&bG.isFunction(bG.fn[b1])){return bG(b4)[b1](b5)}if(typeof b4.getAttribute==="undefined"){return bG.prop(b4,b1,b5)}b2=bZ!==1||!bG.isXMLDoc(b4);if(b2){b1=b1.toLowerCase();e=bG.attrHooks[b1]||(M.test(b1)?bV:a7)}if(b5!==aB){if(b5===null){bG.removeAttr(b4,b1);return}else{if(e&&"set" in e&&b2&&(b0=e.set(b4,b5,b1))!==aB){return b0}else{b4.setAttribute(b1,""+b5);return b5}}}else{if(e&&"get" in e&&b2&&(b0=e.get(b4,b1))!==null){return b0}else{b0=b4.getAttribute(b1);return b0===null?aB:b0}}},removeAttr:function(b1,b3){var b2,b4,bZ,e,b0=0;if(b3&&b1.nodeType===1){b4=b3.split(aV);for(;b0=0)}}})});var bE=/^(?:textarea|input|select)$/i,br=/^([^\.]*|)(?:\.(.+)|)$/,ba=/(?:^|\s)hover(\.\S+|)\b/,a3=/^key/,bK=/^(?:mouse|contextmenu)|click/,by=/^(?:focusinfocus|focusoutblur)$/,aq=function(e){return bG.event.special.hover?e:e.replace(ba,"mouseenter$1 mouseleave$1")};bG.event={add:function(b1,b5,cc,b3,b2){var b6,b4,cd,cb,ca,b8,e,b9,bZ,b0,b7;if(b1.nodeType===3||b1.nodeType===8||!b5||!cc||!(b6=bG._data(b1))){return}if(cc.handler){bZ=cc;cc=bZ.handler;b2=bZ.selector}if(!cc.guid){cc.guid=bG.guid++}cd=b6.events;if(!cd){b6.events=cd={}}b4=b6.handle;if(!b4){b6.handle=b4=function(ce){return typeof bG!=="undefined"&&(!ce||bG.event.triggered!==ce.type)?bG.event.dispatch.apply(b4.elem,arguments):aB};b4.elem=b1}b5=bG.trim(aq(b5)).split(" ");for(cb=0;cb=0){ca=ca.slice(0,-1);b1=true}if(ca.indexOf(".")>=0){b0=ca.split(".");ca=b0.shift();b0.sort()}if((!b4||bG.event.customEvent[ca])&&!bG.event.global[ca]){return}bZ=typeof bZ==="object"?bZ[bG.expando]?bZ:new bG.Event(ca,bZ):new bG.Event(ca);bZ.type=ca;bZ.isTrigger=true;bZ.exclusive=b1;bZ.namespace=b0.join(".");bZ.namespace_re=bZ.namespace?new RegExp("(^|\\.)"+b0.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;b2=ca.indexOf(":")<0?"on"+ca:"";if(!b4){e=bG.cache;for(b7 in e){if(e[b7].events&&e[b7].events[ca]){bG.event.trigger(bZ,b6,e[b7].handle.elem,true)}}return}bZ.result=aB;if(!bZ.target){bZ.target=b4}b6=b6!=null?bG.makeArray(b6):[];b6.unshift(bZ);b9=bG.event.special[ca]||{};if(b9.trigger&&b9.trigger.apply(b4,b6)===false){return}b5=[[b4,b9.bindType||ca]];if(!cd&&!b9.noBubble&&!bG.isWindow(b4)){cc=b9.delegateType||ca;cb=by.test(cc+ca)?b4:b4.parentNode;for(b3=b4;cb;cb=cb.parentNode){b5.push([cb,cc]);b3=cb}if(b3===(b4.ownerDocument||o)){b5.push([b3.defaultView||b3.parentWindow||a2,cc])}}for(b7=0;b7b6){bZ.push({elem:this,matches:b7.slice(b6)})}for(cd=0;cd0?this.on(e,null,b1,b0):this.trigger(e)};if(a3.test(e)){bG.event.fixHooks[e]=bG.event.keyHooks}if(bK.test(e)){bG.event.fixHooks[e]=bG.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://sizzlejs.com/ + */ +(function(cO,cg){var cT,co,cf,b2,b8,b6=cO.document,b9=b6.documentElement,cw="undefined",ca=false,b7=true,ce=0,cj=[].slice,cS=[].push,cW=("sizcache"+Math.random()).replace(".",""),cz="[\\x20\\t\\r\\n\\f]",ci="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",ch=ci.replace("w","w#"),c1="([*^$|!~]?=)",cL="\\["+cz+"*("+ci+")"+cz+"*(?:"+c1+cz+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ch+")|)|)"+cz+"*\\]",c2=":("+ci+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",cB=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",cd=cz+"*([\\x20\\t\\r\\n\\f>+~])"+cz+"*",cc="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+cL+"|"+c2.replace(2,7)+"|[^\\\\(),])+",cU=new RegExp("^"+cz+"+|((?:^|[^\\\\])(?:\\\\.)*)"+cz+"+$","g"),cF=new RegExp("^"+cd),ct=new RegExp(cc+"?(?="+cz+"*,|$)","g"),cJ=new RegExp("^(?:(?!,)(?:(?:^|,)"+cz+"*"+cc+")*?|"+cz+"*(.*?))(\\)|$)"),cZ=new RegExp(cc.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+cd,"g"),cK=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,cP=/[\x20\t\r\n\f]*[+~]/,cX=/:not\($/,cp=/h\d/i,cM=/input|select|textarea|button/i,cs=/\\(?!\\)/g,cE={ID:new RegExp("^#("+ci+")"),CLASS:new RegExp("^\\.("+ci+")"),NAME:new RegExp("^\\[name=['\"]?("+ci+")['\"]?\\]"),TAG:new RegExp("^("+ci.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+cL),PSEUDO:new RegExp("^"+c2),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+cz+"*(even|odd|(([+-]|)(\\d*)n|)"+cz+"*(?:([+-]|)"+cz+"*(\\d+)|))"+cz+"*\\)|)","i"),POS:new RegExp(cB,"ig"),needsContext:new RegExp("^"+cz+"*[>+~]|"+cB,"i")},cR={},cq=[],cl={},cu=[],cY=function(e){e.sizzleFilter=true;return e},b3=function(e){return function(c3){return c3.nodeName.toLowerCase()==="input"&&c3.type===e}},cr=function(e){return function(c4){var c3=c4.nodeName.toLowerCase();return(c3==="input"||c3==="button")&&c4.type===e}},cH=function(c3){var c4=false,c6=b6.createElement("div");try{c4=c3(c6)}catch(c5){}c6=null;return c4},cn=cH(function(c3){c3.innerHTML="";var e=typeof c3.lastChild.getAttribute("multiple");return e!=="boolean"&&e!=="string"}),b0=cH(function(c3){c3.id=cW+0;c3.innerHTML="
    ";b9.insertBefore(c3,b9.firstChild);var e=b6.getElementsByName&&b6.getElementsByName(cW).length===2+b6.getElementsByName(cW+0).length;b8=!b6.getElementById(cW);b9.removeChild(c3);return e}),b5=cH(function(e){e.appendChild(b6.createComment(""));return e.getElementsByTagName("*").length===0}),cD=cH(function(e){e.innerHTML="";return e.firstChild&&typeof e.firstChild.getAttribute!==cw&&e.firstChild.getAttribute("href")==="#"}),cC=cH(function(e){e.innerHTML="";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return false}e.lastChild.className="e";return e.getElementsByClassName("e").length!==1});var cN=function(c5,e,c7,da){c7=c7||[];e=e||b6;var c8,c3,c9,c4,c6=e.nodeType;if(c6!==1&&c6!==9){return[]}if(!c5||typeof c5!=="string"){return c7}c9=ck(e);if(!c9&&!da){if((c8=cK.exec(c5))){if((c4=c8[1])){if(c6===9){c3=e.getElementById(c4);if(c3&&c3.parentNode){if(c3.id===c4){c7.push(c3);return c7}}else{return c7}}else{if(e.ownerDocument&&(c3=e.ownerDocument.getElementById(c4))&&cA(e,c3)&&c3.id===c4){c7.push(c3);return c7}}}else{if(c8[2]){cS.apply(c7,cj.call(e.getElementsByTagName(c5),0));return c7}else{if((c4=c8[3])&&cC&&e.getElementsByClassName){cS.apply(c7,cj.call(e.getElementsByClassName(c4),0));return c7}}}}}return cV(c5,e,c7,da,c9)};var cG=cN.selectors={cacheLength:50,match:cE,order:["ID","TAG"],attrHandle:{},createPseudo:cY,find:{ID:b8?function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e&&e.parentNode?[e]:[]}}:function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e?e.id===c5||typeof e.getAttributeNode!==cw&&e.getAttributeNode("id").value===c5?[e]:cg:[]}},TAG:b5?function(e,c3){if(typeof c3.getElementsByTagName!==cw){return c3.getElementsByTagName(e)}}:function(e,c6){var c5=c6.getElementsByTagName(e);if(e==="*"){var c7,c4=[],c3=0;for(;(c7=c5[c3]);c3++){if(c7.nodeType===1){c4.push(c7)}}return c4}return c5}},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){e[1]=e[1].replace(cs,"");e[3]=(e[4]||e[5]||"").replace(cs,"");if(e[2]==="~="){e[3]=" "+e[3]+" "}return e.slice(0,4)},CHILD:function(e){e[1]=e[1].toLowerCase();if(e[1]==="nth"){if(!e[2]){cN.error(e[0])}e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd"));e[4]=+((e[6]+e[7])||e[2]==="odd")}else{if(e[2]){cN.error(e[0])}}return e},PSEUDO:function(e){var c3,c4=e[4];if(cE.CHILD.test(e[0])){return null}if(c4&&(c3=cJ.exec(c4))&&c3.pop()){e[0]=e[0].slice(0,c3[0].length-c4.length-1);c4=c3[0].slice(0,-1)}e.splice(2,3,c4||e[3]);return e}},filter:{ID:b8?function(e){e=e.replace(cs,"");return function(c3){return c3.getAttribute("id")===e}}:function(e){e=e.replace(cs,"");return function(c4){var c3=typeof c4.getAttributeNode!==cw&&c4.getAttributeNode("id");return c3&&c3.value===e}},TAG:function(e){if(e==="*"){return function(){return true}}e=e.replace(cs,"").toLowerCase();return function(c3){return c3.nodeName&&c3.nodeName.toLowerCase()===e}},CLASS:function(e){var c3=cR[e];if(!c3){c3=cR[e]=new RegExp("(^|"+cz+")"+e+"("+cz+"|$)");cq.push(e);if(cq.length>cG.cacheLength){delete cR[cq.shift()]}}return function(c4){return c3.test(c4.className||(typeof c4.getAttribute!==cw&&c4.getAttribute("class"))||"")}},ATTR:function(c4,c3,e){if(!c3){return function(c5){return cN.attr(c5,c4)!=null}}return function(c6){var c5=cN.attr(c6,c4),c7=c5+"";if(c5==null){return c3==="!="}switch(c3){case"=":return c7===e;case"!=":return c7!==e;case"^=":return e&&c7.indexOf(e)===0;case"*=":return e&&c7.indexOf(e)>-1;case"$=":return e&&c7.substr(c7.length-e.length)===e;case"~=":return(" "+c7+" ").indexOf(e)>-1;case"|=":return c7===e||c7.substr(0,e.length+1)===e+"-"}}},CHILD:function(c3,c5,c6,c4){if(c3==="nth"){var e=ce++;return function(da){var c7,db,c9=0,c8=da;if(c6===1&&c4===0){return true}c7=da.parentNode;if(c7&&(c7[cW]!==e||!da.sizset)){for(c8=c7.firstChild;c8;c8=c8.nextSibling){if(c8.nodeType===1){c8.sizset=++c9;if(c8===da){break}}}c7[cW]=e}db=da.sizset-c4;if(c6===0){return db===0}else{return(db%c6===0&&db/c6>=0)}}}return function(c8){var c7=c8;switch(c3){case"only":case"first":while((c7=c7.previousSibling)){if(c7.nodeType===1){return false}}if(c3==="first"){return true}c7=c8;case"last":while((c7=c7.nextSibling)){if(c7.nodeType===1){return false}}return true}}},PSEUDO:function(c6,c5,c3,e){var c4=cG.pseudos[c6]||cG.pseudos[c6.toLowerCase()];if(!c4){cN.error("unsupported pseudo: "+c6)}if(!c4.sizzleFilter){return c4}return c4(c5,c3,e)}},pseudos:{not:cY(function(e,c4,c3){var c5=cb(e.replace(cU,"$1"),c4,c3);return function(c6){return !c5(c6)}}),enabled:function(e){return e.disabled===false},disabled:function(e){return e.disabled===true},checked:function(e){var c3=e.nodeName.toLowerCase();return(c3==="input"&&!!e.checked)||(c3==="option"&&!!e.selected)},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !cG.pseudos.empty(e)},empty:function(c3){var e;c3=c3.firstChild;while(c3){if(c3.nodeName>"@"||(e=c3.nodeType)===3||e===4){return false}c3=c3.nextSibling}return true},contains:cY(function(e){return function(c3){return(c3.textContent||c3.innerText||bZ(c3)).indexOf(e)>-1}}),has:cY(function(e){return function(c3){return cN(e,c3).length>0}}),header:function(e){return cp.test(e.nodeName)},text:function(c4){var c3,e;return c4.nodeName.toLowerCase()==="input"&&(c3=c4.type)==="text"&&((e=c4.getAttribute("type"))==null||e.toLowerCase()===c3)},radio:b3("radio"),checkbox:b3("checkbox"),file:b3("file"),password:b3("password"),image:b3("image"),submit:cr("submit"),reset:cr("reset"),button:function(c3){var e=c3.nodeName.toLowerCase();return e==="input"&&c3.type==="button"||e==="button"},input:function(e){return cM.test(e.nodeName)},focus:function(e){var c3=e.ownerDocument;return e===c3.activeElement&&(!c3.hasFocus||c3.hasFocus())&&!!(e.type||e.href)},active:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(c4,c3,e){return e?c4.slice(1):[c4[0]]},last:function(c5,c4,c3){var e=c5.pop();return c3?c5:[e]},even:function(c7,c6,c5){var c4=[],c3=c5?1:0,e=c7.length;for(;c30?c6(c5,c8,c7):[]}function cQ(dc,e,da,c4,dg){var c7,c3,c6,di,c9,dh,db,df,dd=0,de=dg.length,c5=cE.POS,c8=new RegExp("^"+c5.source+"(?!"+cz+")","i"),dj=function(){var dl=1,dk=arguments.length-2;for(;dlc6){db=dc.slice(c6,c7.index);c6=df;dh=[e];if(cF.test(db)){if(c9){dh=c9}c9=c4}if((c3=cX.test(db))){db=db.slice(0,-5).replace(cF,"$&*")}if(c7.length>1){c7[0].replace(c8,dj)}c9=cI(db,c7[1],c7[2],dh,c9,c3)}}if(c9){di=di.concat(c9);if((db=dc.slice(c6))&&db!==")"){if(cF.test(db)){cm(db,di,da,c4)}else{cN(db,e,da,c4?c4.concat(c9):c9)}}else{cS.apply(da,di)}}else{cN(dc,e,da,c4)}}return de===1?da:cN.uniqueSort(da)}function b1(c8,c4,db){var dd,dc,de,c6=[],c9=0,da=cJ.exec(c8),c3=!da.pop()&&!da.pop(),df=c3&&c8.match(ct)||[""],e=cG.preFilter,c5=cG.filter,c7=!db&&c4!==b6;for(;(dc=df[c9])!=null&&c3;c9++){c6.push(dd=[]);if(c7){dc=" "+dc}while(dc){c3=false;if((da=cF.exec(dc))){dc=dc.slice(da[0].length);c3=dd.push({part:da.pop().replace(cU," "),captures:da})}for(de in c5){if((da=cE[de].exec(dc))&&(!e[de]||(da=e[de](da,c4,db)))){dc=dc.slice(da.shift().length);c3=dd.push({part:de,captures:da})}}if(!c3){break}}}if(!c3){cN.error(c8)}return c6}function cx(c6,c5,c4){var e=c5.dir,c3=ce++;if(!c6){c6=function(c7){return c7===c4}}return c5.first?function(c8,c7){while((c8=c8[e])){if(c8.nodeType===1){return c6(c8,c7)&&c8}}}:function(c9,c8){var c7,da=c3+"."+co,db=da+"."+cT;while((c9=c9[e])){if(c9.nodeType===1){if((c7=c9[cW])===db){return c9.sizset}else{if(typeof c7==="string"&&c7.indexOf(da)===0){if(c9.sizset){return c9}}else{c9[cW]=db;if(c6(c9,c8)){c9.sizset=true;return c9}c9.sizset=false}}}}}}function cv(e,c3){return e?function(c6,c5){var c4=c3(c6,c5);return c4&&e(c4===true?c6:c4,c5)}:c3}function cy(c7,c5,e){var c4,c6,c3=0;for(;(c4=c7[c3]);c3++){if(cG.relative[c4.part]){c6=cx(c6,cG.relative[c4.part],c5)}else{c4.captures.push(c5,e);c6=cv(c6,cG.filter[c4.part].apply(null,c4.captures))}}return c6}function b4(e){return function(c5,c4){var c6,c3=0;for(;(c6=e[c3]);c3++){if(c6(c5,c4)){return true}}return false}}var cb=cN.compile=function(e,c5,c3){var c8,c7,c4,c6=cl[e];if(c6&&c6.context===c5){return c6}c7=b1(e,c5,c3);for(c4=0;(c8=c7[c4]);c4++){c7[c4]=cy(c8,c5,c3)}c6=cl[e]=b4(c7);c6.context=c5;c6.runs=c6.dirruns=0;cu.push(e);if(cu.length>cG.cacheLength){delete cl[cu.shift()]}return c6};cN.matches=function(c3,e){return cN(c3,null,null,e)};cN.matchesSelector=function(e,c3){return cN(c3,null,null,[e]).length>0};var cV=function(c6,c3,c8,dc,db){c6=c6.replace(cU,"$1");var e,dd,c9,de,c4,c5,dg,dh,c7,da=c6.match(ct),df=c6.match(cZ),di=c3.nodeType;if(cE.POS.test(c6)){return cQ(c6,c3,c8,dc,da)}if(dc){e=cj.call(dc,0)}else{if(da&&da.length===1){if(df.length>1&&di===9&&!db&&(da=cE.ID.exec(df[0]))){c3=cG.find.ID(da[1],c3,db)[0];if(!c3){return c8}c6=c6.slice(df.shift().length)}dh=((da=cP.exec(df[0]))&&!da.index&&c3.parentNode)||c3;c7=df.pop();c5=c7.split(":not")[0];for(c9=0,de=cG.order.length;c9";if(!c9.querySelectorAll("[selected]").length){c3.push("\\["+cz+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)")}if(!c9.querySelectorAll(":checked").length){c3.push(":checked")}});cH(function(c9){c9.innerHTML="

    ";if(c9.querySelectorAll("[test^='']").length){c3.push("[*^$]="+cz+"*(?:\"\"|'')")}c9.innerHTML="";if(!c9.querySelectorAll(":enabled").length){c3.push(":enabled",":disabled")}});c3=c3.length&&new RegExp(c3.join("|"));cV=function(de,da,df,dh,dg){if(!dh&&!dg&&(!c3||!c3.test(de))){if(da.nodeType===9){try{cS.apply(df,cj.call(da.querySelectorAll(de),0));return df}catch(dd){}}else{if(da.nodeType===1&&da.nodeName.toLowerCase()!=="object"){var dc=da.getAttribute("id"),c9=dc||cW,db=cP.test(de)&&da.parentNode||da;if(dc){c9=c9.replace(c6,"\\$&")}else{da.setAttribute("id",c9)}try{cS.apply(df,cj.call(db.querySelectorAll(de.replace(ct,"[id='"+c9+"'] $&")),0));return df}catch(dd){}finally{if(!dc){da.removeAttribute("id")}}}}}return c8(de,da,df,dh,dg)};if(c5){cH(function(da){c7=c5.call(da,"div");try{c5.call(da,"[test!='']:sizzle");e.push(cG.match.PSEUDO)}catch(c9){}});e=new RegExp(e.join("|"));cN.matchesSelector=function(da,dc){dc=dc.replace(c4,"='$1']");if(!ck(da)&&!e.test(dc)&&(!c3||!c3.test(dc))){try{var c9=c5.call(da,dc);if(c9||c7||da.document&&da.document.nodeType!==11){return c9}}catch(db){}}return cN(dc,null,null,[da]).length>0}}})()}cN.attr=bG.attr;bG.find=cN;bG.expr=cN.selectors;bG.expr[":"]=bG.expr.pseudos;bG.unique=cN.uniqueSort;bG.text=cN.getText;bG.isXMLDoc=cN.isXML;bG.contains=cN.contains})(a2);var ag=/Until$/,bq=/^(?:parents|prev(?:Until|All))/,al=/^.[^:#\[\.,]*$/,z=bG.expr.match.needsContext,bu={children:true,contents:true,next:true,prev:true};bG.fn.extend({find:function(e){var b2,bZ,b4,b5,b3,b1,b0=this;if(typeof e!=="string"){return bG(e).filter(function(){for(b2=0,bZ=b0.length;b20){for(b5=b4;b5=0:bG.filter(e,this).length>0:this.filter(e).length>0)},closest:function(b2,b1){var b3,b0=0,e=this.length,bZ=[],b4=z.test(b2)||typeof b2!=="string"?bG(b2,b1||this.context):0;for(;b0-1:bG.find.matchesSelector(b3,b2)){bZ.push(b3);break}b3=b3.parentNode}}bZ=bZ.length>1?bG.unique(bZ):bZ;return this.pushStack(bZ,"closest",b2)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return bG.inArray(this[0],bG(e))}return bG.inArray(e.jquery?e[0]:e,this)},add:function(e,bZ){var b1=typeof e==="string"?bG(e,bZ):bG.makeArray(e&&e.nodeType?[e]:e),b0=bG.merge(this.get(),b1);return this.pushStack(aR(b1[0])||aR(b0[0])?b0:bG.unique(b0))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});bG.fn.andSelf=bG.fn.addBack;function aR(e){return !e||!e.parentNode||e.parentNode.nodeType===11}function aY(bZ,e){do{bZ=bZ[e]}while(bZ&&bZ.nodeType!==1);return bZ}bG.each({parent:function(bZ){var e=bZ.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return bG.dir(e,"parentNode")},parentsUntil:function(bZ,e,b0){return bG.dir(bZ,"parentNode",b0)},next:function(e){return aY(e,"nextSibling")},prev:function(e){return aY(e,"previousSibling")},nextAll:function(e){return bG.dir(e,"nextSibling")},prevAll:function(e){return bG.dir(e,"previousSibling")},nextUntil:function(bZ,e,b0){return bG.dir(bZ,"nextSibling",b0)},prevUntil:function(bZ,e,b0){return bG.dir(bZ,"previousSibling",b0)},siblings:function(e){return bG.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return bG.sibling(e.firstChild)},contents:function(e){return bG.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:bG.merge([],e.childNodes)}},function(e,bZ){bG.fn[e]=function(b2,b0){var b1=bG.map(this,bZ,b2);if(!ag.test(e)){b0=b2}if(b0&&typeof b0==="string"){b1=bG.filter(b0,b1)}b1=this.length>1&&!bu[e]?bG.unique(b1):b1;if(this.length>1&&bq.test(e)){b1=b1.reverse()}return this.pushStack(b1,e,a4.call(arguments).join(","))}});bG.extend({filter:function(b0,e,bZ){if(bZ){b0=":not("+b0+")"}return e.length===1?bG.find.matchesSelector(e[0],b0)?[e[0]]:[]:bG.find.matches(b0,e)},dir:function(b0,bZ,b2){var e=[],b1=b0[bZ];while(b1&&b1.nodeType!==9&&(b2===aB||b1.nodeType!==1||!bG(b1).is(b2))){if(b1.nodeType===1){e.push(b1)}b1=b1[bZ]}return e},sibling:function(b0,bZ){var e=[];for(;b0;b0=b0.nextSibling){if(b0.nodeType===1&&b0!==bZ){e.push(b0)}}return e}});function aM(b1,b0,e){b0=b0||0;if(bG.isFunction(b0)){return bG.grep(b1,function(b3,b2){var b4=!!b0.call(b3,b2,b3);return b4===e})}else{if(b0.nodeType){return bG.grep(b1,function(b3,b2){return(b3===b0)===e})}else{if(typeof b0==="string"){var bZ=bG.grep(b1,function(b2){return b2.nodeType===1});if(al.test(b0)){return bG.filter(b0,bZ,!e)}else{b0=bG.filter(b0,bZ)}}}}return bG.grep(b1,function(b3,b2){return(bG.inArray(b3,b0)>=0)===e})}function B(e){var b0=c.split("|"),bZ=e.createDocumentFragment();if(bZ.createElement){while(b0.length){bZ.createElement(b0.pop())}}return bZ}var c="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",av=/ jQuery\d+="(?:null|\d+)"/g,bY=/^\s+/,ay=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,p=/<([\w:]+)/,bT=/]","i"),aE=/^(?:checkbox|radio)$/,bR=/checked\s*(?:[^=]|=\s*.checked.)/i,bw=/\/(java|ecma)script/i,aH=/^\s*\s*$/g,T={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},aQ=B(o),l=aQ.appendChild(o.createElement("div"));T.optgroup=T.option;T.tbody=T.tfoot=T.colgroup=T.caption=T.thead;T.th=T.td;if(!bG.support.htmlSerialize){T._default=[1,"X
    ","
    "]}bG.fn.extend({text:function(e){return bG.access(this,function(bZ){return bZ===aB?bG.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).createTextNode(bZ))},null,e,arguments.length)},wrapAll:function(e){if(bG.isFunction(e)){return this.each(function(b0){bG(this).wrapAll(e.call(this,b0))})}if(this[0]){var bZ=bG(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bZ.insertBefore(this[0])}bZ.map(function(){var b0=this;while(b0.firstChild&&b0.firstChild.nodeType===1){b0=b0.firstChild}return b0}).append(this)}return this},wrapInner:function(e){if(bG.isFunction(e)){return this.each(function(bZ){bG(this).wrapInner(e.call(this,bZ))})}return this.each(function(){var bZ=bG(this),b0=bZ.contents();if(b0.length){b0.wrapAll(e)}else{bZ.append(e)}})},wrap:function(e){var bZ=bG.isFunction(e);return this.each(function(b0){bG(this).wrapAll(bZ?e.call(this,b0):e)})},unwrap:function(){return this.parent().each(function(){if(!bG.nodeName(this,"body")){bG(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.insertBefore(e,this.firstChild)}})},before:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(e,this),"before",this.selector)}},after:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this.nextSibling)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(this,e),"after",this.selector)}},remove:function(e,b1){var b0,bZ=0;for(;(b0=this[bZ])!=null;bZ++){if(!e||bG.filter(e,[b0]).length){if(!b1&&b0.nodeType===1){bG.cleanData(b0.getElementsByTagName("*"));bG.cleanData([b0])}if(b0.parentNode){b0.parentNode.removeChild(b0)}}}return this},empty:function(){var bZ,e=0;for(;(bZ=this[e])!=null;e++){if(bZ.nodeType===1){bG.cleanData(bZ.getElementsByTagName("*"))}while(bZ.firstChild){bZ.removeChild(bZ.firstChild)}}return this},clone:function(bZ,e){bZ=bZ==null?false:bZ;e=e==null?bZ:e;return this.map(function(){return bG.clone(this,bZ,e)})},html:function(e){return bG.access(this,function(b2){var b1=this[0]||{},b0=0,bZ=this.length;if(b2===aB){return b1.nodeType===1?b1.innerHTML.replace(av,""):aB}if(typeof b2==="string"&&!aj.test(b2)&&(bG.support.htmlSerialize||!K.test(b2))&&(bG.support.leadingWhitespace||!bY.test(b2))&&!T[(p.exec(b2)||["",""])[1].toLowerCase()]){b2=b2.replace(ay,"<$1>");try{for(;b01&&typeof b5==="string"&&bR.test(b5)){return this.each(function(){bG(this).domManip(b4,b8,b7)})}if(bG.isFunction(b5)){return this.each(function(ca){var b9=bG(this);b4[0]=b5.call(this,ca,b8?b9.html():aB);b9.domManip(b4,b8,b7)})}if(this[0]){b0=bG.buildFragment(b4,this,bZ);b3=b0.fragment;b2=b3.firstChild;if(b3.childNodes.length===1){b3=b2}if(b2){b8=b8&&bG.nodeName(b2,"tr");for(b6=b0.cacheable||e-1;b10?this.clone(true):this).get();bG(b6[b4])[bZ](b2);b3=b3.concat(b2)}return this.pushStack(b3,e,b6.selector)}}});function m(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function bS(e){if(aE.test(e.type)){e.defaultChecked=e.checked}}bG.extend({clone:function(b2,b4,b0){var e,bZ,b1,b3;if(bG.support.html5Clone||bG.isXMLDoc(b2)||!K.test("<"+b2.nodeName+">")){b3=b2.cloneNode(true)}else{l.innerHTML=b2.outerHTML;l.removeChild(b3=l.firstChild)}if((!bG.support.noCloneEvent||!bG.support.noCloneChecked)&&(b2.nodeType===1||b2.nodeType===11)&&!bG.isXMLDoc(b2)){G(b2,b3);e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){if(bZ[b1]){G(e[b1],bZ[b1])}}}if(b4){ao(b2,b3);if(b0){e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){ao(e[b1],bZ[b1])}}}e=bZ=null;return b3},clean:function(cb,b0,e,b1){var b7,b3,ca,cf,b4,ce,b5,b2,bZ,b9,cd,b6,b8=0,cc=[];if(!b0||typeof b0.createDocumentFragment==="undefined"){b0=o}for(b3=b0===o&&aQ;(ca=cb[b8])!=null;b8++){if(typeof ca==="number"){ca+=""}if(!ca){continue}if(typeof ca==="string"){if(!J.test(ca)){ca=b0.createTextNode(ca)}else{b3=b3||B(b0);b5=b5||b3.appendChild(b0.createElement("div"));ca=ca.replace(ay,"<$1>");cf=(p.exec(ca)||["",""])[1].toLowerCase();b4=T[cf]||T._default;ce=b4[0];b5.innerHTML=b4[1]+ca+b4[2];while(ce--){b5=b5.lastChild}if(!bG.support.tbody){b2=bT.test(ca);bZ=cf==="table"&&!b2?b5.firstChild&&b5.firstChild.childNodes:b4[1]===""&&!b2?b5.childNodes:[];for(b7=bZ.length-1;b7>=0;--b7){if(bG.nodeName(bZ[b7],"tbody")&&!bZ[b7].childNodes.length){bZ[b7].parentNode.removeChild(bZ[b7])}}}if(!bG.support.leadingWhitespace&&bY.test(ca)){b5.insertBefore(b0.createTextNode(bY.exec(ca)[0]),b5.firstChild)}ca=b5.childNodes;b5=b3.lastChild}}if(ca.nodeType){cc.push(ca)}else{cc=bG.merge(cc,ca)}}if(b5){b3.removeChild(b5);ca=b5=b3=null}if(!bG.support.appendChecked){for(b8=0;(ca=cc[b8])!=null;b8++){if(bG.nodeName(ca,"input")){bS(ca)}else{if(typeof ca.getElementsByTagName!=="undefined"){bG.grep(ca.getElementsByTagName("input"),bS)}}}}if(e){cd=function(cg){if(!cg.type||bw.test(cg.type)){return b1?b1.push(cg.parentNode?cg.parentNode.removeChild(cg):cg):e.appendChild(cg)}};for(b8=0;(ca=cc[b8])!=null;b8++){if(!(bG.nodeName(ca,"script")&&cd(ca))){e.appendChild(ca);if(typeof ca.getElementsByTagName!=="undefined"){b6=bG.grep(bG.merge([],ca.getElementsByTagName("script")),cd);cc.splice.apply(cc,[b8+1,0].concat(b6));b8+=b6.length}}}}return cc},cleanData:function(bZ,b7){var b2,b0,b1,b6,b3=0,b8=bG.expando,e=bG.cache,b4=bG.support.deleteExpando,b5=bG.event.special;for(;(b1=bZ[b3])!=null;b3++){if(b7||bG.acceptData(b1)){b0=b1[b8];b2=b0&&e[b0];if(b2){if(b2.events){for(b6 in b2.events){if(b5[b6]){bG.event.remove(b1,b6)}else{bG.removeEvent(b1,b6,b2.handle)}}}if(e[b0]){delete e[b0];if(b4){delete b1[b8]}else{if(b1.removeAttribute){b1.removeAttribute(b8)}else{b1[b8]=null}}bG.deletedIds.push(b0)}}}}}});(function(){var e,bZ;bG.uaMatch=function(b1){b1=b1.toLowerCase();var b0=/(chrome)[ \/]([\w.]+)/.exec(b1)||/(webkit)[ \/]([\w.]+)/.exec(b1)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(b1)||/(msie) ([\w.]+)/.exec(b1)||b1.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}};e=bG.uaMatch(d.userAgent);bZ={};if(e.browser){bZ[e.browser]=true;bZ.version=e.version}if(bZ.webkit){bZ.safari=true}bG.browser=bZ;bG.sub=function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bG.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bG&&!(b4 instanceof b0)){b4=b0(b4)}return bG.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(o);return b0}})();var F,az,aW,be=/alpha\([^)]*\)/i,aS=/opacity=([^)]*)/,bk=/^(top|right|bottom|left)$/,aZ=/^margin/,a8=new RegExp("^("+bx+")(.*)$","i"),W=new RegExp("^("+bx+")(?!px)[a-z%]+$","i"),S=new RegExp("^([-+])=("+bx+")","i"),bh={},a9={position:"absolute",visibility:"hidden",display:"block"},bA={letterSpacing:0,fontWeight:400,lineHeight:1},bQ=["Top","Right","Bottom","Left"],ar=["Webkit","O","Moz","ms"],aJ=bG.fn.toggle;function b(b1,bZ){if(bZ in b1){return bZ}var b2=bZ.charAt(0).toUpperCase()+bZ.slice(1),e=bZ,b0=ar.length;while(b0--){bZ=ar[b0]+b2;if(bZ in b1){return bZ}}return e}function Q(bZ,e){bZ=e||bZ;return bG.css(bZ,"display")==="none"||!bG.contains(bZ.ownerDocument,bZ)}function t(b3,e){var b2,b4,bZ=[],b0=0,b1=b3.length;for(;b01)},show:function(){return t(this,true)},hide:function(){return t(this)},toggle:function(b0,bZ){var e=typeof b0==="boolean";if(bG.isFunction(b0)&&bG.isFunction(bZ)){return aJ.apply(this,arguments)}return this.each(function(){if(e?b0:Q(this)){bG(this).show()}else{bG(this).hide()}})}});bG.extend({cssHooks:{opacity:{get:function(b0,bZ){if(bZ){var e=F(b0,"opacity");return e===""?"1":e}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":bG.support.cssFloat?"cssFloat":"styleFloat"},style:function(b1,b0,b7,b2){if(!b1||b1.nodeType===3||b1.nodeType===8||!b1.style){return}var b5,b6,b8,b3=bG.camelCase(b0),bZ=b1.style;b0=bG.cssProps[b3]||(bG.cssProps[b3]=b(bZ,b3));b8=bG.cssHooks[b0]||bG.cssHooks[b3];if(b7!==aB){b6=typeof b7;if(b6==="string"&&(b5=S.exec(b7))){b7=(b5[1]+1)*b5[2]+parseFloat(bG.css(b1,b0));b6="number"}if(b7==null||b6==="number"&&isNaN(b7)){return}if(b6==="number"&&!bG.cssNumber[b3]){b7+="px"}if(!b8||!("set" in b8)||(b7=b8.set(b1,b7,b2))!==aB){try{bZ[b0]=b7}catch(b4){}}}else{if(b8&&"get" in b8&&(b5=b8.get(b1,false,b2))!==aB){return b5}return bZ[b0]}},css:function(b4,b2,b3,bZ){var b5,b1,e,b0=bG.camelCase(b2);b2=bG.cssProps[b0]||(bG.cssProps[b0]=b(b4.style,b0));e=bG.cssHooks[b2]||bG.cssHooks[b0];if(e&&"get" in e){b5=e.get(b4,true,bZ)}if(b5===aB){b5=F(b4,b2)}if(b5==="normal"&&b2 in bA){b5=bA[b2]}if(b3||bZ!==aB){b1=parseFloat(b5);return b3||bG.isNumeric(b1)?b1||0:b5}return b5},swap:function(b2,b1,b3){var b0,bZ,e={};for(bZ in b1){e[bZ]=b2.style[bZ];b2.style[bZ]=b1[bZ]}b0=b3.call(b2);for(bZ in b1){b2.style[bZ]=e[bZ]}return b0}});if(a2.getComputedStyle){F=function(b5,bZ){var e,b2,b1,b4,b3=getComputedStyle(b5,null),b0=b5.style;if(b3){e=b3[bZ];if(e===""&&!bG.contains(b5.ownerDocument.documentElement,b5)){e=bG.style(b5,bZ)}if(W.test(e)&&aZ.test(bZ)){b2=b0.width;b1=b0.minWidth;b4=b0.maxWidth;b0.minWidth=b0.maxWidth=b0.width=e;e=b3.width;b0.width=b2;b0.minWidth=b1;b0.maxWidth=b4}}return e}}else{if(o.documentElement.currentStyle){F=function(b2,b0){var b3,e,bZ=b2.currentStyle&&b2.currentStyle[b0],b1=b2.style;if(bZ==null&&b1&&b1[b0]){bZ=b1[b0]}if(W.test(bZ)&&!bk.test(b0)){b3=b1.left;e=b2.runtimeStyle&&b2.runtimeStyle.left;if(e){b2.runtimeStyle.left=b2.currentStyle.left}b1.left=b0==="fontSize"?"1em":bZ;bZ=b1.pixelLeft+"px";b1.left=b3;if(e){b2.runtimeStyle.left=e}}return bZ===""?"auto":bZ}}}function aG(e,b0,b1){var bZ=a8.exec(b0);return bZ?Math.max(0,bZ[1]-(b1||0))+(bZ[2]||"px"):b0}function at(b1,bZ,e,b3){var b0=e===(b3?"border":"content")?4:bZ==="width"?1:0,b2=0;for(;b0<4;b0+=2){if(e==="margin"){b2+=bG.css(b1,e+bQ[b0],true)}if(b3){if(e==="content"){b2-=parseFloat(F(b1,"padding"+bQ[b0]))||0}if(e!=="margin"){b2-=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}else{b2+=parseFloat(F(b1,"padding"+bQ[b0]))||0;if(e!=="padding"){b2+=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}}return b2}function v(b1,bZ,e){var b2=bZ==="width"?b1.offsetWidth:b1.offsetHeight,b0=true,b3=bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box";if(b2<=0){b2=F(b1,bZ);if(b2<0||b2==null){b2=b1.style[bZ]}if(W.test(b2)){return b2}b0=b3&&(bG.support.boxSizingReliable||b2===b1.style[bZ]);b2=parseFloat(b2)||0}return(b2+at(b1,bZ,e||(b3?"border":"content"),b0))+"px"}function bC(b0){if(bh[b0]){return bh[b0]}var e=bG("<"+b0+">").appendTo(o.body),bZ=e.css("display");e.remove();if(bZ==="none"||bZ===""){az=o.body.appendChild(az||bG.extend(o.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!aW||!az.createElement){aW=(az.contentWindow||az.contentDocument).document;aW.write("");aW.close()}e=aW.body.appendChild(aW.createElement(b0));bZ=F(e,"display");o.body.removeChild(az)}bh[b0]=bZ;return bZ}bG.each(["height","width"],function(bZ,e){bG.cssHooks[e]={get:function(b2,b1,b0){if(b1){if(b2.offsetWidth!==0||F(b2,"display")!=="none"){return v(b2,e,b0)}else{return bG.swap(b2,a9,function(){return v(b2,e,b0)})}}},set:function(b1,b2,b0){return aG(b1,b2,b0?at(b1,e,b0,bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box"):0)}}});if(!bG.support.opacity){bG.cssHooks.opacity={get:function(bZ,e){return aS.test((e&&bZ.currentStyle?bZ.currentStyle.filter:bZ.style.filter)||"")?(0.01*parseFloat(RegExp.$1))+"":e?"1":""},set:function(b2,b3){var b1=b2.style,bZ=b2.currentStyle,e=bG.isNumeric(b3)?"alpha(opacity="+b3*100+")":"",b0=bZ&&bZ.filter||b1.filter||"";b1.zoom=1;if(b3>=1&&bG.trim(b0.replace(be,""))===""&&b1.removeAttribute){b1.removeAttribute("filter");if(bZ&&!bZ.filter){return}}b1.filter=be.test(b0)?b0.replace(be,e):b0+" "+e}}}bG(function(){if(!bG.support.reliableMarginRight){bG.cssHooks.marginRight={get:function(bZ,e){return bG.swap(bZ,{display:"inline-block"},function(){if(e){return F(bZ,"marginRight")}})}}}if(!bG.support.pixelPosition&&bG.fn.position){bG.each(["top","left"],function(e,bZ){bG.cssHooks[bZ]={get:function(b2,b1){if(b1){var b0=F(b2,bZ);return W.test(b0)?bG(b2).position()[bZ]+"px":b0}}}})}});if(bG.expr&&bG.expr.filters){bG.expr.filters.hidden=function(e){return(e.offsetWidth===0&&e.offsetHeight===0)||(!bG.support.reliableHiddenOffsets&&((e.style&&e.style.display)||F(e,"display"))==="none")};bG.expr.filters.visible=function(e){return !bG.expr.filters.hidden(e)}}bG.each({margin:"",padding:"",border:"Width"},function(e,bZ){bG.cssHooks[e+bZ]={expand:function(b2){var b1,b3=typeof b2==="string"?b2.split(" "):[b2],b0={};for(b1=0;b1<4;b1++){b0[e+bQ[b1]+bZ]=b3[b1]||b3[b1-2]||b3[0]}return b0}};if(!aZ.test(e)){bG.cssHooks[e+bZ].set=aG}});var bs=/%20/g,aP=/\[\]$/,U=/\r?\n/g,bz=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aD=/^(?:select|textarea)/i;bG.fn.extend({serialize:function(){return bG.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?bG.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||aD.test(this.nodeName)||bz.test(this.type))}).map(function(e,bZ){var b0=bG(this).val();return b0==null?null:bG.isArray(b0)?bG.map(b0,function(b2,b1){return{name:bZ.name,value:b2.replace(U,"\r\n")}}):{name:bZ.name,value:b0.replace(U,"\r\n")}}).get()}});bG.param=function(e,b0){var b1,bZ=[],b2=function(b3,b4){b4=bG.isFunction(b4)?b4():(b4==null?"":b4);bZ[bZ.length]=encodeURIComponent(b3)+"="+encodeURIComponent(b4)};if(b0===aB){b0=bG.ajaxSettings&&bG.ajaxSettings.traditional}if(bG.isArray(e)||(e.jquery&&!bG.isPlainObject(e))){bG.each(e,function(){b2(this.name,this.value)})}else{for(b1 in e){k(b1,e[b1],b0,b2)}}return bZ.join("&").replace(bs,"+")};function k(b0,b2,bZ,b1){var e;if(bG.isArray(b2)){bG.each(b2,function(b4,b3){if(bZ||aP.test(b0)){b1(b0,b3)}else{k(b0+"["+(typeof b3==="object"?b4:"")+"]",b3,bZ,b1)}})}else{if(!bZ&&bG.type(b2)==="object"){for(e in b2){k(b0+"["+e+"]",b2[e],bZ,b1)}}else{b1(b0,b2)}}}var Y,bX,an=/#.*$/,ad=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,C=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,s=/^(?:GET|HEAD)$/,aC=/^\/\//,bN=/\?/,g=/)<[^<]*)*<\/script>/gi,P=/([?&])_=[^&]*/,aT=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,bW=bG.fn.load,w={},a6={},aX=["*/"]+["*"];try{Y=aI.href}catch(bd){Y=o.createElement("a");Y.href="";Y=Y.href}bX=aT.exec(Y.toLowerCase())||[];function bI(e){return function(b2,b4){if(typeof b2!=="string"){b4=b2;b2="*"}var bZ,b5,b6,b1=b2.toLowerCase().split(aV),b0=0,b3=b1.length;if(bG.isFunction(b4)){for(;b0=0){e=b1.slice(b3,b1.length);b1=b1.slice(0,b3)}if(bG.isFunction(b4)){b5=b4;b4=aB}else{if(typeof b4==="object"){b2="POST"}}bG.ajax({url:b1,type:b2,dataType:"html",data:b4,complete:function(b7,b6){if(b5){bZ.each(b5,b0||[b7.responseText,b6,b7])}}}).done(function(b6){b0=arguments;bZ.html(e?bG("
    ").append(b6.replace(g,"")).find(e):b6)});return this};bG.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bZ){bG.fn[bZ]=function(b0){return this.on(bZ,b0)}});bG.each(["get","post"],function(e,bZ){bG[bZ]=function(b0,b2,b3,b1){if(bG.isFunction(b2)){b1=b1||b3;b3=b2;b2=aB}return bG.ajax({type:bZ,url:b0,data:b2,success:b3,dataType:b1})}});bG.extend({getScript:function(e,bZ){return bG.get(e,aB,bZ,"script")},getJSON:function(e,bZ,b0){return bG.get(e,bZ,b0,"json")},ajaxSetup:function(bZ,e){if(e){u(bZ,bG.ajaxSettings)}else{e=bZ;bZ=bG.ajaxSettings}u(bZ,e);return bZ},ajaxSettings:{url:Y,isLocal:C.test(bX[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a2.String,"text html":true,"text json":bG.parseJSON,"text xml":bG.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:bI(w),ajaxTransport:bI(a6),ajax:function(b4,b1){if(typeof b4==="object"){b1=b4;b4=aB}b1=b1||{};var b7,cl,b2,cg,b9,cd,b0,cf,b8=bG.ajaxSetup({},b1),cn=b8.context||b8,cb=cn!==b8&&(cn.nodeType||cn instanceof bG)?bG(cn):bG.event,cm=bG.Deferred(),ci=bG.Callbacks("once memory"),b5=b8.statusCode||{},cc={},cj={},b3=0,b6="canceled",ce={readyState:0,setRequestHeader:function(co,cp){if(!b3){var e=co.toLowerCase();co=cj[e]=cj[e]||co;cc[co]=cp}return this},getAllResponseHeaders:function(){return b3===2?cl:null},getResponseHeader:function(co){var e;if(b3===2){if(!b2){b2={};while((e=ad.exec(cl))){b2[e[1].toLowerCase()]=e[2]}}e=b2[co.toLowerCase()]}return e===aB?null:e},overrideMimeType:function(e){if(!b3){b8.mimeType=e}return this},abort:function(e){e=e||b6;if(cg){cg.abort(e)}ca(0,e);return this}};function ca(cs,co,ct,cq){var e,cw,cu,cr,cv,cp=co;if(b3===2){return}b3=2;if(b9){clearTimeout(b9)}cg=aB;cl=cq||"";ce.readyState=cs>0?4:0;if(ct){cr=h(b8,ce,ct)}if(cs>=200&&cs<300||cs===304){if(b8.ifModified){cv=ce.getResponseHeader("Last-Modified");if(cv){bG.lastModified[b7]=cv}cv=ce.getResponseHeader("Etag");if(cv){bG.etag[b7]=cv}}if(cs===304){cp="notmodified";e=true}else{e=ae(b8,cr);cp=e.state;cw=e.data;cu=e.error;e=!cu}}else{cu=cp;if(!cp||cs){cp="error";if(cs<0){cs=0}}}ce.status=cs;ce.statusText=""+(co||cp);if(e){cm.resolveWith(cn,[cw,cp,ce])}else{cm.rejectWith(cn,[ce,cp,cu])}ce.statusCode(b5);b5=aB;if(b0){cb.trigger("ajax"+(e?"Success":"Error"),[ce,b8,e?cw:cu])}ci.fireWith(cn,[ce,cp]);if(b0){cb.trigger("ajaxComplete",[ce,b8]);if(!(--bG.active)){bG.event.trigger("ajaxStop")}}}cm.promise(ce);ce.success=ce.done;ce.error=ce.fail;ce.complete=ci.add;ce.statusCode=function(co){if(co){var e;if(b3<2){for(e in co){b5[e]=[b5[e],co[e]]}}else{e=co[ce.status];ce.always(e)}}return this};b8.url=((b4||b8.url)+"").replace(an,"").replace(aC,bX[1]+"//");b8.dataTypes=bG.trim(b8.dataType||"*").toLowerCase().split(aV);if(b8.crossDomain==null){cd=aT.exec(b8.url.toLowerCase());b8.crossDomain=!!(cd&&(cd[1]!=bX[1]||cd[2]!=bX[2]||(cd[3]||(cd[1]==="http:"?80:443))!=(bX[3]||(bX[1]==="http:"?80:443))))}if(b8.data&&b8.processData&&typeof b8.data!=="string"){b8.data=bG.param(b8.data,b8.traditional)}r(w,b8,b1,ce);if(b3===2){return ce}b0=b8.global;b8.type=b8.type.toUpperCase();b8.hasContent=!s.test(b8.type);if(b0&&bG.active++===0){bG.event.trigger("ajaxStart")}if(!b8.hasContent){if(b8.data){b8.url+=(bN.test(b8.url)?"&":"?")+b8.data;delete b8.data}b7=b8.url;if(b8.cache===false){var bZ=bG.now(),ck=b8.url.replace(P,"$1_="+bZ);b8.url=ck+((ck===b8.url)?(bN.test(b8.url)?"&":"?")+"_="+bZ:"")}}if(b8.data&&b8.hasContent&&b8.contentType!==false||b1.contentType){ce.setRequestHeader("Content-Type",b8.contentType)}if(b8.ifModified){b7=b7||b8.url;if(bG.lastModified[b7]){ce.setRequestHeader("If-Modified-Since",bG.lastModified[b7])}if(bG.etag[b7]){ce.setRequestHeader("If-None-Match",bG.etag[b7])}}ce.setRequestHeader("Accept",b8.dataTypes[0]&&b8.accepts[b8.dataTypes[0]]?b8.accepts[b8.dataTypes[0]]+(b8.dataTypes[0]!=="*"?", "+aX+"; q=0.01":""):b8.accepts["*"]);for(cf in b8.headers){ce.setRequestHeader(cf,b8.headers[cf])}if(b8.beforeSend&&(b8.beforeSend.call(cn,ce,b8)===false||b3===2)){return ce.abort()}b6="abort";for(cf in {success:1,error:1,complete:1}){ce[cf](b8[cf])}cg=r(a6,b8,b1,ce);if(!cg){ca(-1,"No Transport")}else{ce.readyState=1;if(b0){cb.trigger("ajaxSend",[ce,b8])}if(b8.async&&b8.timeout>0){b9=setTimeout(function(){ce.abort("timeout")},b8.timeout)}try{b3=1;cg.send(cc,ca)}catch(ch){if(b3<2){ca(-1,ch)}else{throw ch}}}return ce},active:0,lastModified:{},etag:{}});function h(b7,b6,b3){var b2,b4,b1,e,bZ=b7.contents,b5=b7.dataTypes,b0=b7.responseFields;for(b4 in b0){if(b4 in b3){b6[b0[b4]]=b3[b4]}}while(b5[0]==="*"){b5.shift();if(b2===aB){b2=b7.mimeType||b6.getResponseHeader("content-type")}}if(b2){for(b4 in bZ){if(bZ[b4]&&bZ[b4].test(b2)){b5.unshift(b4);break}}}if(b5[0] in b3){b1=b5[0]}else{for(b4 in b3){if(!b5[0]||b7.converters[b4+" "+b5[0]]){b1=b4;break}if(!e){e=b4}}b1=b1||e}if(b1){if(b1!==b5[0]){b5.unshift(b1)}return b3[b1]}}function ae(b9,b1){var b7,bZ,b5,b3,b6=b9.dataTypes.slice(),b0=b6[0],b8={},b2=0;if(b9.dataFilter){b1=b9.dataFilter(b1,b9.dataType)}if(b6[1]){for(b7 in b9.converters){b8[b7.toLowerCase()]=b9.converters[b7]}}for(;(b5=b6[++b2]);){if(b5!=="*"){if(b0!=="*"&&b0!==b5){b7=b8[b0+" "+b5]||b8["* "+b5];if(!b7){for(bZ in b8){b3=bZ.split(" ");if(b3[1]===b5){b7=b8[b0+" "+b3[0]]||b8["* "+b3[0]];if(b7){if(b7===true){b7=b8[bZ]}else{if(b8[bZ]!==true){b5=b3[0];b6.splice(b2--,0,b5)}}break}}}}if(b7!==true){if(b7&&b9["throws"]){b1=b7(b1)}else{try{b1=b7(b1)}catch(b4){return{state:"parsererror",error:b7?b4:"No conversion from "+b0+" to "+b5}}}}}b0=b5}}return{state:"success",data:b1}}var bp=[],aw=/\?/,a5=/(=)\?(?=&|$)|\?\?/,bl=bG.now();bG.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=bp.pop()||(bG.expando+"_"+(bl++));this[e]=true;return e}});bG.ajaxPrefilter("json jsonp",function(b8,b3,b7){var b6,e,b5,b1=b8.data,bZ=b8.url,b0=b8.jsonp!==false,b4=b0&&a5.test(bZ),b2=b0&&!b4&&typeof b1==="string"&&!(b8.contentType||"").indexOf("application/x-www-form-urlencoded")&&a5.test(b1);if(b8.dataTypes[0]==="jsonp"||b4||b2){b6=b8.jsonpCallback=bG.isFunction(b8.jsonpCallback)?b8.jsonpCallback():b8.jsonpCallback;e=a2[b6];if(b4){b8.url=bZ.replace(a5,"$1"+b6)}else{if(b2){b8.data=b1.replace(a5,"$1"+b6)}else{if(b0){b8.url+=(aw.test(bZ)?"&":"?")+b8.jsonp+"="+b6}}}b8.converters["script json"]=function(){if(!b5){bG.error(b6+" was not called")}return b5[0]};b8.dataTypes[0]="json";a2[b6]=function(){b5=arguments};b7.always(function(){a2[b6]=e;if(b8[b6]){b8.jsonpCallback=b3.jsonpCallback;bp.push(b6)}if(b5&&bG.isFunction(e)){e(b5[0])}b5=e=aB});return"script"}});bG.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){bG.globalEval(e);return e}}});bG.ajaxPrefilter("script",function(e){if(e.cache===aB){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});bG.ajaxTransport("script",function(b0){if(b0.crossDomain){var e,bZ=o.head||o.getElementsByTagName("head")[0]||o.documentElement;return{send:function(b1,b2){e=o.createElement("script");e.async="async";if(b0.scriptCharset){e.charset=b0.scriptCharset}e.src=b0.url;e.onload=e.onreadystatechange=function(b4,b3){if(b3||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bZ&&e.parentNode){bZ.removeChild(e)}e=aB;if(!b3){b2(200,"success")}}};bZ.insertBefore(e,bZ.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var ah,aO=a2.ActiveXObject?function(){for(var e in ah){ah[e](0,1)}}:false,au=0;function bB(){try{return new a2.XMLHttpRequest()}catch(bZ){}}function bb(){try{return new a2.ActiveXObject("Microsoft.XMLHTTP")}catch(bZ){}}bG.ajaxSettings.xhr=a2.ActiveXObject?function(){return !this.isLocal&&bB()||bb()}:bB;(function(e){bG.extend(bG.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(bG.ajaxSettings.xhr());if(bG.support.ajax){bG.ajaxTransport(function(e){if(!e.crossDomain||bG.support.cors){var bZ;return{send:function(b5,b0){var b3,b2,b4=e.xhr();if(e.username){b4.open(e.type,e.url,e.async,e.username,e.password)}else{b4.open(e.type,e.url,e.async)}if(e.xhrFields){for(b2 in e.xhrFields){b4[b2]=e.xhrFields[b2]}}if(e.mimeType&&b4.overrideMimeType){b4.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!b5["X-Requested-With"]){b5["X-Requested-With"]="XMLHttpRequest"}try{for(b2 in b5){b4.setRequestHeader(b2,b5[b2])}}catch(b1){}b4.send((e.hasContent&&e.data)||null);bZ=function(ce,b8){var b9,b7,b6,cc,cb;try{if(bZ&&(b8||b4.readyState===4)){bZ=aB;if(b3){b4.onreadystatechange=bG.noop;if(aO){delete ah[b3]}}if(b8){if(b4.readyState!==4){b4.abort()}}else{b9=b4.status;b6=b4.getAllResponseHeaders();cc={};cb=b4.responseXML;if(cb&&cb.documentElement){cc.xml=cb}try{cc.text=b4.responseText}catch(ce){}try{b7=b4.statusText}catch(cd){b7=""}if(!b9&&e.isLocal&&!e.crossDomain){b9=cc.text?200:404}else{if(b9===1223){b9=204}}}}}catch(ca){if(!b8){b0(-1,ca)}}if(cc){b0(b9,b7,cc,b6)}};if(!e.async){bZ()}else{if(b4.readyState===4){setTimeout(bZ,0)}else{b3=++au;if(aO){if(!ah){ah={};bG(a2).unload(aO)}ah[b3]=bZ}b4.onreadystatechange=bZ}}},abort:function(){if(bZ){bZ(0,1)}}}}})}var L,ab,bO=/^(?:toggle|show|hide)$/,bH=new RegExp("^(?:([-+])=|)("+bx+")([a-z%]*)$","i"),bM=/queueHooks$/,ax=[i],a1={"*":[function(bZ,b5){var b2,b6,e,b7=this.createTween(bZ,b5),b3=bH.exec(b5),b4=b7.cur(),b0=+b4||0,b1=1;if(b3){b2=+b3[2];b6=b3[3]||(bG.cssNumber[bZ]?"":"px");if(b6!=="px"&&b0){b0=bG.css(b7.elem,bZ,true)||b2||1;do{e=b1=b1||".5";b0=b0/b1;bG.style(b7.elem,bZ,b0+b6);b1=b7.cur()/b4}while(b1!==1&&b1!==e)}b7.unit=b6;b7.start=b0;b7.end=b3[1]?b0+(b3[1]+1)*b2:b2}return b7}]};function bj(){setTimeout(function(){L=aB},0);return(L=bG.now())}function bc(bZ,e){bG.each(e,function(b4,b2){var b3=(a1[b4]||[]).concat(a1["*"]),b0=0,b1=b3.length;for(;b0-1,b7={},b6={},b0,b2;if(b9){b6=b3.position();b0=b6.top;b2=b6.left}else{b0=parseFloat(e)||0;b2=parseFloat(b8)||0}if(bG.isFunction(ca)){ca=ca.call(b1,b4,bZ)}if(ca.top!=null){b7.top=(ca.top-bZ.top)+b0}if(ca.left!=null){b7.left=(ca.left-bZ.left)+b2}if("using" in ca){ca.using.call(b1,b7)}else{b3.css(b7)}}};bG.fn.extend({position:function(){if(!this[0]){return}var b0=this[0],bZ=this.offsetParent(),b1=this.offset(),e=bm.test(bZ[0].nodeName)?{top:0,left:0}:bZ.offset();b1.top-=parseFloat(bG.css(b0,"marginTop"))||0;b1.left-=parseFloat(bG.css(b0,"marginLeft"))||0;e.top+=parseFloat(bG.css(bZ[0],"borderTopWidth"))||0;e.left+=parseFloat(bG.css(bZ[0],"borderLeftWidth"))||0;return{top:b1.top-e.top,left:b1.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.body;while(e&&(!bm.test(e.nodeName)&&bG.css(e,"position")==="static")){e=e.offsetParent}return e||o.body})}});bG.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b0,bZ){var e=/Y/.test(bZ);bG.fn[b0]=function(b1){return bG.access(this,function(b2,b5,b4){var b3=bn(b2);if(b4===aB){return b3?(bZ in b3)?b3[bZ]:b3.document.documentElement[b5]:b2[b5]}if(b3){b3.scrollTo(!e?b4:bG(b3).scrollLeft(),e?b4:bG(b3).scrollTop())}else{b2[b5]=b4}},b0,b1,arguments.length,null)}});function bn(e){return bG.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}bG.each({Height:"height",Width:"width"},function(e,bZ){bG.each({padding:"inner"+e,content:bZ,"":"outer"+e},function(b0,b1){bG.fn[b1]=function(b5,b4){var b3=arguments.length&&(b0||typeof b5!=="boolean"),b2=b0||(b5===true||b4===true?"margin":"border");return bG.access(this,function(b7,b6,b8){var b9;if(bG.isWindow(b7)){return b7.document.documentElement["client"+e]}if(b7.nodeType===9){b9=b7.documentElement;return Math.max(b7.body["scroll"+e],b9["scroll"+e],b7.body["offset"+e],b9["offset"+e],b9["client"+e])}return b8===aB?bG.css(b7,b6,b8,b2):bG.style(b7,b6,b8,b2)},bZ,b3?b5:aB,b3)}})});a2.jQuery=a2.$=bG;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return bG})}})(window);!function(a){a(function(){a.support.transition=(function(){var b=(function(){var e=document.createElement("bootstrap"),d={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in d){if(e.style[c]!==undefined){return d[c]}}}());return b&&{end:b}})()})}(window.jQuery);!function(c){var b='[data-dismiss="alert"]',a=function(d){c(d).on("click",b,this.close)};a.prototype.close=function(i){var h=c(this),f=h.attr("data-target"),g;if(!f){f=h.attr("href");f=f&&f.replace(/.*(?=#[^\s]*$)/,"")}g=c(f);i&&i.preventDefault();g.length||(g=h.hasClass("alert")?h:h.parent());g.trigger(i=c.Event("close"));if(i.isDefaultPrevented()){return}g.removeClass("in");function d(){g.trigger("closed").remove()}c.support.transition&&g.hasClass("fade")?g.on(c.support.transition.end,d):d()};c.fn.alert=function(d){return this.each(function(){var f=c(this),e=f.data("alert");if(!e){f.data("alert",(e=new a(this)))}if(typeof d=="string"){e[d].call(f)}})};c.fn.alert.Constructor=a;c(function(){c("body").on("click.alert.data-api",b,a.prototype.close)})}(window.jQuery);!function(b){var a=function(d,c){this.$element=b(d);this.options=b.extend({},b.fn.button.defaults,c)};a.prototype.setState=function(f){var h="disabled",c=this.$element,e=c.data(),g=c.is("input")?"val":"html";f=f+"Text";e.resetText||c.data("resetText",c[g]());c[g](e[f]||this.options[f]);setTimeout(function(){f=="loadingText"?c.addClass(h).attr(h,h):c.removeClass(h).removeAttr(h)},0)};a.prototype.toggle=function(){var c=this.$element.parent('[data-toggle="buttons-radio"]');c&&c.find(".active").removeClass("active");this.$element.toggleClass("active")};b.fn.button=function(c){return this.each(function(){var f=b(this),e=f.data("button"),d=typeof c=="object"&&c;if(!e){f.data("button",(e=new a(this,d)))}if(c=="toggle"){e.toggle()}else{if(c){e.setState(c)}}})};b.fn.button.defaults={loadingText:"loading..."};b.fn.button.Constructor=a;b(function(){b("body").on("click.button.data-api","[data-toggle^=button]",function(d){var c=b(d.target);if(!c.hasClass("btn")){c=c.closest(".btn")}c.button("toggle")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=c;this.options.slide&&this.slide(this.options.slide);this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(c){if(!c){this.paused=false}this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval));return this},to:function(g){var c=this.$element.find(".item.active"),d=c.parent().children(),e=d.index(c),f=this;if(g>(d.length-1)||g<0){return}if(this.sliding){return this.$element.one("slid",function(){f.to(g)})}if(e==g){return this.pause().cycle()}return this.slide(g>e?"next":"prev",a(d[g]))},pause:function(c){if(!c){this.paused=true}if(this.$element.find(".next, .prev").length&&a.support.transition.end){this.$element.trigger(a.support.transition.end);this.cycle()}clearInterval(this.interval);this.interval=null;return this},next:function(){if(this.sliding){return}return this.slide("next")},prev:function(){if(this.sliding){return}return this.slide("prev")},slide:function(j,d){var l=this.$element.find(".item.active"),c=d||l[j](),i=this.interval,k=j=="next"?"left":"right",f=j=="next"?"first":"last",g=this,h=a.Event("slide",{relatedTarget:c[0]});this.sliding=true;i&&this.pause();c=c.length?c:this.$element.find(".item")[f]();if(c.hasClass("active")){return}if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(h);if(h.isDefaultPrevented()){return}c.addClass(j);c[0].offsetWidth;l.addClass(k);c.addClass(k);this.$element.one(a.support.transition.end,function(){c.removeClass([j,k].join(" ")).addClass("active");l.removeClass(["active",k].join(" "));g.sliding=false;setTimeout(function(){g.$element.trigger("slid")},0)})}else{this.$element.trigger(h);if(h.isDefaultPrevented()){return}l.removeClass("active");c.addClass("active");this.sliding=false;this.$element.trigger("slid")}i&&this.cycle();return this}};a.fn.carousel=function(c){return this.each(function(){var g=a(this),f=g.data("carousel"),d=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c),e=typeof c=="string"?c:d.slide;if(!f){g.data("carousel",(f=new b(this,d)))}if(typeof c=="number"){f.to(c)}else{if(e){f[e]()}else{if(d.interval){f.cycle()}}}})};a.fn.carousel.defaults={interval:5000,pause:"hover"};a.fn.carousel.Constructor=b;a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(h){var g=a(this),d,c=a(g.attr("data-target")||(d=g.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!c.data("modal")&&a.extend({},c.data(),g.data());c.carousel(f);h.preventDefault()})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.collapse.defaults,c);if(this.options.parent){this.$parent=a(this.options.parent)}this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var c=this.$element.hasClass("width");return c?"width":"height"},show:function(){var f,c,e,d;if(this.transitioning){return}f=this.dimension();c=a.camelCase(["scroll",f].join("-"));e=this.$parent&&this.$parent.find("> .accordion-group > .in");if(e&&e.length){d=e.data("collapse");if(d&&d.transitioning){return}e.collapse("hide");d||e.data("collapse",null)}this.$element[f](0);this.transition("addClass",a.Event("show"),"shown");a.support.transition&&this.$element[f](this.$element[0][c])},hide:function(){var c;if(this.transitioning){return}c=this.dimension();this.reset(this.$element[c]());this.transition("removeClass",a.Event("hide"),"hidden");this.$element[c](0)},reset:function(c){var d=this.dimension();this.$element.removeClass("collapse")[d](c||"auto")[0].offsetWidth;this.$element[c!==null?"addClass":"removeClass"]("collapse");return this},transition:function(g,d,e){var f=this,c=function(){if(d.type=="show"){f.reset()}f.transitioning=0;f.$element.trigger(e)};this.$element.trigger(d);if(d.isDefaultPrevented()){return}this.transitioning=1;this.$element[g]("in");a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,c):c()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};a.fn.collapse=function(c){return this.each(function(){var f=a(this),e=f.data("collapse"),d=typeof c=="object"&&c;if(!e){f.data("collapse",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.collapse.defaults={toggle:true};a.fn.collapse.Constructor=b;a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(h){var g=a(this),c,f=g.attr("data-target")||h.preventDefault()||(c=g.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),d=a(f).data("collapse")?"toggle":g.data();g[a(f).hasClass("in")?"addClass":"removeClass"]("collapsed");a(f).collapse(d)})})}(window.jQuery);!function(e){var b="[data-toggle=dropdown]",a=function(g){var f=e(g).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){f.parent().removeClass("open")})};a.prototype={constructor:a,toggle:function(i){var h=e(this),g,f;if(h.is(".disabled, :disabled")){return}g=d(h);f=g.hasClass("open");c();if(!f){g.toggleClass("open");h.focus()}return false},keydown:function(k){var j,l,f,i,h,g;if(!/(38|40|27)/.test(k.keyCode)){return}j=e(this);k.preventDefault();k.stopPropagation();if(j.is(".disabled, :disabled")){return}i=d(j);h=i.hasClass("open");if(!h||(h&&k.keyCode==27)){return j.click()}l=e("[role=menu] li:not(.divider) a",i);if(!l.length){return}g=l.index(l.filter(":focus"));if(k.keyCode==38&&g>0){g--}if(k.keyCode==40&&g').appendTo(document.body);if(this.options.backdrop!="static"){this.$backdrop.click(b.proxy(this.hide,this))}if(c){this.$backdrop[0].offsetWidth}this.$backdrop.addClass("in");c?this.$backdrop.one(b.support.transition.end,f):f()}else{if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");b.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(b.support.transition.end,b.proxy(this.removeBackdrop,this)):this.removeBackdrop()}else{if(f){f()}}}}};b.fn.modal=function(c){return this.each(function(){var f=b(this),e=f.data("modal"),d=b.extend({},b.fn.modal.defaults,f.data(),typeof c=="object"&&c);if(!e){f.data("modal",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}else{if(d.show){e.show()}}})};b.fn.modal.defaults={backdrop:true,keyboard:true,show:true};b.fn.modal.Constructor=a;b(function(){b("body").on("click.modal.data-api",'[data-toggle="modal"]',function(h){var g=b(this),d=g.attr("href"),c=b(g.attr("data-target")||(d&&d.replace(/.*(?=#[^\s]+$)/,""))),f=c.data("modal")?"toggle":b.extend({remote:!/#/.test(d)&&d},c.data(),g.data());h.preventDefault();c.modal(f).one("hide",function(){g.focus()})})})}(window.jQuery);!function(b){var a=function(d,c){this.init("tooltip",d,c)};a.prototype={constructor:a,init:function(f,e,d){var g,c;this.type=f;this.$element=b(e);this.options=this.getOptions(d);this.enabled=true;if(this.options.trigger=="click"){this.$element.on("click."+this.type,this.options.selector,b.proxy(this.toggle,this))}else{if(this.options.trigger!="manual"){g=this.options.trigger=="hover"?"mouseenter":"focus";c=this.options.trigger=="hover"?"mouseleave":"blur";this.$element.on(g+"."+this.type,this.options.selector,b.proxy(this.enter,this));this.$element.on(c+"."+this.type,this.options.selector,b.proxy(this.leave,this))}}this.options.selector?(this._options=b.extend({},this.options,{trigger:"manual",selector:""})):this.fixTitle()},getOptions:function(c){c=b.extend({},b.fn[this.type].defaults,c,this.$element.data());if(c.delay&&typeof c.delay=="number"){c.delay={show:c.delay,hide:c.delay}}return c},enter:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show){return c.show()}clearTimeout(this.timeout);c.hoverState="in";this.timeout=setTimeout(function(){if(c.hoverState=="in"){c.show()}},c.options.delay.show)},leave:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(this.timeout){clearTimeout(this.timeout)}if(!c.options.delay||!c.options.delay.hide){return c.hide()}c.hoverState="out";this.timeout=setTimeout(function(){if(c.hoverState=="out"){c.hide()}},c.options.delay.hide)},show:function(){var g,c,i,e,h,d,f;if(this.hasContent()&&this.enabled){g=this.tip();this.setContent();if(this.options.animation){g.addClass("fade")}d=typeof this.options.placement=="function"?this.options.placement.call(this,g[0],this.$element[0]):this.options.placement;c=/in/.test(d);g.remove().css({top:0,left:0,display:"block"}).appendTo(c?this.$element:document.body);i=this.getPosition(c);e=g[0].offsetWidth;h=g[0].offsetHeight;switch(c?d.split(" ")[1]:d){case"bottom":f={top:i.top+i.height,left:i.left+i.width/2-e/2};break;case"top":f={top:i.top-h,left:i.left+i.width/2-e/2};break;case"left":f={top:i.top+i.height/2-h/2,left:i.left-e};break;case"right":f={top:i.top+i.height/2-h/2,left:i.left+i.width};break}g.css(f).addClass(d).addClass("in")}},setContent:function(){var d=this.tip(),c=this.getTitle();d.find(".tooltip-inner")[this.options.html?"html":"text"](c);d.removeClass("fade in top bottom left right")},hide:function(){var c=this,d=this.tip();d.removeClass("in");function e(){var f=setTimeout(function(){d.off(b.support.transition.end).remove()},500);d.one(b.support.transition.end,function(){clearTimeout(f);d.remove()})}b.support.transition&&this.$tip.hasClass("fade")?e():d.remove();return this},fixTitle:function(){var c=this.$element;if(c.attr("title")||typeof(c.attr("data-original-title"))!="string"){c.attr("data-original-title",c.attr("title")||"").removeAttr("title")}},hasContent:function(){return this.getTitle()},getPosition:function(c){return b.extend({},(c?{top:0,left:0}:this.$element.offset()),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var e,c=this.$element,d=this.options;e=c.attr("data-original-title")||(typeof d.title=="function"?d.title.call(c[0]):d.title);return e},tip:function(){return this.$tip=this.$tip||b(this.options.template)},validate:function(){if(!this.$element[0].parentNode){this.hide();this.$element=null;this.options=null}},enable:function(){this.enabled=true},disable:function(){this.enabled=false},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}};b.fn.tooltip=function(c){return this.each(function(){var f=b(this),e=f.data("tooltip"),d=typeof c=="object"&&c;if(!e){f.data("tooltip",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.tooltip.Constructor=a;b.fn.tooltip.defaults={animation:true,placement:"top",selector:false,template:'
    ',trigger:"hover",title:"",delay:0,html:true}}(window.jQuery);!function(b){var a=function(d,c){this.init("popover",d,c)};a.prototype=b.extend({},b.fn.tooltip.Constructor.prototype,{constructor:a,setContent:function(){var e=this.tip(),d=this.getTitle(),c=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](d);e.find(".popover-content > *")[this.options.html?"html":"text"](c);e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var d,c=this.$element,e=this.options;d=c.attr("data-content")||(typeof e.content=="function"?e.content.call(c[0]):e.content);return d},tip:function(){if(!this.$tip){this.$tip=b(this.options.template)}return this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}});b.fn.popover=function(c){return this.each(function(){var f=b(this),e=f.data("popover"),d=typeof c=="object"&&c;if(!e){f.data("popover",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.popover.Constructor=a;b.fn.popover.defaults=b.extend({},b.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'

    '})}(window.jQuery);!function(b){function a(f,e){var g=b.proxy(this.process,this),c=b(f).is("body")?b(window):b(f),d;this.options=b.extend({},b.fn.scrollspy.defaults,e);this.$scrollElement=c.on("scroll.scroll-spy.data-api",g);this.selector=(this.options.target||((d=b(f).attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""))||"")+" .nav li > a";this.$body=b("body");this.refresh();this.process()}a.prototype={constructor:a,refresh:function(){var c=this,d;this.offsets=b([]);this.targets=b([]);d=this.$body.find(this.selector).map(function(){var f=b(this),e=f.data("target")||f.attr("href"),g=/^#\w/.test(e)&&b(e);return(g&&g.length&&[[g.position().top,e]])||null}).sort(function(f,e){return f[0]-e[0]}).each(function(){c.offsets.push(this[0]);c.targets.push(this[1])})},process:function(){var h=this.$scrollElement.scrollTop()+this.options.offset,e=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,g=e-this.$scrollElement.height(),f=this.offsets,c=this.targets,j=this.activeTarget,d;if(h>=g){return j!=(d=c.last()[0])&&this.activate(d)}for(d=f.length;d--;){j!=c[d]&&h>=f[d]&&(!f[d+1]||h<=f[d+1])&&this.activate(c[d])}},activate:function(e){var d,c;this.activeTarget=e;b(this.selector).parent(".active").removeClass("active");c=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]';d=b(c).parent("li").addClass("active");if(d.parent(".dropdown-menu").length){d=d.closest("li.dropdown").addClass("active")}d.trigger("activate")}};b.fn.scrollspy=function(c){return this.each(function(){var f=b(this),e=f.data("scrollspy"),d=typeof c=="object"&&c;if(!e){f.data("scrollspy",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.scrollspy.Constructor=a;b.fn.scrollspy.defaults={offset:10};b(window).on("load",function(){b('[data-spy="scroll"]').each(function(){var c=b(this);c.scrollspy(c.data())})})}(window.jQuery);!function(b){var a=function(c){this.element=b(c)};a.prototype={constructor:a,show:function(){var i=this.element,f=i.closest("ul:not(.dropdown-menu)"),d=i.attr("data-target"),g,c,h;if(!d){d=i.attr("href");d=d&&d.replace(/.*(?=#[^\s]*$)/,"")}if(i.parent("li").hasClass("active")){return}g=f.find(".active a").last()[0];h=b.Event("show",{relatedTarget:g});i.trigger(h);if(h.isDefaultPrevented()){return}c=b(d);this.activate(i.parent("li"),f);this.activate(c,c.parent(),function(){i.trigger({type:"shown",relatedTarget:g})})},activate:function(e,d,h){var c=d.find("> .active"),g=h&&b.support.transition&&c.hasClass("fade");function f(){c.removeClass("active").find("> .dropdown-menu > .active").removeClass("active");e.addClass("active");if(g){e[0].offsetWidth;e.addClass("in")}else{e.removeClass("fade")}if(e.parent(".dropdown-menu")){e.closest("li.dropdown").addClass("active")}h&&h()}g?c.one(b.support.transition.end,f):f();c.removeClass("in")}};b.fn.tab=function(c){return this.each(function(){var e=b(this),d=e.data("tab");if(!d){e.data("tab",(d=new a(this)))}if(typeof c=="string"){d[c]()}})};b.fn.tab.Constructor=a;b(function(){b("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(c){c.preventDefault();b(this).tab("show")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.typeahead.defaults,c);this.matcher=this.options.matcher||this.matcher;this.sorter=this.options.sorter||this.sorter;this.highlighter=this.options.highlighter||this.highlighter;this.updater=this.options.updater||this.updater;this.$menu=a(this.options.menu).appendTo("body");this.source=this.options.source;this.shown=false;this.listen()};b.prototype={constructor:b,select:function(){var c=this.$menu.find(".active").attr("data-value");this.$element.val(this.updater(c)).change();return this.hide()},updater:function(c){return c},show:function(){var c=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});this.$menu.css({top:c.top+c.height,left:c.left});this.$menu.show();this.shown=true;return this},hide:function(){this.$menu.hide();this.shown=false;return this},lookup:function(d){var c;this.query=this.$element.val();if(!this.query||this.query.length"+f+""})},render:function(c){var d=this;c=a(c).map(function(e,f){e=a(d.options.item).attr("data-value",f);e.find("a").html(d.highlighter(f));return e[0]});c.first().addClass("active");this.$menu.html(c);return this},next:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.next();if(!c.length){c=a(this.$menu.find("li")[0])}c.addClass("active")},prev:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.prev();if(!c.length){c=this.$menu.find("li").last()}c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this));if(a.browser.webkit||a.browser.msie){this.$element.on("keydown",a.proxy(this.keydown,this))}this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},move:function(c){if(!this.shown){return}switch(c.keyCode){case 9:case 13:case 27:c.preventDefault();break;case 38:c.preventDefault();this.prev();break;case 40:c.preventDefault();this.next();break}c.stopPropagation()},keydown:function(c){this.suppressKeyPressRepeat=!~a.inArray(c.keyCode,[40,38,9,13,27]);this.move(c)},keypress:function(c){if(this.suppressKeyPressRepeat){return}this.move(c)},keyup:function(c){switch(c.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown){return}this.select();break;case 27:if(!this.shown){return}this.hide();break;default:this.lookup()}c.stopPropagation();c.preventDefault()},blur:function(d){var c=this;setTimeout(function(){c.hide()},150)},click:function(c){c.stopPropagation();c.preventDefault();this.select()},mouseenter:function(c){this.$menu.find(".active").removeClass("active");a(c.currentTarget).addClass("active")}};a.fn.typeahead=function(c){return this.each(function(){var f=a(this),e=f.data("typeahead"),d=typeof c=="object"&&c;if(!e){f.data("typeahead",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1};a.fn.typeahead.Constructor=b;a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(d){var c=a(this);if(c.data("typeahead")){return}d.preventDefault();c.typeahead(c.data())})})}(window.jQuery);!function(b){var a=function(d,c){this.options=b.extend({},b.fn.affix.defaults,c);this.$window=b(window).on("scroll.affix.data-api",b.proxy(this.checkPosition,this));this.$element=b(d);this.checkPosition()};a.prototype.checkPosition=function(){if(!this.$element.is(":visible")){return}var g=b(document).height(),i=this.$window.scrollTop(),c=this.$element.offset(),j=this.options.offset,e=j.bottom,f=j.top,h="affix affix-top affix-bottom",d;if(typeof j!="object"){e=f=j}if(typeof f=="function"){f=j.top()}if(typeof e=="function"){e=j.bottom()}d=this.unpin!=null&&(i+this.unpin<=c.top)?false:e!=null&&(c.top+this.$element.height()>=g-e)?"bottom":f!=null&&i<=f?"top":false;if(this.affixed===d){return}this.affixed=d;this.unpin=d=="bottom"?c.top-i:null;this.$element.removeClass(h).addClass("affix"+(d?"-"+d:""))};b.fn.affix=function(c){return this.each(function(){var f=b(this),e=f.data("affix"),d=typeof c=="object"&&c;if(!e){f.data("affix",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.affix.Constructor=a;b.fn.affix.defaults={offset:0};b(window).on("load",function(){b('[data-spy="affix"]').each(function(){var d=b(this),c=d.data();c.offset=c.offset||{};c.offsetBottom&&(c.offset.bottom=c.offsetBottom);c.offsetTop&&(c.offset.top=c.offsetTop);d.affix(c)})})}(window.jQuery);var q=null;window.PR_SHOULD_USE_CONTINUATION=!0;(function(){function d(F){function w(J){var K=J.charCodeAt(0);if(K!==92){return K}var I=J.charAt(1);return(K=k[I])?K:"0"<=I&&I<="7"?parseInt(J.substring(1),8):I==="u"||I==="x"?parseInt(J.substring(2),16):J.charCodeAt(1)}function C(I){if(I<32){return(I<16?"\\x0":"\\x")+I.toString(16)}I=String.fromCharCode(I);if(I==="\\"||I==="-"||I==="["||I==="]"){I="\\"+I}return I}function A(J){for(var M=J.substring(1,J.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),J=[],I=[],O=M[0]==="^",P=O?1:0,L=M.length;P122||(N<65||K>90||I.push([Math.max(65,K)|32,Math.min(N,90)|32]),N<97||K>122||I.push([Math.max(97,K)&-33,Math.min(N,122)&-33]))}}I.sort(function(Q,R){return Q[0]-R[0]||R[1]-Q[1]});M=[];K=[NaN,NaN];for(P=0;PL[0]&&(L[1]+1>L[0]&&I.push("-"),I.push(C(L[1])))}I.push("]");return I.join("")}function E(J){for(var M=J.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),I=M.length,N=[],O=0,L=0;O=2&&J==="["?M[O]=A(K):J!=="\\"&&(M[O]=K.replace(/[A-Za-z]/g,function(P){P=P.charCodeAt(0);return"["+String.fromCharCode(P&-33,P|32)+"]"}))}}return M.join("")}for(var G=0,H=!1,x=!1,u=0,D=F.length;u=5&&"lang-"===O.substring(0,5))&&!(D&&typeof D[1]==="string")){M=!1,O="src"}M||(B[K]=O)}I=L;L+=K.length;if(M){M=D[1];var H=K.indexOf(M),G=H+M.length;D[2]&&(G=K.length-D[2].length,H=G-M.length);O=O.substring(5);t(F+I,K.substring(0,H),x,C);t(F+I+H,M,s(O,M),C);t(F+I+G,K.substring(G),x,C)}else{C.push(F+I,O)}}P.e=C}var w={},A;(function(){for(var G=u.concat(k),B=[],F={},H=0,E=G.length;H=0;){w[I.charAt(C)]=D}}D=D[1];I=""+D;F.hasOwnProperty(I)||(B.push(D),F[I]=q)}B.push(/[\S\s]/);A=d(B)})();var v=k.length;return x}function o(u){var k=[],w=[];u.tripleQuotedStrings?k.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):u.multiLineStrings?k.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,q,"'\"`"]):k.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]);u.verbatimStrings&&w.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var v=u.hashComments;v&&(u.cStyleComments?(v>1?k.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):k.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),w.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):k.push(["com",/^#[^\n\r]*/,q,"#"]));u.cStyleComments&&(w.push(["com",/^\/\/[^\n\r]*/,q]),w.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q]));u.regexLiterals&&w.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]);(v=u.types)&&w.push(["typ",v]);u=(""+u.keywords).replace(/^ | $/g,"");u.length&&w.push(["kwd",RegExp("^(?:"+u.replace(/[\s,]+/g,"|")+")\\b"),q]);k.push(["pln",/^\s+/,q," \r\n\t\xa0"]);w.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]);return h(k,w)}function r(H,x){function E(K){switch(K.nodeType){case 1:if(B.test(K.className)){break}if("BR"===K.nodeName){C(K),K.parentNode&&K.parentNode.removeChild(K)}else{for(K=K.firstChild;K;K=K.nextSibling){E(K)}}break;case 3:case 4:if(v){var k=K.nodeValue,L=k.match(I);if(L){var M=k.substring(0,L.index);K.nodeValue=M;(k=k.substring(L.index+L[0].length))&&K.parentNode.insertBefore(J.createTextNode(k),K.nextSibling);C(K);M||K.parentNode.removeChild(K)}}}}function C(K){function k(M,R){var Q=R?M.cloneNode(!1):M,P=M.parentNode;if(P){var P=k(P,1),O=M.nextSibling;P.appendChild(Q);for(var N=O;N;N=O){O=N.nextSibling,P.appendChild(N)}}return Q}for(;!K.nextSibling;){if(K=K.parentNode,!K){return}}for(var K=k(K.nextSibling,0),L;(L=K.parentNode)&&L.nodeType===1;){K=L}F.push(K)}var B=/(?:^|\s)nocode(?:\s|$)/,I=/\r\n?|\n/,J=H.ownerDocument,A;H.currentStyle?A=H.currentStyle.whiteSpace:window.getComputedStyle&&(A=J.defaultView.getComputedStyle(H,q).getPropertyValue("white-space"));var v=A&&"pre"===A.substring(0,3);for(A=J.createElement("LI");H.firstChild;){A.appendChild(H.firstChild)}for(var F=[A],D=0;D=0;){var v=k[w];y.hasOwnProperty(v)?window.console&&console.warn("cannot override language handler %s",v):y[v]=u}}function s(u,k){if(!u||!y.hasOwnProperty(u)){u=/^\s*=J&&(Q+=2);T>=V&&(X+=2)}}catch(C){"console" in window&&console.log(C&&C.stack?C.stack:C)}}var m=["break,continue,do,else,for,if,return,while"],j=[[m,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],n=[j,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],l=[j,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],i=[l,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],j=[j,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],g=[m,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],f=[m,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],m=[m,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,b=/\S/,a=o({keywords:[n,i,j,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+g,f,m],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),y={};z(a,["default-code"]);z(h([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);z(h([["pln",/^\s+/,q," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);z(h([],[["atv",/^[\S\s]+/]]),["uq.val"]);z(o({keywords:n,hashComments:!0,cStyleComments:!0,types:e}),["c","cc","cpp","cxx","cyc","m"]);z(o({keywords:"null,true,false"}),["json"]);z(o({keywords:i,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:e}),["cs"]);z(o({keywords:l,cStyleComments:!0}),["java"]);z(o({keywords:m,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]);z(o({keywords:g,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]);z(o({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]);z(o({keywords:f,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]);z(o({keywords:j,cStyleComments:!0,regexLiterals:!0}),["js"]);z(o({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);z(h([],[["str",/^[\S\s]+/]]),["regex"]);window.prettyPrintOne=function(u,k,w){var v=document.createElement("PRE");v.innerHTML=u;w&&r(v,w);p({g:k,i:w,h:v});return v.innerHTML};window.prettyPrint=function(E){function v(){for(var L=window.PR_SHOULD_USE_CONTINUATION?w.now()+250:Infinity;u=0){var I=I.match(B),K,H;if(H=!I){H=O;for(var M=void 0,N=H.firstChild;N;N=N.nextSibling){var J=N.nodeType,M=J===1?M?H:N:J===3?b.test(N.nodeValue)?H:M:M}H=(K=M===H?void 0:M)&&"CODE"===K.tagName}H&&(I=K.className.match(B));I&&(I=I[1]);H=!1;for(M=O.parentNode;M;M=M.parentNode){if((M.tagName==="pre"||M.tagName==="code"||M.tagName==="xmp")&&M.className&&M.className.indexOf("prettyprint")>=0){H=!0;break}}H||((H=(H=O.className.match(/\blinenums\b(?::(\d+))?/))?H[1]&&H[1].length?+H[1]:!0:!1)&&r(O,H),D={g:I,h:O,i:H},p(D))}}u + + + + + + + + dependency-check-core - Project License + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    +
    +

    Overview

    +

    Typically the licenses listed for the project are that of the project itself, and not of dependencies.

    +
    +

    Project License

    +
    +

    GNU General Public License version 3

    +
    +
                        GNU GENERAL PUBLIC LICENSE 
    +                       Version 3, 29 June 2007
    +
    + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
    + Everyone is permitted to copy and distribute verbatim copies
    + of this license document, but changing it is not allowed.
    +
    +                            Preamble
    +
    +  The GNU General Public License is a free, copyleft license for
    +software and other kinds of works.
    +
    +  The licenses for most software and other practical works are designed
    +to take away your freedom to share and change the works.  By contrast,
    +the GNU General Public License is intended to guarantee your freedom to
    +share and change all versions of a program--to make sure it remains free
    +software for all its users.  We, the Free Software Foundation, use the
    +GNU General Public License for most of our software; it applies also to
    +any other work released this way by its authors.  You can apply it to
    +your programs, too.
    +
    +  When we speak of free software, we are referring to freedom, not
    +price.  Our General Public Licenses are designed to make sure that you
    +have the freedom to distribute copies of free software (and charge for
    +them if you wish), that you receive source code or can get it if you
    +want it, that you can change the software or use pieces of it in new
    +free programs, and that you know you can do these things.
    +
    +  To protect your rights, we need to prevent others from denying you
    +these rights or asking you to surrender the rights.  Therefore, you have
    +certain responsibilities if you distribute copies of the software, or if
    +you modify it: responsibilities to respect the freedom of others.
    +
    +  For example, if you distribute copies of such a program, whether
    +gratis or for a fee, you must pass on to the recipients the same
    +freedoms that you received.  You must make sure that they, too, receive
    +or can get the source code.  And you must show them these terms so they
    +know their rights.
    +
    +  Developers that use the GNU GPL protect your rights with two steps:
    +(1) assert copyright on the software, and (2) offer you this License
    +giving you legal permission to copy, distribute and/or modify it.
    +
    +  For the developers' and authors' protection, the GPL clearly explains
    +that there is no warranty for this free software.  For both users' and
    +authors' sake, the GPL requires that modified versions be marked as
    +changed, so that their problems will not be attributed erroneously to
    +authors of previous versions.
    +
    +  Some devices are designed to deny users access to install or run
    +modified versions of the software inside them, although the manufacturer
    +can do so.  This is fundamentally incompatible with the aim of
    +protecting users' freedom to change the software.  The systematic
    +pattern of such abuse occurs in the area of products for individuals to
    +use, which is precisely where it is most unacceptable.  Therefore, we
    +have designed this version of the GPL to prohibit the practice for those
    +products.  If such problems arise substantially in other domains, we
    +stand ready to extend this provision to those domains in future versions
    +of the GPL, as needed to protect the freedom of users.
    +
    +  Finally, every program is threatened constantly by software patents.
    +States should not allow patents to restrict development and use of
    +software on general-purpose computers, but in those that do, we wish to
    +avoid the special danger that patents applied to a free program could
    +make it effectively proprietary.  To prevent this, the GPL assures that
    +patents cannot be used to render the program non-free.
    +
    +  The precise terms and conditions for copying, distribution and
    +modification follow.
    +
    +                       TERMS AND CONDITIONS
    +
    +  0. Definitions.
    +
    +  "This License" refers to version 3 of the GNU General Public License.
    +
    +  "Copyright" also means copyright-like laws that apply to other kinds of
    +works, such as semiconductor masks.
    +
    +  "The Program" refers to any copyrightable work licensed under this
    +License.  Each licensee is addressed as "you".  "Licensees" and
    +"recipients" may be individuals or organizations.
    +
    +  To "modify" a work means to copy from or adapt all or part of the work
    +in a fashion requiring copyright permission, other than the making of an
    +exact copy.  The resulting work is called a "modified version" of the
    +earlier work or a work "based on" the earlier work.
    +
    +  A "covered work" means either the unmodified Program or a work based
    +on the Program.
    +
    +  To "propagate" a work means to do anything with it that, without
    +permission, would make you directly or secondarily liable for
    +infringement under applicable copyright law, except executing it on a
    +computer or modifying a private copy.  Propagation includes copying,
    +distribution (with or without modification), making available to the
    +public, and in some countries other activities as well.
    +
    +  To "convey" a work means any kind of propagation that enables other
    +parties to make or receive copies.  Mere interaction with a user through
    +a computer network, with no transfer of a copy, is not conveying.
    +
    +  An interactive user interface displays "Appropriate Legal Notices"
    +to the extent that it includes a convenient and prominently visible
    +feature that (1) displays an appropriate copyright notice, and (2)
    +tells the user that there is no warranty for the work (except to the
    +extent that warranties are provided), that licensees may convey the
    +work under this License, and how to view a copy of this License.  If
    +the interface presents a list of user commands or options, such as a
    +menu, a prominent item in the list meets this criterion.
    +
    +  1. Source Code.
    +
    +  The "source code" for a work means the preferred form of the work
    +for making modifications to it.  "Object code" means any non-source
    +form of a work.
    +
    +  A "Standard Interface" means an interface that either is an official
    +standard defined by a recognized standards body, or, in the case of
    +interfaces specified for a particular programming language, one that
    +is widely used among developers working in that language.
    +
    +  The "System Libraries" of an executable work include anything, other
    +than the work as a whole, that (a) is included in the normal form of
    +packaging a Major Component, but which is not part of that Major
    +Component, and (b) serves only to enable use of the work with that
    +Major Component, or to implement a Standard Interface for which an
    +implementation is available to the public in source code form.  A
    +"Major Component", in this context, means a major essential component
    +(kernel, window system, and so on) of the specific operating system
    +(if any) on which the executable work runs, or a compiler used to
    +produce the work, or an object code interpreter used to run it.
    +
    +  The "Corresponding Source" for a work in object code form means all
    +the source code needed to generate, install, and (for an executable
    +work) run the object code and to modify the work, including scripts to
    +control those activities.  However, it does not include the work's
    +System Libraries, or general-purpose tools or generally available free
    +programs which are used unmodified in performing those activities but
    +which are not part of the work.  For example, Corresponding Source
    +includes interface definition files associated with source files for
    +the work, and the source code for shared libraries and dynamically
    +linked subprograms that the work is specifically designed to require,
    +such as by intimate data communication or control flow between those
    +subprograms and other parts of the work.
    +
    +  The Corresponding Source need not include anything that users
    +can regenerate automatically from other parts of the Corresponding
    +Source.
    +
    +  The Corresponding Source for a work in source code form is that
    +same work.
    +
    +  2. Basic Permissions.
    +
    +  All rights granted under this License are granted for the term of
    +copyright on the Program, and are irrevocable provided the stated
    +conditions are met.  This License explicitly affirms your unlimited
    +permission to run the unmodified Program.  The output from running a
    +covered work is covered by this License only if the output, given its
    +content, constitutes a covered work.  This License acknowledges your
    +rights of fair use or other equivalent, as provided by copyright law.
    +
    +  You may make, run and propagate covered works that you do not
    +convey, without conditions so long as your license otherwise remains
    +in force.  You may convey covered works to others for the sole purpose
    +of having them make modifications exclusively for you, or provide you
    +with facilities for running those works, provided that you comply with
    +the terms of this License in conveying all material for which you do
    +not control copyright.  Those thus making or running the covered works
    +for you must do so exclusively on your behalf, under your direction
    +and control, on terms that prohibit them from making any copies of
    +your copyrighted material outside their relationship with you.
    +
    +  Conveying under any other circumstances is permitted solely under
    +the conditions stated below.  Sublicensing is not allowed; section 10
    +makes it unnecessary.
    +
    +  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
    +
    +  No covered work shall be deemed part of an effective technological
    +measure under any applicable law fulfilling obligations under article
    +11 of the WIPO copyright treaty adopted on 20 December 1996, or
    +similar laws prohibiting or restricting circumvention of such
    +measures.
    +
    +  When you convey a covered work, you waive any legal power to forbid
    +circumvention of technological measures to the extent such circumvention
    +is effected by exercising rights under this License with respect to
    +the covered work, and you disclaim any intention to limit operation or
    +modification of the work as a means of enforcing, against the work's
    +users, your or third parties' legal rights to forbid circumvention of
    +technological measures.
    +
    +  4. Conveying Verbatim Copies.
    +
    +  You may convey verbatim copies of the Program's source code as you
    +receive it, in any medium, provided that you conspicuously and
    +appropriately publish on each copy an appropriate copyright notice;
    +keep intact all notices stating that this License and any
    +non-permissive terms added in accord with section 7 apply to the code;
    +keep intact all notices of the absence of any warranty; and give all
    +recipients a copy of this License along with the Program.
    +
    +  You may charge any price or no price for each copy that you convey,
    +and you may offer support or warranty protection for a fee.
    +
    +  5. Conveying Modified Source Versions.
    +
    +  You may convey a work based on the Program, or the modifications to
    +produce it from the Program, in the form of source code under the
    +terms of section 4, provided that you also meet all of these conditions:
    +
    +    a) The work must carry prominent notices stating that you modified
    +    it, and giving a relevant date.
    +
    +    b) The work must carry prominent notices stating that it is
    +    released under this License and any conditions added under section
    +    7.  This requirement modifies the requirement in section 4 to
    +    "keep intact all notices".
    +
    +    c) You must license the entire work, as a whole, under this
    +    License to anyone who comes into possession of a copy.  This
    +    License will therefore apply, along with any applicable section 7
    +    additional terms, to the whole of the work, and all its parts,
    +    regardless of how they are packaged.  This License gives no
    +    permission to license the work in any other way, but it does not
    +    invalidate such permission if you have separately received it.
    +
    +    d) If the work has interactive user interfaces, each must display
    +    Appropriate Legal Notices; however, if the Program has interactive
    +    interfaces that do not display Appropriate Legal Notices, your
    +    work need not make them do so.
    +
    +  A compilation of a covered work with other separate and independent
    +works, which are not by their nature extensions of the covered work,
    +and which are not combined with it such as to form a larger program,
    +in or on a volume of a storage or distribution medium, is called an
    +"aggregate" if the compilation and its resulting copyright are not
    +used to limit the access or legal rights of the compilation's users
    +beyond what the individual works permit.  Inclusion of a covered work
    +in an aggregate does not cause this License to apply to the other
    +parts of the aggregate.
    +
    +  6. Conveying Non-Source Forms.
    +
    +  You may convey a covered work in object code form under the terms
    +of sections 4 and 5, provided that you also convey the
    +machine-readable Corresponding Source under the terms of this License,
    +in one of these ways:
    +
    +    a) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by the
    +    Corresponding Source fixed on a durable physical medium
    +    customarily used for software interchange.
    +
    +    b) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by a
    +    written offer, valid for at least three years and valid for as
    +    long as you offer spare parts or customer support for that product
    +    model, to give anyone who possesses the object code either (1) a
    +    copy of the Corresponding Source for all the software in the
    +    product that is covered by this License, on a durable physical
    +    medium customarily used for software interchange, for a price no
    +    more than your reasonable cost of physically performing this
    +    conveying of source, or (2) access to copy the
    +    Corresponding Source from a network server at no charge.
    +
    +    c) Convey individual copies of the object code with a copy of the
    +    written offer to provide the Corresponding Source.  This
    +    alternative is allowed only occasionally and noncommercially, and
    +    only if you received the object code with such an offer, in accord
    +    with subsection 6b.
    +
    +    d) Convey the object code by offering access from a designated
    +    place (gratis or for a charge), and offer equivalent access to the
    +    Corresponding Source in the same way through the same place at no
    +    further charge.  You need not require recipients to copy the
    +    Corresponding Source along with the object code.  If the place to
    +    copy the object code is a network server, the Corresponding Source
    +    may be on a different server (operated by you or a third party)
    +    that supports equivalent copying facilities, provided you maintain
    +    clear directions next to the object code saying where to find the
    +    Corresponding Source.  Regardless of what server hosts the
    +    Corresponding Source, you remain obligated to ensure that it is
    +    available for as long as needed to satisfy these requirements.
    +
    +    e) Convey the object code using peer-to-peer transmission, provided
    +    you inform other peers where the object code and Corresponding
    +    Source of the work are being offered to the general public at no
    +    charge under subsection 6d.
    +
    +  A separable portion of the object code, whose source code is excluded
    +from the Corresponding Source as a System Library, need not be
    +included in conveying the object code work.
    +
    +  A "User Product" is either (1) a "consumer product", which means any
    +tangible personal property which is normally used for personal, family,
    +or household purposes, or (2) anything designed or sold for incorporation
    +into a dwelling.  In determining whether a product is a consumer product,
    +doubtful cases shall be resolved in favor of coverage.  For a particular
    +product received by a particular user, "normally used" refers to a
    +typical or common use of that class of product, regardless of the status
    +of the particular user or of the way in which the particular user
    +actually uses, or expects or is expected to use, the product.  A product
    +is a consumer product regardless of whether the product has substantial
    +commercial, industrial or non-consumer uses, unless such uses represent
    +the only significant mode of use of the product.
    +
    +  "Installation Information" for a User Product means any methods,
    +procedures, authorization keys, or other information required to install
    +and execute modified versions of a covered work in that User Product from
    +a modified version of its Corresponding Source.  The information must
    +suffice to ensure that the continued functioning of the modified object
    +code is in no case prevented or interfered with solely because
    +modification has been made.
    +
    +  If you convey an object code work under this section in, or with, or
    +specifically for use in, a User Product, and the conveying occurs as
    +part of a transaction in which the right of possession and use of the
    +User Product is transferred to the recipient in perpetuity or for a
    +fixed term (regardless of how the transaction is characterized), the
    +Corresponding Source conveyed under this section must be accompanied
    +by the Installation Information.  But this requirement does not apply
    +if neither you nor any third party retains the ability to install
    +modified object code on the User Product (for example, the work has
    +been installed in ROM).
    +
    +  The requirement to provide Installation Information does not include a
    +requirement to continue to provide support service, warranty, or updates
    +for a work that has been modified or installed by the recipient, or for
    +the User Product in which it has been modified or installed.  Access to a
    +network may be denied when the modification itself materially and
    +adversely affects the operation of the network or violates the rules and
    +protocols for communication across the network.
    +
    +  Corresponding Source conveyed, and Installation Information provided,
    +in accord with this section must be in a format that is publicly
    +documented (and with an implementation available to the public in
    +source code form), and must require no special password or key for
    +unpacking, reading or copying.
    +
    +  7. Additional Terms.
    +
    +  "Additional permissions" are terms that supplement the terms of this
    +License by making exceptions from one or more of its conditions.
    +Additional permissions that are applicable to the entire Program shall
    +be treated as though they were included in this License, to the extent
    +that they are valid under applicable law.  If additional permissions
    +apply only to part of the Program, that part may be used separately
    +under those permissions, but the entire Program remains governed by
    +this License without regard to the additional permissions.
    +
    +  When you convey a copy of a covered work, you may at your option
    +remove any additional permissions from that copy, or from any part of
    +it.  (Additional permissions may be written to require their own
    +removal in certain cases when you modify the work.)  You may place
    +additional permissions on material, added by you to a covered work,
    +for which you have or can give appropriate copyright permission.
    +
    +  Notwithstanding any other provision of this License, for material you
    +add to a covered work, you may (if authorized by the copyright holders of
    +that material) supplement the terms of this License with terms:
    +
    +    a) Disclaiming warranty or limiting liability differently from the
    +    terms of sections 15 and 16 of this License; or
    +
    +    b) Requiring preservation of specified reasonable legal notices or
    +    author attributions in that material or in the Appropriate Legal
    +    Notices displayed by works containing it; or
    +
    +    c) Prohibiting misrepresentation of the origin of that material, or
    +    requiring that modified versions of such material be marked in
    +    reasonable ways as different from the original version; or
    +
    +    d) Limiting the use for publicity purposes of names of licensors or
    +    authors of the material; or
    +
    +    e) Declining to grant rights under trademark law for use of some
    +    trade names, trademarks, or service marks; or
    +
    +    f) Requiring indemnification of licensors and authors of that
    +    material by anyone who conveys the material (or modified versions of
    +    it) with contractual assumptions of liability to the recipient, for
    +    any liability that these contractual assumptions directly impose on
    +    those licensors and authors.
    +
    +  All other non-permissive additional terms are considered "further
    +restrictions" within the meaning of section 10.  If the Program as you
    +received it, or any part of it, contains a notice stating that it is
    +governed by this License along with a term that is a further
    +restriction, you may remove that term.  If a license document contains
    +a further restriction but permits relicensing or conveying under this
    +License, you may add to a covered work material governed by the terms
    +of that license document, provided that the further restriction does
    +not survive such relicensing or conveying.
    +
    +  If you add terms to a covered work in accord with this section, you
    +must place, in the relevant source files, a statement of the
    +additional terms that apply to those files, or a notice indicating
    +where to find the applicable terms.
    +
    +  Additional terms, permissive or non-permissive, may be stated in the
    +form of a separately written license, or stated as exceptions;
    +the above requirements apply either way.
    +
    +  8. Termination.
    +
    +  You may not propagate or modify a covered work except as expressly
    +provided under this License.  Any attempt otherwise to propagate or
    +modify it is void, and will automatically terminate your rights under
    +this License (including any patent licenses granted under the third
    +paragraph of section 11).
    +
    +  However, if you cease all violation of this License, then your
    +license from a particular copyright holder is reinstated (a)
    +provisionally, unless and until the copyright holder explicitly and
    +finally terminates your license, and (b) permanently, if the copyright
    +holder fails to notify you of the violation by some reasonable means
    +prior to 60 days after the cessation.
    +
    +  Moreover, your license from a particular copyright holder is
    +reinstated permanently if the copyright holder notifies you of the
    +violation by some reasonable means, this is the first time you have
    +received notice of violation of this License (for any work) from that
    +copyright holder, and you cure the violation prior to 30 days after
    +your receipt of the notice.
    +
    +  Termination of your rights under this section does not terminate the
    +licenses of parties who have received copies or rights from you under
    +this License.  If your rights have been terminated and not permanently
    +reinstated, you do not qualify to receive new licenses for the same
    +material under section 10.
    +
    +  9. Acceptance Not Required for Having Copies.
    +
    +  You are not required to accept this License in order to receive or
    +run a copy of the Program.  Ancillary propagation of a covered work
    +occurring solely as a consequence of using peer-to-peer transmission
    +to receive a copy likewise does not require acceptance.  However,
    +nothing other than this License grants you permission to propagate or
    +modify any covered work.  These actions infringe copyright if you do
    +not accept this License.  Therefore, by modifying or propagating a
    +covered work, you indicate your acceptance of this License to do so.
    +
    +  10. Automatic Licensing of Downstream Recipients.
    +
    +  Each time you convey a covered work, the recipient automatically
    +receives a license from the original licensors, to run, modify and
    +propagate that work, subject to this License.  You are not responsible
    +for enforcing compliance by third parties with this License.
    +
    +  An "entity transaction" is a transaction transferring control of an
    +organization, or substantially all assets of one, or subdividing an
    +organization, or merging organizations.  If propagation of a covered
    +work results from an entity transaction, each party to that
    +transaction who receives a copy of the work also receives whatever
    +licenses to the work the party's predecessor in interest had or could
    +give under the previous paragraph, plus a right to possession of the
    +Corresponding Source of the work from the predecessor in interest, if
    +the predecessor has it or can get it with reasonable efforts.
    +
    +  You may not impose any further restrictions on the exercise of the
    +rights granted or affirmed under this License.  For example, you may
    +not impose a license fee, royalty, or other charge for exercise of
    +rights granted under this License, and you may not initiate litigation
    +(including a cross-claim or counterclaim in a lawsuit) alleging that
    +any patent claim is infringed by making, using, selling, offering for
    +sale, or importing the Program or any portion of it.
    +
    +  11. Patents.
    +
    +  A "contributor" is a copyright holder who authorizes use under this
    +License of the Program or a work on which the Program is based.  The
    +work thus licensed is called the contributor's "contributor version".
    +
    +  A contributor's "essential patent claims" are all patent claims
    +owned or controlled by the contributor, whether already acquired or
    +hereafter acquired, that would be infringed by some manner, permitted
    +by this License, of making, using, or selling its contributor version,
    +but do not include claims that would be infringed only as a
    +consequence of further modification of the contributor version.  For
    +purposes of this definition, "control" includes the right to grant
    +patent sublicenses in a manner consistent with the requirements of
    +this License.
    +
    +  Each contributor grants you a non-exclusive, worldwide, royalty-free
    +patent license under the contributor's essential patent claims, to
    +make, use, sell, offer for sale, import and otherwise run, modify and
    +propagate the contents of its contributor version.
    +
    +  In the following three paragraphs, a "patent license" is any express
    +agreement or commitment, however denominated, not to enforce a patent
    +(such as an express permission to practice a patent or covenant not to
    +sue for patent infringement).  To "grant" such a patent license to a
    +party means to make such an agreement or commitment not to enforce a
    +patent against the party.
    +
    +  If you convey a covered work, knowingly relying on a patent license,
    +and the Corresponding Source of the work is not available for anyone
    +to copy, free of charge and under the terms of this License, through a
    +publicly available network server or other readily accessible means,
    +then you must either (1) cause the Corresponding Source to be so
    +available, or (2) arrange to deprive yourself of the benefit of the
    +patent license for this particular work, or (3) arrange, in a manner
    +consistent with the requirements of this License, to extend the patent
    +license to downstream recipients.  "Knowingly relying" means you have
    +actual knowledge that, but for the patent license, your conveying the
    +covered work in a country, or your recipient's use of the covered work
    +in a country, would infringe one or more identifiable patents in that
    +country that you have reason to believe are valid.
    +
    +  If, pursuant to or in connection with a single transaction or
    +arrangement, you convey, or propagate by procuring conveyance of, a
    +covered work, and grant a patent license to some of the parties
    +receiving the covered work authorizing them to use, propagate, modify
    +or convey a specific copy of the covered work, then the patent license
    +you grant is automatically extended to all recipients of the covered
    +work and works based on it.
    +
    +  A patent license is "discriminatory" if it does not include within
    +the scope of its coverage, prohibits the exercise of, or is
    +conditioned on the non-exercise of one or more of the rights that are
    +specifically granted under this License.  You may not convey a covered
    +work if you are a party to an arrangement with a third party that is
    +in the business of distributing software, under which you make payment
    +to the third party based on the extent of your activity of conveying
    +the work, and under which the third party grants, to any of the
    +parties who would receive the covered work from you, a discriminatory
    +patent license (a) in connection with copies of the covered work
    +conveyed by you (or copies made from those copies), or (b) primarily
    +for and in connection with specific products or compilations that
    +contain the covered work, unless you entered into that arrangement,
    +or that patent license was granted, prior to 28 March 2007.
    +
    +  Nothing in this License shall be construed as excluding or limiting
    +any implied license or other defenses to infringement that may
    +otherwise be available to you under applicable patent law.
    +
    +  12. No Surrender of Others' Freedom.
    +
    +  If conditions are imposed on you (whether by court order, agreement or
    +otherwise) that contradict the conditions of this License, they do not
    +excuse you from the conditions of this License.  If you cannot convey a
    +covered work so as to satisfy simultaneously your obligations under this
    +License and any other pertinent obligations, then as a consequence you may
    +not convey it at all.  For example, if you agree to terms that obligate you
    +to collect a royalty for further conveying from those to whom you convey
    +the Program, the only way you could satisfy both those terms and this
    +License would be to refrain entirely from conveying the Program.
    +
    +  13. Use with the GNU Affero General Public License.
    +
    +  Notwithstanding any other provision of this License, you have
    +permission to link or combine any covered work with a work licensed
    +under version 3 of the GNU Affero General Public License into a single
    +combined work, and to convey the resulting work.  The terms of this
    +License will continue to apply to the part which is the covered work,
    +but the special requirements of the GNU Affero General Public License,
    +section 13, concerning interaction through a network will apply to the
    +combination as such.
    +
    +  14. Revised Versions of this License.
    +
    +  The Free Software Foundation may publish revised and/or new versions of
    +the GNU General Public License from time to time.  Such new versions will
    +be similar in spirit to the present version, but may differ in detail to
    +address new problems or concerns.
    +
    +  Each version is given a distinguishing version number.  If the
    +Program specifies that a certain numbered version of the GNU General
    +Public License "or any later version" applies to it, you have the
    +option of following the terms and conditions either of that numbered
    +version or of any later version published by the Free Software
    +Foundation.  If the Program does not specify a version number of the
    +GNU General Public License, you may choose any version ever published
    +by the Free Software Foundation.
    +
    +  If the Program specifies that a proxy can decide which future
    +versions of the GNU General Public License can be used, that proxy's
    +public statement of acceptance of a version permanently authorizes you
    +to choose that version for the Program.
    +
    +  Later license versions may give you additional or different
    +permissions.  However, no additional obligations are imposed on any
    +author or copyright holder as a result of your choosing to follow a
    +later version.
    +
    +  15. Disclaimer of Warranty.
    +
    +  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
    +APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
    +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
    +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
    +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    +PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
    +IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
    +ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
    +
    +  16. Limitation of Liability.
    +
    +  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
    +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
    +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
    +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
    +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
    +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
    +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
    +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
    +SUCH DAMAGES.
    +
    +  17. Interpretation of Sections 15 and 16.
    +
    +  If the disclaimer of warranty and limitation of liability provided
    +above cannot be given local legal effect according to their terms,
    +reviewing courts shall apply local law that most closely approximates
    +an absolute waiver of all civil liability in connection with the
    +Program, unless a warranty or assumption of liability accompanies a
    +copy of the Program in return for a fee.
    +
    +                     END OF TERMS AND CONDITIONS
    +
    +            How to Apply These Terms to Your New Programs
    +
    +  If you develop a new program, and you want it to be of the greatest
    +possible use to the public, the best way to achieve this is to make it
    +free software which everyone can redistribute and change under these terms.
    +
    +  To do so, attach the following notices to the program.  It is safest
    +to attach them to the start of each source file to most effectively
    +state the exclusion of warranty; and each file should have at least
    +the "copyright" line and a pointer to where the full notice is found.
    +
    +    <one line to give the program's name and a brief idea of what it does.>
    +    Copyright (C) <year>  <name of author>
    +
    +    This program is free software: you can redistribute it and/or modify
    +    it under the terms of the GNU General Public License as published by
    +    the Free Software Foundation, either version 3 of the License, or
    +    (at your option) any later version.
    +
    +    This program is distributed in the hope that it will be useful,
    +    but WITHOUT ANY WARRANTY; without even the implied warranty of
    +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    +    GNU General Public License for more details.
    +
    +    You should have received a copy of the GNU General Public License
    +    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    +
    +Also add information on how to contact you by electronic and paper mail.
    +
    +  If the program does terminal interaction, make it output a short
    +notice like this when it starts in an interactive mode:
    +
    +    <program>  Copyright (C) <year>  <name of author>
    +    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    +    This is free software, and you are welcome to redistribute it
    +    under certain conditions; type `show c' for details.
    +
    +The hypothetical commands `show w' and `show c' should show the appropriate
    +parts of the General Public License.  Of course, your program's commands
    +might be different; for a GUI interface, you would use an "about box".
    +
    +  You should also get your employer (if you work as a programmer) or school,
    +if any, to sign a "copyright disclaimer" for the program, if necessary.
    +For more information on this, and how to apply and follow the GNU GPL, see
    +<http://www.gnu.org/licenses/>.
    +
    +  The GNU General Public License does not permit incorporating your program
    +into proprietary programs.  If your program is a subroutine library, you
    +may consider it more useful to permit linking proprietary applications with
    +the library.  If this is what you want to do, use the GNU Lesser General
    +Public License instead of this License.  But first, please read
    +<http://www.gnu.org/philosophy/why-not-lgpl.html>.
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/plugin-updates-report.html b/css/dependency-check-core/plugin-updates-report.html new file mode 100644 index 000000000..551d5d8e5 --- /dev/null +++ b/css/dependency-check-core/plugin-updates-report.html @@ -0,0 +1,844 @@ + + + + + + + + + dependency-check-core - Plugin Updates Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This report summarizes newer versions that may be available for your project's various plugins.

    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    # of plugins using the latest version available2
    # of plugins where the next version available is smaller than an incremental version update1
    # of plugins where the next version available is an incremental version update4
    # of plugins where the next version available is a minor version update10
    # of plugins where the next version available is a major version update0
    # of plugins where a dependencies section containes a dependency with an updated version1
    +
    +

    Plugin Management

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    org.apache.maven.pluginsmaven-antrun-plugin1.31.4
    org.apache.maven.pluginsmaven-assembly-plugin2.2-beta-52.22.2.12.3
    org.apache.maven.pluginsmaven-dependency-plugin2.12.2
    org.apache.maven.pluginsmaven-release-plugin2.12.2
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    +
    +

    Plugins

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    com.github.githubsite-maven-plugin0.70.8
    org.apache.maven.pluginsmaven-clean-plugin2.4.12.5
    org.apache.maven.pluginsmaven-compiler-plugin2.3.22.43.0
    org.apache.maven.pluginsmaven-deploy-plugin2.72.8
    org.apache.maven.pluginsmaven-enforcer-plugin1.01.0.11.1
    org.apache.maven.pluginsmaven-failsafe-plugin2.142.14.12.15
    org.apache.maven.pluginsmaven-install-plugin2.3.12.4
    org.apache.maven.pluginsmaven-jar-plugin2.4
    org.apache.maven.pluginsmaven-javadoc-plugin2.92.9.1
    org.apache.maven.pluginsmaven-resources-plugin2.52.6
    org.apache.maven.pluginsmaven-site-plugin3.3
    org.apache.maven.pluginsmaven-surefire-plugin2.142.14.12.15
    org.codehaus.mojocobertura-maven-plugin2.5.22.6
    StatusGroup IdArtifact IdCurrent VersionNext VersionNext IncrementalNext MinorNext MajorDependency status
    +
    +

    Plugin Updates

    +

    +
    +

    Plugin com.github.github:site-maven-plugin

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idcom.github.github
    Artifact Idsite-maven-plugin
    Current Version0.7
    Newer versions0.8 Next Minor
    0.9 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-antrun-plugin
    Current Version1.3
    Newer versions1.4 Next Minor
    1.5
    1.6
    1.7 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer version available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-assembly-plugin
    Current Version2.2-beta-5
    Newer versions2.2 Next Version
    2.2.1 Next Incremental
    2.2.2 Latest Incremental
    2.3 Next Minor
    2.4 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-clean-plugin
    Current Version2.4.1
    Newer versions2.5 Next Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-compiler-plugin
    Current Version2.3.2
    Newer versions2.4 Next Minor
    2.5
    2.5-jenkins-1
    2.5.1 Latest Minor
    3.0 Next Major
    3.1 Latest Major
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-dependency-plugin
    Current Version2.1
    Newer versions2.2 Next Minor
    2.3
    2.4
    2.5
    2.5.1
    2.6
    2.7
    2.8 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    Newer versions2.8 Next Minor
    2.8.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-enforcer-plugin
    Current Version1.0
    Newer versions1.0.1 Next Incremental
    1.1 Next Minor
    1.1.1
    1.2
    1.3
    1.3.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-failsafe-plugin
    Current Version2.14
    Newer versions2.14.1 Next Incremental
    2.15 Next Minor
    2.16 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-install-plugin
    Current Version2.3.1
    Newer versions2.4 Next Minor
    2.5
    2.5.1 Latest Minor
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-jar-plugin
    Current Version2.4
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-javadoc-plugin
    Current Version2.9
    Newer versions2.9.1 Next Incremental
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-release-plugin
    Current Version2.1
    Newer versions2.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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-resources-plugin
    Current Version2.5
    Newer versions2.6 Next Minor
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-site-plugin
    Current Version3.3
    +
    +

    Dependencies of org.apache.maven.plugins:maven-site-plugin

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    org.apache.maven.doxiadoxia-module-markdown1.4jar1.5
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

    Dependency org.apache.maven.doxia:doxia-module-markdown

    + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    Newer versions1.5 Next Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-surefire-plugin
    Current Version2.14
    Newer versions2.14.1 Next Incremental
    2.15 Next Minor
    2.16 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.codehaus.mojo
    Artifact Idcobertura-maven-plugin
    Current Version2.5.2
    Newer versions2.6 Next Minor
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/pmd.html b/css/dependency-check-core/pmd.html new file mode 100644 index 000000000..5e6c1dd46 --- /dev/null +++ b/css/dependency-check-core/pmd.html @@ -0,0 +1,494 @@ + + + + + + + + + dependency-check-core - PMD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    PMD Results

    +

    The following document contains the results of PMD 5.0.2.

    +
    +

    Files

    +
    +

    org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.java

    + + + + + + + + + +
    ViolationLine
    These nested if statements could be combined140 - 143
    These nested if statements could be combined305 - 308
    +
    +

    org/owasp/dependencycheck/analyzer/CPEAnalyzer.java

    + + + + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.191
    These nested if statements could be combined572 - 577
    These nested if statements could be combined573 - 576
    These nested if statements could be combined582 - 585
    +
    +

    org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.java

    + + + + + + + + + +
    ViolationLine
    Invoke equals() on the object you've already ensured is not null221
    These nested if statements could be combined235 - 237
    +
    +

    org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.java

    + + + + + + +
    ViolationLine
    These nested if statements could be combined154 - 175
    +
    +

    org/owasp/dependencycheck/analyzer/JarAnalyzer.java

    + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.337
    Useless parentheses.834
    Avoid unused method parameters such as 'classes'.972
    +
    +

    org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.java

    + + + + + + +
    ViolationLine
    Avoid unused local variables such as 'extractComments'.99
    +
    +

    org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.java

    + + + + + + +
    ViolationLine
    Useless parentheses.78
    +
    +

    org/owasp/dependencycheck/concurrency/DirectorySpinLock.java

    + + + + + + +
    ViolationLine
    These nested if statements could be combined243 - 248
    +
    +

    org/owasp/dependencycheck/data/BaseDB.java

    + + + + + + +
    ViolationLine
    These nested if statements could be combined183 - 185
    +
    +

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

    + + + + + + + + + +
    ViolationLine
    Useless parentheses.171
    Useless parentheses.174
    +
    +

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

    + + + + + + +
    ViolationLine
    Useless parentheses.494
    +
    +

    org/owasp/dependencycheck/data/update/StandardUpdateTask.java

    + + + + + + +
    ViolationLine
    Useless parentheses.100
    +
    +

    org/owasp/dependencycheck/dependency/Dependency.java

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.493
    Useless parentheses.496
    Useless parentheses.499
    Useless parentheses.502
    Useless parentheses.505
    Useless parentheses.508
    Useless parentheses.527
    Useless parentheses.530
    +
    +

    org/owasp/dependencycheck/dependency/Evidence.java

    + + + + + + +
    ViolationLine
    Useless parentheses.228
    +
    +

    org/owasp/dependencycheck/dependency/Identifier.java

    + + + + + + + + + +
    ViolationLine
    Useless parentheses.150
    Useless parentheses.153
    +
    +

    org/owasp/dependencycheck/dependency/Reference.java

    + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.111
    Useless parentheses.114
    Useless parentheses.117
    +
    +

    org/owasp/dependencycheck/dependency/Vulnerability.java

    + + + + + + +
    ViolationLine
    Useless parentheses.375
    +
    +

    org/owasp/dependencycheck/dependency/VulnerableSoftware.java

    + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.139
    Useless parentheses.179
    Useless parentheses.184
    +
    +

    org/owasp/dependencycheck/suppression/PropertyType.java

    + + + + + + +
    ViolationLine
    Useless parentheses.164
    +
    +

    org/owasp/dependencycheck/utils/Checksum.java

    + + + + + + +
    ViolationLine
    Useless parentheses.103
    +
    +

    org/owasp/dependencycheck/utils/DependencyVersion.java

    + + + + + + + + + +
    ViolationLine
    Useless parentheses.138
    Useless parentheses.198
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/project-info.html b/css/dependency-check-core/project-info.html new file mode 100644 index 000000000..fb4d45423 --- /dev/null +++ b/css/dependency-check-core/project-info.html @@ -0,0 +1,185 @@ + + + + + + + + + dependency-check-core - Project Information + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Information

    +

    This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by Maven on behalf of the project.

    +
    +

    Overview

    + + + + + + + + + + + + +
    DocumentDescription
    AboutDependency-check is a utility 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.
    Project SummaryThis document lists other related information of this project
    Project LicenseThis is a link to the definitions of project licenses.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/project-reports.html b/css/dependency-check-core/project-reports.html new file mode 100644 index 000000000..cd549418a --- /dev/null +++ b/css/dependency-check-core/project-reports.html @@ -0,0 +1,285 @@ + + + + + + + + + dependency-check-core - Generated Reports + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Generated Reports

    +

    This document provides an overview of the various reports that are automatically generated by Maven . Each report is briefly described below.

    +
    +

    Overview

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DocumentDescription
    JavaDocsJavaDoc API documentation.
    Dependency Updates ReportProvides details of the dependencies which have updated versions available.
    Plugin Updates ReportProvides details of the plugins used by this project which have newer versions available.
    Source XrefHTML based, cross-reference version of Java source code.
    Test Source XrefHTML based, cross-reference version of Java test source code.
    Cobertura Test CoverageCobertura Test Coverage Report.
    Surefire ReportReport on the test results of the project.
    Failsafe ReportReport on the integration test results of the project.
    Tag ListReport on various tags found in the code.
    CheckstyleReport on coding style conventions.
    CPD ReportDuplicate code detection.
    PMD ReportVerification of coding rules.
    FindBugs ReportGenerates a source code report with the FindBugs Library.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/project-summary.html b/css/dependency-check-core/project-summary.html new file mode 100644 index 000000000..89a10d358 --- /dev/null +++ b/css/dependency-check-core/project-summary.html @@ -0,0 +1,217 @@ + + + + + + + + + dependency-check-core - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    NameDependency-Check Core
    DescriptionDependency-check is a utility 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.
    Homepagehttps://github.com/jeremylong/DependencyCheck.git/dependency-check-core
    +
    +

    Project Organization

    + + + + + + + + + +
    FieldValue
    NameOWASP
    URLhttp://www.owasp.org
    +
    +

    Build Information

    + + + + + + + + + + + + + + + + + + +
    FieldValue
    GroupIdorg.owasp
    ArtifactIddependency-check-core
    Version1.0.6
    Typejar
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/surefire-report.html b/css/dependency-check-core/surefire-report.html new file mode 100644 index 000000000..a1f6eac09 --- /dev/null +++ b/css/dependency-check-core/surefire-report.html @@ -0,0 +1,1563 @@ + + + + + + + + + dependency-check-core - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    158000100%253.446

    +

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


    +
    +

    Package List

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PackageTestsErrors FailuresSkippedSuccess RateTime
    org.owasp.dependencycheck.reporting2000100%23.082
    org.owasp.dependencycheck.data.cwe1000100%0
    org.owasp.dependencycheck.dependency23000100%0.029
    org.owasp.dependencycheck.utils29000100%0.028
    org.owasp.dependencycheck.concurrency3000100%9.553
    org.owasp.dependencycheck.analyzer28000100%157.314
    org.owasp.dependencycheck.data.update21000100%6.287
    org.owasp.dependencycheck.data.nvdcve5000100%56.13
    org.owasp.dependencycheck.suppression35000100%0.012
    org.owasp.dependencycheck.data.lucene10000100%1.011
    org.owasp.dependencycheck.data.cpe1000100%0

    +

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

    +
    +

    org.owasp.dependencycheck.reporting

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    ReportGeneratorTest2000100%23.082
    +
    +

    org.owasp.dependencycheck.data.cwe

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    CweDBTest1000100%0
    +
    +

    org.owasp.dependencycheck.dependency

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DependencyTest20000100%0.029
    VulnerableSoftwareTest3000100%0
    +
    +

    org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    ChecksumTest6000100%0.028
    DependencyVersionTest7000100%0
    DependencyVersionUtilTest1000100%0
    DownloaderTest1000100%0
    FileUtilsTest2000100%0
    FilterTest2000100%0
    SettingsTest10000100%0
    +
    +

    org.owasp.dependencycheck.concurrency

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DirectorySpinLockTest3000100%9.553
    +
    +

    org.owasp.dependencycheck.analyzer

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    AbstractAnalyzerTest1000100%0.053
    AnalyzerServiceTest1000100%0.631
    ArchiveAnalyzerTest10000100%83.382
    CPEAnalyzerTest4000100%72.213
    FileNameAnalyzerTest7000100%0.004
    JarAnalyzerTest5000100%1.031
    +
    +

    org.owasp.dependencycheck.data.update

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    AbstractUpdateTaskTest4000100%2.888
    BatchUpdateTaskTest2000100%3.396
    DataStoreMetaInfoTest5000100%0.003
    NvdCveInfoTest5000100%0
    UpdateableTest5000100%0
    +
    +

    org.owasp.dependencycheck.data.nvdcve

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    CveDBTest3000100%55.822
    NvdCve_1_2_HandlerTest1000100%0.054
    NvdCve_2_0_HandlerTest1000100%0.254
    +
    +

    org.owasp.dependencycheck.suppression

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    PropertyTypeTest4000100%0
    SuppressionHandlerTest1000100%0.01
    SuppressionParserTest1000100%0
    SuppressionRuleTest29000100%0.002
    +
    +

    org.owasp.dependencycheck.data.lucene

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    FieldAnalyzerTest1000100%0
    LuceneUtilsTest4000100%0
    TokenPairConcatenatingFilterTest2000100%0.063
    UrlTokenizingFilterTest3000100%0.948
    +
    +

    org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    IndexEntryTest1000100%0

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    AbstractAnalyzerTest

    + + + + +
    testNewHashSet0.053
    +
    +

    AnalyzerServiceTest

    + + + + +
    testGetAnalyzers0.631
    +
    +

    ArchiveAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testAnalyzeTar3.631
    testAnalyzeTgz29.487
    testAnalyze3.657
    testGetAnalysisPhase3.515
    testGetName3.42
    testAnalyze_badZip3.807
    testInitialize4.017
    testAnalyzeTarGz25.255
    testSupportsExtension3.218
    testGetSupportedExtensions3.375
    +
    +

    CPEAnalyzerTest

    + + + + + + + + + + + + + + + + +
    testSearchCPE21.684
    testDetermineCPE17.131
    testDetermineCPE_full29.983
    testBuildSearch3.415
    +
    +

    FileNameAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testAnalyze0.003
    testClose0
    testGetAnalysisPhase0
    testGetName0
    testInitialize0
    testSupportsExtension0.001
    testGetSupportedExtensions0
    +
    +

    JarAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + +
    testAnalyze0.285
    testGetName0.168
    testInterpolateString0.169
    testSupportsExtension0.171
    testGetSupportedExtensions0.238
    +
    +

    DirectorySpinLockTest

    + + + + + + + + + + + + +
    testObtainSharedLock2.01
    testObtainSharedLock_withContention6.029
    testObtainExclusiveLock1.514
    +
    +

    IndexEntryTest

    + + + + +
    testSetName0
    +
    +

    CweDBTest

    + + + + +
    testGetCweName0
    +
    +

    FieldAnalyzerTest

    + + + + +
    testAnalyzers0
    +
    +

    LuceneUtilsTest

    + + + + + + + + + + + + + + + + +
    testAppendEscapedLuceneQuery0
    testEscapeLuceneQuery0
    testEscapeLuceneQuery_null0
    testAppendEscapedLuceneQuery_null0
    +
    +

    TokenPairConcatenatingFilterTest

    + + + + + + + + +
    testClear0.063
    testExamples0
    +
    +

    UrlTokenizingFilterTest

    + + + + + + + + + + + + +
    testEmptyTerm0.04
    testExamples0.052
    testRandomStrings0.856
    +
    +

    CveDBTest

    + + + + + + + + + + + + +
    testOpen19.965
    testGetCPEs15.795
    testGetVulnerabilities20.062
    +
    +

    NvdCve_1_2_HandlerTest

    + + + + +
    testParse0.054
    +
    +

    NvdCve_2_0_HandlerTest

    + + + + +
    testParse0.254
    +
    +

    AbstractUpdateTaskTest

    + + + + + + + + + + + + + + + + +
    testOpenDataStores2.83
    testSetDeleteAndRecreate0.001
    testWithinRange0
    testDeleteExistingData0.057
    +
    +

    BatchUpdateTaskTest

    + + + + + + + + +
    testSetDoBatchUpdate0.22
    testUpdate3.176
    +
    +

    DataStoreMetaInfoTest

    + + + + + + + + + + + + + + + + + + + + +
    testIsBatchUpdateMode0
    testSave0.002
    testGetPropertiesFile0
    testGetProperty_String_String0
    testIsEmpty0.001
    +
    +

    NvdCveInfoTest

    + + + + + + + + + + + + + + + + + + + + +
    testSetGetTimestamp0
    testSetGetNeedsUpdate0
    testSetGetOldSchemaVersionUrl0
    testSetGetUrl0
    testSetGetId0
    +
    +

    UpdateableTest

    + + + + + + + + + + + + + + + + + + + + +
    testClear0
    testAdd_3args0
    testAdd_4args0
    testIsUpdateNeeded0
    testIterator0
    +
    +

    DependencyTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testGetEvidenceUsed0
    testGetSha1sum0.008
    testGetProductEvidence0
    testGetActualFilePath0
    testSetFileExtension0
    testGetIdentifiers0
    testSetSha1sum0
    testAddIdentifier0
    testGetVendorEvidence0
    testSetFileName0
    testSetFilePath0
    testGetFileName0
    testGetFilePath0
    testGetFileExtension0.001
    testSetMd5sum0
    testGetMd5sum0.02
    testGetEvidence0
    testSetIdentifiers0
    testGetVersionEvidence0
    testSetActualFilePath0
    +
    +

    VulnerableSoftwareTest

    + + + + + + + + + + + + +
    testCompareTo0
    testHashCode0
    testEquals0
    +
    +

    ReportGeneratorTest

    + + + + + + + + +
    testGenerateXMLReport23.082
    testGenerateReport0
    +
    +

    PropertyTypeTest

    + + + + + + + + + + + + + + + + +
    testSetGetValue0
    testMatches0
    testIsRegex0
    testIsCaseSensitive0
    +
    +

    SuppressionHandlerTest

    + + + + +
    testHandler0.01
    +
    +

    SuppressionParserTest

    + + + + +
    testParseSuppressionRules0
    +
    +

    SuppressionRuleTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testCpeHasNoVersion0
    testCpe0
    testCve0
    testCwe0.001
    testSha10
    testCpeMatches0
    testHasCvssBelow0
    testProcess0
    testGetSha10
    testAddCvssBelow0
    testFilePath0
    testGetCvssBelow0
    testSetFilePath0
    testGetFilePath0
    testAddCpe0
    testAddCve0
    testAddCwe0
    testGetCpe0
    testGetCve0
    testGetCwe0
    testHasCpe0
    testHasCve0
    testHasCwe0
    testSetCvssBelow0
    testSetSha10
    testSetCpe0
    testSetCve0
    testSetCwe0.001
    testCountCharacter0
    +
    +

    ChecksumTest

    + + + + + + + + + + + + + + + + + + + + + + + + +
    testGetChecksum_NoSuchAlgorithm0.028
    testGetChecksum0
    testGetMD5Checksum0
    testGetChecksum_FileNotFound0
    testGetHex0
    testGetSHA1Checksum0
    +
    +

    DependencyVersionTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testMatchesAtLeastThreeLevels0
    testToString0
    testCompareTo0
    testParseVersion0
    testHashCode0
    testEquals0
    testIterator0
    +
    +

    DependencyVersionUtilTest

    + + + + +
    testParseVersionFromFileName0
    +
    +

    DownloaderTest

    + + + + +
    testGetLastModified_file0
    +
    +

    FileUtilsTest

    + + + + + + + + +
    testGetFileExtension0
    testDelete0
    +
    +

    FilterTest

    + + + + + + + + +
    testFilter_Iterable0
    testPasses0
    +
    +

    SettingsTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testMergeProperties_String0
    testGetDataFile0
    testGetLong0
    testGetBoolean0
    testRemoveProperty0
    testSetString0
    testGetInt0
    testGetString_String0
    testGetString0
    testGetString_String_String0

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/taglist.html b/css/dependency-check-core/taglist.html new file mode 100644 index 000000000..330a74e55 --- /dev/null +++ b/css/dependency-check-core/taglist.html @@ -0,0 +1,395 @@ + + + + + + + + + dependency-check-core - Tag List report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Tag List Report

    +

    The following document contains the listing of user tags found in the code. Below is the summary of the occurrences per tag.

    + + + + + + + + +
    Tag ClassTotal number of occurrencesTag strings used by tag class
    Todo Work29todo, FIXME
    +

    Each tag is detailed below:

    +
    +

    Todo Work

    +

    Number of occurrences found in the code: 29

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.analyzer.ArchiveAnalyzerLine
    - can we get more evidence from the parent? EAR contains module name, etc.206
    org.owasp.dependencycheck.analyzer.CPEAnalyzerLine
    - likely need to change the split... not sure if this will work for CPE with special chars430
    the following isn't quite right is it? need to think about this guessing game a bit more.569
    org.owasp.dependencycheck.analyzer.CPEAnalyzerTestLine
    - yeah, not a very good test as the results are the same with or without weighting...228
    fix this assert Assert.assertEquals(expResult, result.get(0).getName());236
    org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzerLine
    fix the version problem below152
    - 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.JarAnalyzerLine
    remove weighting516
    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.NvdCveAnalyzerLine
    - 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.DirectorySpinLockLine
    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.lucene.SearchVersionAnalyzerLine
    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.VersionAnalyzerLine
    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.VersionTokenizingFilterLine
    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.CveDBLine
    consider utilizing the matchThreeVersion method to get additional results. However, this might also introduce false positives.504
    org.owasp.dependencycheck.data.update.BatchUpdateTaskLine
    add FTP?114
    org.owasp.dependencycheck.data.update.BatchUpdateTaskTestLine
    add some actual asserts to check things.119
    org.owasp.dependencycheck.data.update.StandardUpdateTaskLine
    - remove this172
    org.owasp.dependencycheck.data.update.StandardUpdateTaskIntegrationTestLine
    make this an actual test69
    org.owasp.dependencycheck.dependency.EvidenceCollectionLine
    consider changing the regex to only compare alpha-numeric (i.e. strip everything else)244
    org.owasp.dependencycheck.utils.DependencyVersionLine
    steal better version of code from compareTo140
    org.owasp.dependencycheck.utils.DownloaderLine
    add the FPR protocol?134
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-core/xref-test/allclasses-frame.html b/css/dependency-check-core/xref-test/allclasses-frame.html new file mode 100644 index 000000000..a000b6c90 --- /dev/null +++ b/css/dependency-check-core/xref-test/allclasses-frame.html @@ -0,0 +1,146 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/css/dependency-check-core/xref-test/index.html b/css/dependency-check-core/xref-test/index.html new file mode 100644 index 000000000..507b53bb5 --- /dev/null +++ b/css/dependency-check-core/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference + + + + + + + + + <body> + <h1>Frame Alert</h1> + <p> + You don't have frames. Go <a href="overview-summary.html">here</a> + </p> + </body> + + + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html new file mode 100644 index 000000000..bc9cbde84 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html @@ -0,0 +1,83 @@ + + + + +EngineIntegrationTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.reporting.ReportGenerator;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import static org.junit.Assert.*;
    +29  
    +30  /**
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class EngineIntegrationTest {
    +35  
    +36      @BeforeClass
    +37      public static void setUpClass() throws Exception {
    +38      }
    +39  
    +40      @AfterClass
    +41      public static void tearDownClass() throws Exception {
    +42      }
    +43  
    +44      @Before
    +45      public void setUp() throws Exception {
    +46          org.owasp.dependencycheck.data.nvdcve.BaseDBTestCase.ensureDBExists();
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      /**
    +54       * Test of scan method, of class Engine.
    +55       *
    +56       * @throws Exception is thrown when an exception occurs.
    +57       */
    +58      @Test
    +59      public void testScan() throws Exception {
    +60          String testClasses = "target/test-classes";
    +61          Engine instance = new Engine();
    +62          instance.scan(testClasses);
    +63          assertTrue(instance.getDependencies().size() > 0);
    +64          instance.analyzeDependencies();
    +65          ReportGenerator rg = new ReportGenerator("DependencyCheck",
    +66                  instance.getDependencies(), instance.getAnalyzers());
    +67          rg.generateReports("./target/", "ALL");
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html new file mode 100644 index 000000000..4091c0be0 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html @@ -0,0 +1,79 @@ + + + + +AbstractAnalyzerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.analyzer.AbstractAnalyzer;
    +22  import java.util.Set;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import static org.junit.Assert.*;
    +29  
    +30  /**
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class AbstractAnalyzerTest {
    +35  
    +36      public AbstractAnalyzerTest() {
    +37      }
    +38  
    +39      @BeforeClass
    +40      public static void setUpClass() throws Exception {
    +41      }
    +42  
    +43      @AfterClass
    +44      public static void tearDownClass() throws Exception {
    +45      }
    +46  
    +47      @Before
    +48      public void setUp() {
    +49      }
    +50  
    +51      @After
    +52      public void tearDown() {
    +53      }
    +54  
    +55      /**
    +56       * Test of newHashSet method, of class AbstractAnalyzer.
    +57       */
    +58      @Test
    +59      public void testNewHashSet() {
    +60          Set result = AbstractAnalyzer.newHashSet("one", "two");
    +61          assertEquals(2, result.size());
    +62          assertTrue(result.contains("one"));
    +63          assertTrue(result.contains("two"));
    +64      }
    +65  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html new file mode 100644 index 000000000..637f516b6 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html @@ -0,0 +1,89 @@ + + + + +AnalyzerServiceTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.analyzer.AnalyzerService;
    +22  import org.owasp.dependencycheck.analyzer.Analyzer;
    +23  import java.util.Set;
    +24  import java.util.Iterator;
    +25  import org.junit.After;
    +26  import org.junit.AfterClass;
    +27  import org.junit.Before;
    +28  import org.junit.BeforeClass;
    +29  import org.junit.Test;
    +30  import static org.junit.Assert.*;
    +31  
    +32  /**
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class AnalyzerServiceTest {
    +37  
    +38      public AnalyzerServiceTest() {
    +39      }
    +40  
    +41      @BeforeClass
    +42      public static void setUpClass() throws Exception {
    +43      }
    +44  
    +45      @AfterClass
    +46      public static void tearDownClass() throws Exception {
    +47      }
    +48  
    +49      @Before
    +50      public void setUp() {
    +51      }
    +52  
    +53      @After
    +54      public void tearDown() {
    +55      }
    +56  
    +57      /**
    +58       * Test of getAnalyzers method, of class AnalyzerService.
    +59       */
    +60      @Test
    +61      public void testGetAnalyzers() {
    +62          AnalyzerService instance = AnalyzerService.getInstance();
    +63          Iterator<Analyzer> result = instance.getAnalyzers();
    +64  
    +65          boolean found = false;
    +66          while (result.hasNext()) {
    +67              Analyzer a = result.next();
    +68              Set<String> e = a.getSupportedExtensions();
    +69              if (e != null && e.contains("jar")) {
    +70                  found = true;
    +71              }
    +72          }
    +73          assertTrue("JarAnalyzer loaded", found);
    +74      }
    +75  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html new file mode 100644 index 000000000..045a4aad1 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html @@ -0,0 +1,282 @@ + + + + +ArchiveAnalyzerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.File;
    +22  import java.util.HashSet;
    +23  import java.util.Set;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  import org.owasp.dependencycheck.Engine;
    +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             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             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/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/CPEAnalyzerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/CPEAnalyzerTest.html new file mode 100644 index 000000000..b92f58f6d --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/CPEAnalyzerTest.html @@ -0,0 +1,256 @@ + + + + +CPEAnalyzerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.data.cpe.IndexEntry;
    +22  import org.owasp.dependencycheck.analyzer.CPEAnalyzer;
    +23  import java.io.File;
    +24  import java.io.IOException;
    +25  import java.util.HashSet;
    +26  import java.util.List;
    +27  import java.util.Set;
    +28  import org.apache.lucene.index.CorruptIndexException;
    +29  import org.apache.lucene.queryparser.classic.ParseException;
    +30  import org.junit.After;
    +31  import org.junit.AfterClass;
    +32  import org.owasp.dependencycheck.dependency.Dependency;
    +33  import org.junit.Assert;
    +34  import org.junit.Before;
    +35  import org.junit.BeforeClass;
    +36  import org.junit.Test;
    +37  import org.owasp.dependencycheck.data.cpe.BaseIndexTestCase;
    +38  import org.owasp.dependencycheck.data.cpe.IndexEntry;
    +39  import org.owasp.dependencycheck.dependency.Identifier;
    +40  
    +41  /**
    +42   *
    +43   * @author Jeremy Long (jeremy.long@owasp.org)
    +44   */
    +45  public class CPEAnalyzerTest extends BaseIndexTestCase {
    +46  
    +47      @BeforeClass
    +48      public static void setUpClass() throws Exception {
    +49      }
    +50  
    +51      @AfterClass
    +52      public static void tearDownClass() throws Exception {
    +53      }
    +54  
    +55      @Before
    +56      @Override
    +57      public void setUp() throws Exception {
    +58          super.setUp();
    +59      }
    +60  
    +61      @After
    +62      @Override
    +63      public void tearDown() throws Exception {
    +64          super.tearDown();
    +65      }
    +66  
    +67      /**
    +68       * Tests of buildSearch of class CPEAnalyzer.
    +69       *
    +70       * @throws IOException is thrown when an IO Exception occurs.
    +71       * @throws CorruptIndexException is thrown when the index is corrupt.
    +72       * @throws ParseException is thrown when a parse exception occurs
    +73       */
    +74      @Test
    +75      public void testBuildSearch() throws IOException, CorruptIndexException, ParseException {
    +76          Set<String> productWeightings = new HashSet<String>(1);
    +77          productWeightings.add("struts2");
    +78  
    +79          Set<String> vendorWeightings = new HashSet<String>(1);
    +80          vendorWeightings.add("apache");
    +81  
    +82          String vendor = "apache software foundation";
    +83          String product = "struts 2 core";
    +84          String version = "2.1.2";
    +85          CPEAnalyzer instance = new CPEAnalyzer();
    +86  
    +87          String queryText = instance.buildSearch(vendor, product, null, null);
    +88          String expResult = " product:( struts 2 core )  AND  vendor:( apache software foundation ) ";
    +89          Assert.assertTrue(expResult.equals(queryText));
    +90  
    +91          queryText = instance.buildSearch(vendor, product, null, productWeightings);
    +92          expResult = " product:(  struts^5 struts2^5 2 core )  AND  vendor:( apache software foundation ) ";
    +93          Assert.assertTrue(expResult.equals(queryText));
    +94  
    +95          queryText = instance.buildSearch(vendor, product, vendorWeightings, null);
    +96          expResult = " product:( struts 2 core )  AND  vendor:(  apache^5 software foundation ) ";
    +97          Assert.assertTrue(expResult.equals(queryText));
    +98  
    +99          queryText = instance.buildSearch(vendor, product, vendorWeightings, productWeightings);
    +100         expResult = " product:(  struts^5 struts2^5 2 core )  AND  vendor:(  apache^5 software foundation ) ";
    +101         Assert.assertTrue(expResult.equals(queryText));
    +102     }
    +103 
    +104     /**
    +105      * Test of determineCPE method, of class CPEAnalyzer.
    +106      *
    +107      * @throws Exception is thrown when an exception occurs
    +108      */
    +109     @Test
    +110     public void testDetermineCPE_full() throws Exception {
    +111         callDetermineCPE_full("hazelcast-2.5.jar", null);
    +112         callDetermineCPE_full("spring-context-support-2.5.5.jar", "cpe:/a:vmware:springsource_spring_framework:2.5.5");
    +113         callDetermineCPE_full("spring-core-3.0.0.RELEASE.jar", "cpe:/a:vmware:springsource_spring_framework:3.0.0");
    +114         callDetermineCPE_full("org.mortbay.jetty.jar", "cpe:/a:mortbay_jetty:jetty:4.2");
    +115         callDetermineCPE_full("jaxb-xercesImpl-1.5.jar", null);
    +116         callDetermineCPE_full("ehcache-core-2.2.0.jar", null);
    +117     }
    +118 
    +119     /**
    +120      * Test of determineCPE method, of class CPEAnalyzer.
    +121      *
    +122      * @throws Exception is thrown when an exception occurs
    +123      */
    +124     public void callDetermineCPE_full(String depName, String expResult) throws Exception {
    +125 
    +126         File file = new File(this.getClass().getClassLoader().getResource(depName).getPath());
    +127 
    +128         Dependency dep = new Dependency(file);
    +129 
    +130         FileNameAnalyzer fnAnalyzer = new FileNameAnalyzer();
    +131         fnAnalyzer.analyze(dep, null);
    +132 
    +133         JarAnalyzer jarAnalyzer = new JarAnalyzer();
    +134         jarAnalyzer.analyze(dep, null);
    +135         HintAnalyzer hAnalyzer = new HintAnalyzer();
    +136         hAnalyzer.analyze(dep, null);
    +137 
    +138 
    +139         CPEAnalyzer instance = new CPEAnalyzer();
    +140         instance.open();
    +141         instance.analyze(dep, null);
    +142         instance.close();
    +143         FalsePositiveAnalyzer fp = new FalsePositiveAnalyzer();
    +144         fp.analyze(dep, null);
    +145 
    +146 //        for (Identifier i : dep.getIdentifiers()) {
    +147 //            System.out.println(i.getValue());
    +148 //        }
    +149         if (expResult != null) {
    +150             Identifier expIdentifier = new Identifier("cpe", expResult, expResult);
    +151             Assert.assertTrue("Incorrect match: { dep:'" + dep.getFileName() + "' }", dep.getIdentifiers().contains(expIdentifier));
    +152         } else if (dep.getIdentifiers().isEmpty()) {
    +153             Assert.assertTrue("Match found when an Identifier should not have been found: { dep:'" + dep.getFileName() + "' }", dep.getIdentifiers().isEmpty());
    +154         } else {
    +155             Assert.assertTrue("Match found when an Identifier should not have been found: { dep:'" + dep.getFileName() + "', identifier:'" + dep.getIdentifiers().iterator().next().getValue() + "' }", dep.getIdentifiers().isEmpty());
    +156         }
    +157     }
    +158 
    +159     /**
    +160      * Test of determineCPE method, of class CPEAnalyzer.
    +161      *
    +162      * @throws Exception is thrown when an exception occurs
    +163      */
    +164     @Test
    +165     public void testDetermineCPE() throws Exception {
    +166         File file = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +167         //File file = new File(this.getClass().getClassLoader().getResource("axis2-adb-1.4.1.jar").getPath());
    +168         Dependency struts = new Dependency(file);
    +169 
    +170         FileNameAnalyzer fnAnalyzer = new FileNameAnalyzer();
    +171         fnAnalyzer.analyze(struts, null);
    +172 
    +173         JarAnalyzer jarAnalyzer = new JarAnalyzer();
    +174         jarAnalyzer.analyze(struts, null);
    +175 
    +176 
    +177         File fileCommonValidator = new File(this.getClass().getClassLoader().getResource("commons-validator-1.4.0.jar").getPath());
    +178         Dependency commonValidator = new Dependency(fileCommonValidator);
    +179         jarAnalyzer.analyze(commonValidator, null);
    +180 
    +181         File fileSpring = new File(this.getClass().getClassLoader().getResource("spring-core-2.5.5.jar").getPath());
    +182         Dependency spring = new Dependency(fileSpring);
    +183         jarAnalyzer.analyze(spring, null);
    +184 
    +185         File fileSpring3 = new File(this.getClass().getClassLoader().getResource("spring-core-3.0.0.RELEASE.jar").getPath());
    +186         Dependency spring3 = new Dependency(fileSpring3);
    +187         jarAnalyzer.analyze(spring3, null);
    +188 
    +189         CPEAnalyzer instance = new CPEAnalyzer();
    +190         instance.open();
    +191         instance.determineCPE(commonValidator);
    +192         instance.determineCPE(struts);
    +193         instance.determineCPE(spring);
    +194         instance.determineCPE(spring3);
    +195         instance.close();
    +196 
    +197         String expResult = "cpe:/a:apache:struts:2.1.2";
    +198         Identifier expIdentifier = new Identifier("cpe", expResult, expResult);
    +199         String expResultSpring = "cpe:/a:springsource:spring_framework:2.5.5";
    +200         String expResultSpring3 = "cpe:/a:vmware:springsource_spring_framework:3.0.0";
    +201 
    +202         Assert.assertTrue("Apache Common Validator - found an identifier?", commonValidator.getIdentifiers().isEmpty());
    +203         Assert.assertTrue("Incorrect match size - struts", struts.getIdentifiers().size() >= 1);
    +204         Assert.assertTrue("Incorrect match - struts", struts.getIdentifiers().contains(expIdentifier));
    +205         Assert.assertTrue("Incorrect match size - spring3 - " + spring3.getIdentifiers().size(), spring3.getIdentifiers().size() >= 1);
    +206 
    +207         //the following two only work if the HintAnalyzer is used.
    +208         //Assert.assertTrue("Incorrect match size - spring", spring.getIdentifiers().size() == 1);
    +209         //Assert.assertTrue("Incorrect match - spring", spring.getIdentifiers().get(0).getValue().equals(expResultSpring));
    +210 
    +211     }
    +212 
    +213     /**
    +214      * Test of searchCPE method, of class CPEAnalyzer.
    +215      *
    +216      * @throws Exception is thrown when an exception occurs
    +217      */
    +218     @Test
    +219     public void testSearchCPE() throws Exception {
    +220         String vendor = "apache software foundation";
    +221         String product = "struts 2 core";
    +222         String version = "2.1.2";
    +223         String expResult = "cpe:/a:apache:struts:2.1.2";
    +224 
    +225         CPEAnalyzer instance = new CPEAnalyzer();
    +226         instance.open();
    +227 
    +228         //TODO - yeah, not a very good test as the results are the same with or without weighting...
    +229         Set<String> productWeightings = new HashSet<String>(1);
    +230         productWeightings.add("struts2");
    +231 
    +232         Set<String> vendorWeightings = new HashSet<String>(1);
    +233         vendorWeightings.add("apache");
    +234 
    +235         List<IndexEntry> result = instance.searchCPE(vendor, product, productWeightings, vendorWeightings);
    +236         //TODO fix this assert
    +237         //Assert.assertEquals(expResult, result.get(0).getName());
    +238 
    +239 
    +240         instance.close();
    +241     }
    +242 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html new file mode 100644 index 000000000..36806eef2 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html @@ -0,0 +1,154 @@ + + + + +FileNameAnalyzerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.analyzer.AnalysisPhase;
    +22  import org.owasp.dependencycheck.analyzer.FileNameAnalyzer;
    +23  import java.io.File;
    +24  import java.util.Set;
    +25  import org.owasp.dependencycheck.dependency.Dependency;
    +26  import org.junit.After;
    +27  import org.junit.AfterClass;
    +28  import org.junit.Before;
    +29  import org.junit.BeforeClass;
    +30  import org.junit.Test;
    +31  import static org.junit.Assert.*;
    +32  
    +33  /**
    +34   *
    +35   * @author Jeremy Long (jeremy.long@owasp.org)
    +36   */
    +37  public class FileNameAnalyzerTest {
    +38  
    +39      public FileNameAnalyzerTest() {
    +40      }
    +41  
    +42      @BeforeClass
    +43      public static void setUpClass() throws Exception {
    +44      }
    +45  
    +46      @AfterClass
    +47      public static void tearDownClass() throws Exception {
    +48      }
    +49  
    +50      @Before
    +51      public void setUp() {
    +52      }
    +53  
    +54      @After
    +55      public void tearDown() {
    +56      }
    +57  
    +58      /**
    +59       * Test of getSupportedExtensions method, of class FileNameAnalyzer.
    +60       */
    +61      @Test
    +62      public void testGetSupportedExtensions() {
    +63          FileNameAnalyzer instance = new FileNameAnalyzer();
    +64          Set expResult = null;
    +65          Set result = instance.getSupportedExtensions();
    +66          assertEquals(expResult, result);
    +67      }
    +68  
    +69      /**
    +70       * Test of getName method, of class FileNameAnalyzer.
    +71       */
    +72      @Test
    +73      public void testGetName() {
    +74          FileNameAnalyzer instance = new FileNameAnalyzer();
    +75          String expResult = "File Name Analyzer";
    +76          String result = instance.getName();
    +77          assertEquals(expResult, result);
    +78      }
    +79  
    +80      /**
    +81       * Test of supportsExtension method, of class FileNameAnalyzer.
    +82       */
    +83      @Test
    +84      public void testSupportsExtension() {
    +85          String extension = "any";
    +86          FileNameAnalyzer instance = new FileNameAnalyzer();
    +87          boolean expResult = true;
    +88          boolean result = instance.supportsExtension(extension);
    +89          assertEquals(expResult, result);
    +90      }
    +91  
    +92      /**
    +93       * Test of getAnalysisPhase method, of class FileNameAnalyzer.
    +94       */
    +95      @Test
    +96      public void testGetAnalysisPhase() {
    +97          FileNameAnalyzer instance = new FileNameAnalyzer();
    +98          AnalysisPhase expResult = AnalysisPhase.INFORMATION_COLLECTION;
    +99          AnalysisPhase result = instance.getAnalysisPhase();
    +100         assertEquals(expResult, result);
    +101     }
    +102 
    +103     /**
    +104      * Test of analyze method, of class FileNameAnalyzer.
    +105      */
    +106     @Test
    +107     public void testAnalyze() throws Exception {
    +108         File struts = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +109         Dependency resultStruts = new Dependency(struts);
    +110         File axis = new File(this.getClass().getClassLoader().getResource("axis2-adb-1.4.1.jar").getPath());
    +111         Dependency resultAxis = new Dependency(axis);
    +112         FileNameAnalyzer instance = new FileNameAnalyzer();
    +113         instance.analyze(resultStruts, null);
    +114         assertTrue(resultStruts.getVendorEvidence().toString().toLowerCase().contains("struts"));
    +115 
    +116         instance.analyze(resultAxis, null);
    +117         assertTrue(resultStruts.getVersionEvidence().toString().toLowerCase().contains("2.1.2"));
    +118 
    +119     }
    +120 
    +121     /**
    +122      * Test of initialize method, of class FileNameAnalyzer.
    +123      */
    +124     @Test
    +125     public void testInitialize() throws Exception {
    +126         FileNameAnalyzer instance = new FileNameAnalyzer();
    +127         instance.initialize();
    +128         assertTrue(true); //initialize does nothing.
    +129     }
    +130 
    +131     /**
    +132      * Test of close method, of class FileNameAnalyzer.
    +133      */
    +134     @Test
    +135     public void testClose() throws Exception {
    +136         FileNameAnalyzer instance = new FileNameAnalyzer();
    +137         instance.close();
    +138         assertTrue(true); //close does nothing.
    +139     }
    +140 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html new file mode 100644 index 000000000..4c0018846 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html @@ -0,0 +1,174 @@ + + + + +JarAnalyzerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.util.Properties;
    +22  import org.owasp.dependencycheck.analyzer.JarAnalyzer;
    +23  import org.owasp.dependencycheck.dependency.Dependency;
    +24  import org.owasp.dependencycheck.dependency.Evidence;
    +25  import java.util.HashSet;
    +26  import java.io.File;
    +27  import java.util.Set;
    +28  import org.junit.After;
    +29  import org.junit.AfterClass;
    +30  import org.junit.Before;
    +31  import org.junit.BeforeClass;
    +32  import org.junit.Test;
    +33  import static org.junit.Assert.*;
    +34  
    +35  /**
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class JarAnalyzerTest {
    +40  
    +41      public JarAnalyzerTest() {
    +42      }
    +43  
    +44      @BeforeClass
    +45      public static void setUpClass() throws Exception {
    +46      }
    +47  
    +48      @AfterClass
    +49      public static void tearDownClass() throws Exception {
    +50      }
    +51  
    +52      @Before
    +53      public void setUp() {
    +54      }
    +55  
    +56      @After
    +57      public void tearDown() {
    +58      }
    +59  
    +60      /**
    +61       * Test of inspect method, of class JarAnalyzer.
    +62       *
    +63       * @throws Exception is thrown when an exception occurs.
    +64       */
    +65      @Test
    +66      public void testAnalyze() throws Exception {
    +67          File file = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +68          Dependency result = new Dependency(file);
    +69          JarAnalyzer instance = new JarAnalyzer();
    +70          instance.analyze(result, null);
    +71          assertTrue(result.getVendorEvidence().toString().toLowerCase().contains("apache"));
    +72          assertTrue(result.getVendorEvidence().getWeighting().contains("apache"));
    +73  
    +74          file = new File(this.getClass().getClassLoader().getResource("org.mortbay.jetty.jar").getPath());
    +75          result = new Dependency(file);
    +76          instance.analyze(result, null);
    +77          boolean found = false;
    +78          for (Evidence e : result.getProductEvidence()) {
    +79              if (e.getName().equalsIgnoreCase("package-title")
    +80                      && e.getValue().equalsIgnoreCase("org.mortbay.http")) {
    +81                  found = true;
    +82                  break;
    +83              }
    +84          }
    +85          assertTrue("package-title of org.mortbay.http not found in org.mortbay.jetty.jar", found);
    +86  
    +87          found = false;
    +88          for (Evidence e : result.getVendorEvidence()) {
    +89              if (e.getName().equalsIgnoreCase("implementation-url")
    +90                      && e.getValue().equalsIgnoreCase("http://jetty.mortbay.org")) {
    +91                  found = true;
    +92                  break;
    +93              }
    +94          }
    +95          assertTrue("implementation-url of http://jetty.mortbay.org not found in org.mortbay.jetty.jar", found);
    +96  
    +97          found = false;
    +98          for (Evidence e : result.getVersionEvidence()) {
    +99              if (e.getName().equalsIgnoreCase("Implementation-Version")
    +100                     && e.getValue().equalsIgnoreCase("4.2.27")) {
    +101                 found = true;
    +102                 break;
    +103             }
    +104         }
    +105         assertTrue("implementation-version of 4.2.27 not found in org.mortbay.jetty.jar", found);
    +106 
    +107         file = new File(this.getClass().getClassLoader().getResource("org.mortbay.jmx.jar").getPath());
    +108         result = new Dependency(file);
    +109         instance.analyze(result, null);
    +110         assertEquals("org.mortbar,jmx.jar has version evidence?", result.getVersionEvidence().size(), 0);
    +111     }
    +112 
    +113     /**
    +114      * Test of getSupportedExtensions method, of class JarAnalyzer.
    +115      */
    +116     @Test
    +117     public void testGetSupportedExtensions() {
    +118         JarAnalyzer instance = new JarAnalyzer();
    +119         Set expResult = new HashSet();
    +120         expResult.add("jar");
    +121         expResult.add("war");
    +122         Set result = instance.getSupportedExtensions();
    +123         assertEquals(expResult, result);
    +124     }
    +125 
    +126     /**
    +127      * Test of getName method, of class JarAnalyzer.
    +128      */
    +129     @Test
    +130     public void testGetName() {
    +131         JarAnalyzer instance = new JarAnalyzer();
    +132         String expResult = "Jar Analyzer";
    +133         String result = instance.getName();
    +134         assertEquals(expResult, result);
    +135     }
    +136 
    +137     /**
    +138      * Test of supportsExtension method, of class JarAnalyzer.
    +139      */
    +140     @Test
    +141     public void testSupportsExtension() {
    +142         String extension = "jar";
    +143         JarAnalyzer instance = new JarAnalyzer();
    +144         boolean expResult = true;
    +145         boolean result = instance.supportsExtension(extension);
    +146         assertEquals(expResult, result);
    +147     }
    +148 
    +149     @Test
    +150     public void testInterpolateString() {
    +151         Properties prop = new Properties();
    +152         prop.setProperty("key", "value");
    +153         prop.setProperty("nested", "nested ${key}");
    +154         String text = "This is a test of '${key}' '${nested}'";
    +155         String expResults = "This is a test of 'value' 'nested value'";
    +156         JarAnalyzer instance = new JarAnalyzer();
    +157         String results = instance.interpolateString(text, prop);
    +158         assertEquals(expResults, results);
    +159     }
    +160 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html new file mode 100644 index 000000000..69781c1b1 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html @@ -0,0 +1,39 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.analyzer + + + + +

    + org.owasp.dependencycheck.analyzer +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html new file mode 100644 index 000000000..5442830fe --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html @@ -0,0 +1,92 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.analyzer + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.analyzer

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractAnalyzerTest +
    + AnalyzerServiceTest +
    + ArchiveAnalyzerTest +
    + CPEAnalyzerTest +
    + FileNameAnalyzerTest +
    + JarAnalyzerTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/DirectorySpinLockTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/DirectorySpinLockTest.html new file mode 100644 index 000000000..bb9add306 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/DirectorySpinLockTest.html @@ -0,0 +1,130 @@ + + + + +DirectorySpinLockTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.concurrency;
    +20  
    +21  import java.io.File;
    +22  import java.net.URL;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import static org.junit.Assert.*;
    +29  
    +30  /**
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class DirectorySpinLockTest {
    +35  
    +36      public DirectorySpinLockTest() {
    +37      }
    +38  
    +39      @BeforeClass
    +40      public static void setUpClass() {
    +41      }
    +42  
    +43      @AfterClass
    +44      public static void tearDownClass() {
    +45      }
    +46  
    +47      @Before
    +48      public void setUp() {
    +49      }
    +50  
    +51      @After
    +52      public void tearDown() {
    +53      }
    +54  
    +55      /**
    +56       * Test of obtainSharedLock method, of class DirectorySpinLock.
    +57       * Specifically, this test uses the SpinLockTask to obtain an exclusive lock
    +58       * that is held for 5 seconds. We then try to obtain a shared lock while
    +59       * that task is running. It should take longer then 5 seconds to obtain the
    +60       * shared lock.
    +61       */
    +62      @Test
    +63      public void testObtainSharedLock_withContention() throws Exception {
    +64          URL location = this.getClass().getProtectionDomain().getCodeSource().getLocation();
    +65          File directory = new File(location.getFile());
    +66          DirectorySpinLock instance = new DirectorySpinLock(directory);
    +67          SpinLockTask task = new SpinLockTask(directory, 5000, false, 2);
    +68          long start = System.currentTimeMillis();
    +69          task.run();
    +70          instance.obtainSharedLock();
    +71          long end = System.currentTimeMillis();
    +72          instance.close();
    +73          if (task.getException() != null) {
    +74              throw task.getException();
    +75          }
    +76          long timeElapsed = end - start;
    +77          assertTrue("no lock contention occured?", timeElapsed >= 5000);
    +78          //no exceptions means everything worked.
    +79      }
    +80  
    +81      /**
    +82       * Test of obtainSharedLock method, of class DirectorySpinLock. This method
    +83       * obtains two shared locks by using the SpinLockTask to obtain a lock in
    +84       * another thread.
    +85       */
    +86      @Test
    +87      public void testObtainSharedLock() throws Exception {
    +88          URL location = this.getClass().getProtectionDomain().getCodeSource().getLocation();
    +89          File directory = new File(location.getFile());
    +90          DirectorySpinLock instance = new DirectorySpinLock(directory);
    +91          SpinLockTask task = new SpinLockTask(directory, 1000, true, 2);
    +92          task.run();
    +93          instance.obtainSharedLock();
    +94          instance.close();
    +95          if (task.getException() != null) {
    +96              throw task.getException();
    +97          }
    +98          //no exceptions means everything worked.
    +99      }
    +100 
    +101     /**
    +102      * Test of obtainExclusiveLock method, of class DirectorySpinLock.
    +103      */
    +104     @Test
    +105     public void testObtainExclusiveLock() throws Exception {
    +106         URL location = this.getClass().getProtectionDomain().getCodeSource().getLocation();
    +107         File directory = new File(location.getFile());
    +108         DirectorySpinLock instance = new DirectorySpinLock(directory);
    +109         SpinLockTask task = new SpinLockTask(directory, 1000, true, 1);
    +110         instance.obtainExclusiveLock();
    +111         task.run();
    +112         instance.close();
    +113         assertNotNull("No exception thrown due to exclusive lock failure?", task.getException());
    +114         assertEquals("Incorrect exception when obtaining exclusive lock", "Unable to obtain lock", task.getException().getMessage());
    +115     }
    +116 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/SpinLockTask.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/SpinLockTask.html new file mode 100644 index 000000000..5e5ff13ff --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/SpinLockTask.html @@ -0,0 +1,98 @@ + + + + +SpinLockTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.concurrency;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.util.logging.Level;
    +24  import java.util.logging.Logger;
    +25  
    +26  /**
    +27   * A simple task that obtains a lock on a directory. This is used in testing of
    +28   * the shared and exclusive locks.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SpinLockTask implements Runnable {
    +33  
    +34      DirectorySpinLock lock = null;
    +35      int holdLockFor;
    +36      long maxWait;
    +37      boolean shared;
    +38      private Exception exception = null;
    +39  
    +40      /**
    +41       * Get the value of exception
    +42       *
    +43       * @return the value of exception
    +44       */
    +45      public Exception getException() {
    +46          return exception;
    +47      }
    +48  
    +49      /**
    +50       * Set the value of exception
    +51       *
    +52       * @param exception new value of exception
    +53       */
    +54      public void setException(Exception exception) {
    +55          this.exception = exception;
    +56      }
    +57  
    +58      public SpinLockTask(File directory, int holdLockFor, boolean shared, long maxWait) throws InvalidDirectoryException, DirectoryLockException {
    +59          this.holdLockFor = holdLockFor;
    +60          this.shared = shared;
    +61          this.maxWait = maxWait;
    +62          lock = new DirectorySpinLock(directory);
    +63      }
    +64  
    +65      @Override
    +66      public void run() {
    +67          try {
    +68              lock.obtainLock(shared, maxWait);
    +69              Thread.sleep(holdLockFor);
    +70          } catch (DirectoryLockException ex) {
    +71              exception = ex;
    +72          } catch (InterruptedException ex) {
    +73              exception = ex;
    +74          } finally {
    +75              if (lock != null) {
    +76                  try {
    +77                      lock.close();
    +78                  } catch (IOException ex) {
    +79                      exception = ex;
    +80                  }
    +81              }
    +82          }
    +83      }
    +84  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html new file mode 100644 index 000000000..7db50abea --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html @@ -0,0 +1,27 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.concurrency + + + + +

    + org.owasp.dependencycheck.concurrency +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html new file mode 100644 index 000000000..332dd2474 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html @@ -0,0 +1,72 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.concurrency + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.concurrency

    + + + + + + + + + + + + + + + +
    Class Summary
    + DirectorySpinLockTest +
    + SpinLockTask +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html new file mode 100644 index 000000000..736423a4d --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html @@ -0,0 +1,68 @@ + + + + +BaseIndexTestCase xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  import junit.framework.TestCase;
    +22  import org.junit.After;
    +23  import org.junit.AfterClass;
    +24  import org.junit.Before;
    +25  import org.junit.BeforeClass;
    +26  import org.owasp.dependencycheck.data.nvdcve.BaseDBTestCase;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public abstract class BaseIndexTestCase extends TestCase {
    +33  
    +34      @BeforeClass
    +35      public static void setUpClass() throws Exception {
    +36      }
    +37  
    +38      @AfterClass
    +39      public static void tearDownClass() throws Exception {
    +40      }
    +41  
    +42      @Before
    +43      @Override
    +44      public void setUp() throws Exception {
    +45          BaseDBTestCase.ensureDBExists();
    +46          super.setUp();
    +47      }
    +48  
    +49      @After
    +50      @Override
    +51      public void tearDown() throws Exception {
    +52          super.tearDown();
    +53      }
    +54  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html new file mode 100644 index 000000000..ffa8085cf --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html @@ -0,0 +1,85 @@ + + + + +IndexEntryTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  import org.owasp.dependencycheck.data.cpe.IndexEntry;
    +22  import junit.framework.TestCase;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import org.junit.Assert;
    +29  
    +30  /**
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class IndexEntryTest extends TestCase {
    +35  
    +36      @BeforeClass
    +37      public static void setUpClass() throws Exception {
    +38      }
    +39  
    +40      @AfterClass
    +41      public static void tearDownClass() throws Exception {
    +42      }
    +43  
    +44      @Before
    +45      @Override
    +46      public void setUp() throws Exception {
    +47          super.setUp();
    +48      }
    +49  
    +50      @After
    +51      @Override
    +52      public void tearDown() throws Exception {
    +53          super.tearDown();
    +54      }
    +55  
    +56      /**
    +57       * Test of setName method, of class IndexEntry.
    +58       *
    +59       * @throws Exception is thrown when an exception occurs.
    +60       */
    +61      @Test
    +62      public void testSetName() throws Exception {
    +63          String name = "cpe:/a:apache:struts:1.1:rc2";
    +64  
    +65          IndexEntry instance = new IndexEntry();
    +66          instance.parseName(name);
    +67  
    +68          Assert.assertEquals("apache", instance.getVendor());
    +69          Assert.assertEquals("struts", instance.getProduct());
    +70      }
    +71  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html new file mode 100644 index 000000000..dfb41321c --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -0,0 +1,27 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cpe + + + + +

    + org.owasp.dependencycheck.data.cpe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html new file mode 100644 index 000000000..999ca7de3 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -0,0 +1,72 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cpe + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + +
    Class Summary
    + BaseIndexTestCase +
    + IndexEntryTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html new file mode 100644 index 000000000..ba8c4c7a0 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html @@ -0,0 +1,98 @@ + + + + +CweDBTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cwe;
    +20  
    +21  import org.owasp.dependencycheck.data.cwe.CweDB;
    +22  import org.junit.After;
    +23  import org.junit.AfterClass;
    +24  import org.junit.Before;
    +25  import org.junit.BeforeClass;
    +26  import org.junit.Test;
    +27  import static org.junit.Assert.*;
    +28  
    +29  /**
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class CweDBTest {
    +34  
    +35      public CweDBTest() {
    +36      }
    +37  
    +38      @BeforeClass
    +39      public static void setUpClass() throws Exception {
    +40      }
    +41  
    +42      @AfterClass
    +43      public static void tearDownClass() throws Exception {
    +44      }
    +45  
    +46      @Before
    +47      public void setUp() {
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() {
    +52      }
    +53  
    +54      /**
    +55       * Method to serialize the CWE HashMap. This is not used in production; this
    +56       * is only used once during dev to create the serialized HashMap.
    +57       */
    +58  //    @Test
    +59  //    public void testUpdate() throws Exception {
    +60  //        SAXParserFactory factory = SAXParserFactory.newInstance();
    +61  //        SAXParser saxParser = factory.newSAXParser();
    +62  //
    +63  //        CweHandler handler = new CweHandler();
    +64  //        File file = new File(this.getClass().getClassLoader().getResource("cwe.2000.xml").getPath());
    +65  //
    +66  //        saxParser.parse(file, handler);
    +67  //        System.out.println("Found " + handler.getCwe().size() + " cwe entries.");
    +68  //        Map<String,String> cwe = handler.getCwe();
    +69  //        FileOutputStream fout = new FileOutputStream("src/main/resources/data/cwe.hashmap.serialized");
    +70  //        ObjectOutputStream objOut = new ObjectOutputStream(fout);
    +71  //        objOut.writeObject(cwe);
    +72  //        objOut.close();
    +73  //    }
    +74      /**
    +75       * Test of getCweName method, of class CweDB.
    +76       */
    +77      @Test
    +78      public void testGetCweName() {
    +79          String cweId = "CWE-16";
    +80          String expResult = "Configuration";
    +81          String result = CweDB.getCweName(cweId);
    +82          assertEquals(expResult, result);
    +83      }
    +84  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html new file mode 100644 index 000000000..dfffb2935 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cwe + + + + +

    + org.owasp.dependencycheck.data.cwe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html new file mode 100644 index 000000000..e85a2f3fb --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cwe + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.cwe

    + + + + + + + + + + + + +
    Class Summary
    + CweDBTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html new file mode 100644 index 000000000..44ff77037 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html @@ -0,0 +1,145 @@ + + + + +FieldAnalyzerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
    +22  import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
    +23  import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
    +24  import java.util.HashMap;
    +25  import org.apache.lucene.queryparser.classic.QueryParser;
    +26  import org.apache.lucene.analysis.standard.StandardAnalyzer;
    +27  import org.apache.lucene.analysis.Analyzer;
    +28  import org.apache.lucene.search.ScoreDoc;
    +29  import org.apache.lucene.search.TopScoreDocCollector;
    +30  import org.apache.lucene.search.IndexSearcher;
    +31  import org.apache.lucene.index.IndexReader;
    +32  import org.apache.lucene.search.Query;
    +33  import java.io.IOException;
    +34  import org.apache.lucene.document.Field;
    +35  import org.apache.lucene.document.TextField;
    +36  import org.apache.lucene.document.Document;
    +37  import org.apache.lucene.index.DirectoryReader;
    +38  import org.apache.lucene.index.IndexWriter;
    +39  import org.apache.lucene.index.IndexWriterConfig;
    +40  import org.apache.lucene.store.RAMDirectory;
    +41  import org.apache.lucene.store.Directory;
    +42  import org.apache.lucene.util.Version;
    +43  import org.junit.After;
    +44  import org.junit.AfterClass;
    +45  import org.junit.Before;
    +46  import org.junit.BeforeClass;
    +47  import org.junit.Test;
    +48  import static org.junit.Assert.*;
    +49  
    +50  /**
    +51   *
    +52   * @author Jeremy Long (jeremy.long@owasp.org)
    +53   */
    +54  public class FieldAnalyzerTest {
    +55  
    +56      @BeforeClass
    +57      public static void setUpClass() throws Exception {
    +58      }
    +59  
    +60      @AfterClass
    +61      public static void tearDownClass() throws Exception {
    +62      }
    +63  
    +64      @Before
    +65      public void setUp() {
    +66      }
    +67  
    +68      @After
    +69      public void tearDown() {
    +70      }
    +71  
    +72      @Test
    +73      public void testAnalyzers() throws Exception {
    +74  
    +75          Analyzer analyzer = new FieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +76          Directory index = new RAMDirectory();
    +77  
    +78          String field1 = "product";
    +79          String text1 = "springframework";
    +80  
    +81          String field2 = "vendor";
    +82          String text2 = "springsource";
    +83  
    +84          createIndex(analyzer, index, field1, text1, field2, text2);
    +85  
    +86          //Analyzer searchingAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +87          String querystr = "product:\"(Spring Framework Core)\" vendor:(SpringSource)";
    +88  
    +89          SearchFieldAnalyzer searchAnalyzerProduct = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +90          SearchFieldAnalyzer searchAnalyzerVendor = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +91          HashMap<String, Analyzer> map = new HashMap<String, Analyzer>();
    +92          map.put(field1, searchAnalyzerProduct);
    +93          map.put(field2, searchAnalyzerVendor);
    +94          PerFieldAnalyzerWrapper wrapper = new PerFieldAnalyzerWrapper(new StandardAnalyzer(LuceneUtils.CURRENT_VERSION), map);
    +95          QueryParser parser = new QueryParser(LuceneUtils.CURRENT_VERSION, field1, wrapper);
    +96  
    +97          Query q = parser.parse(querystr);
    +98          //System.out.println(q.toString());
    +99  
    +100         int hitsPerPage = 10;
    +101 
    +102         IndexReader reader = DirectoryReader.open(index);
    +103         IndexSearcher searcher = new IndexSearcher(reader);
    +104         TopScoreDocCollector collector = TopScoreDocCollector.create(hitsPerPage, true);
    +105         searcher.search(q, collector);
    +106         ScoreDoc[] hits = collector.topDocs().scoreDocs;
    +107 
    +108         assertEquals("Did not find 1 document?", 1, hits.length);
    +109 
    +110         searchAnalyzerProduct.clear(); //ensure we don't have anything left over from the previous search.
    +111         searchAnalyzerVendor.clear();
    +112         querystr = "product:(Apache Struts) vendor:(Apache)";
    +113         Query q2 = parser.parse(querystr);
    +114         //System.out.println(q2.toString());
    +115         assertFalse("second parsing contains previousWord from the TokenPairConcatenatingFilter", q2.toString().contains("core"));
    +116     }
    +117 
    +118     private void createIndex(Analyzer analyzer, Directory index, String field1, String text1, String field2, String text2) throws IOException {
    +119         IndexWriterConfig config = new IndexWriterConfig(LuceneUtils.CURRENT_VERSION, analyzer);
    +120         IndexWriter w = new IndexWriter(index, config);
    +121         addDoc(w, field1, text1, field2, text2);
    +122         w.close();
    +123     }
    +124 
    +125     private static void addDoc(IndexWriter w, String field1, String text1, String field2, String text2) throws IOException {
    +126         Document doc = new Document();
    +127         doc.add(new TextField(field1, text1, Field.Store.YES));
    +128         doc.add(new TextField(field2, text2, Field.Store.YES));
    +129         w.addDocument(doc);
    +130     }
    +131 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html new file mode 100644 index 000000000..74d1377a3 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html @@ -0,0 +1,109 @@ + + + + +LuceneUtilsTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import org.owasp.dependencycheck.data.lucene.LuceneUtils;
    +22  import org.junit.After;
    +23  import org.junit.AfterClass;
    +24  import org.junit.Before;
    +25  import org.junit.BeforeClass;
    +26  import org.junit.Test;
    +27  import static org.junit.Assert.*;
    +28  
    +29  /**
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class LuceneUtilsTest {
    +34  
    +35      @BeforeClass
    +36      public static void setUpClass() throws Exception {
    +37      }
    +38  
    +39      @AfterClass
    +40      public static void tearDownClass() throws Exception {
    +41      }
    +42  
    +43      @Before
    +44      public void setUp() {
    +45      }
    +46  
    +47      @After
    +48      public void tearDown() {
    +49      }
    +50  
    +51      /**
    +52       * Test of appendEscapedLuceneQuery method, of class LuceneUtils.
    +53       */
    +54      @Test
    +55      public void testAppendEscapedLuceneQuery() {
    +56          StringBuilder buf = new StringBuilder();
    +57          CharSequence text = "test encoding + - & | ! ( ) { } [ ] ^ \" ~ * ? : \\";
    +58          String expResult = "test encoding \\+ \\- \\& \\| \\! \\( \\) \\{ \\} \\[ \\] \\^ \\\" \\~ \\* \\? \\: \\\\";
    +59          LuceneUtils.appendEscapedLuceneQuery(buf, text);
    +60          assertEquals(expResult, buf.toString());
    +61      }
    +62  
    +63      /**
    +64       * Test of appendEscapedLuceneQuery method, of class LuceneUtils.
    +65       */
    +66      @Test
    +67      public void testAppendEscapedLuceneQuery_null() {
    +68          StringBuilder buf = new StringBuilder();
    +69          CharSequence text = null;
    +70          LuceneUtils.appendEscapedLuceneQuery(buf, text);
    +71          assertEquals(0, buf.length());
    +72      }
    +73  
    +74      /**
    +75       * Test of escapeLuceneQuery method, of class LuceneUtils.
    +76       */
    +77      @Test
    +78      public void testEscapeLuceneQuery() {
    +79          CharSequence text = "test encoding + - & | ! ( ) { } [ ] ^ \" ~ * ? : \\";
    +80          String expResult = "test encoding \\+ \\- \\& \\| \\! \\( \\) \\{ \\} \\[ \\] \\^ \\\" \\~ \\* \\? \\: \\\\";
    +81          String result = LuceneUtils.escapeLuceneQuery(text);
    +82          assertEquals(expResult, result);
    +83      }
    +84  
    +85      /**
    +86       * Test of escapeLuceneQuery method, of class LuceneUtils.
    +87       */
    +88      @Test
    +89      public void testEscapeLuceneQuery_null() {
    +90          CharSequence text = null;
    +91          String expResult = null;
    +92          String result = LuceneUtils.escapeLuceneQuery(text);
    +93          assertEquals(expResult, result);
    +94      }
    +95  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html new file mode 100644 index 000000000..ddfb30c4d --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html @@ -0,0 +1,91 @@ + + + + +TokenPairConcatenatingFilterTest xref + + + +
    +
    +1   /*
    +2    * To change this template, choose Tools | Templates
    +3    * and open the template in the editor.
    +4    */
    +5   package org.owasp.dependencycheck.data.lucene;
    +6   
    +7   import java.io.IOException;
    +8   import java.io.Reader;
    +9   import java.io.StringReader;
    +10  import org.apache.lucene.analysis.Analyzer;
    +11  import org.apache.lucene.analysis.BaseTokenStreamTestCase;
    +12  import static org.apache.lucene.analysis.BaseTokenStreamTestCase.assertAnalyzesTo;
    +13  import static org.apache.lucene.analysis.BaseTokenStreamTestCase.assertTokenStreamContents;
    +14  import static org.apache.lucene.analysis.BaseTokenStreamTestCase.checkOneTerm;
    +15  import org.apache.lucene.analysis.MockTokenizer;
    +16  import org.apache.lucene.analysis.TokenStream;
    +17  import org.apache.lucene.analysis.Tokenizer;
    +18  import org.apache.lucene.analysis.core.WhitespaceTokenizer;
    +19  import org.apache.lucene.analysis.tokenattributes.TypeAttributeImpl;
    +20  import org.apache.lucene.util.Version;
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class TokenPairConcatenatingFilterTest extends BaseTokenStreamTestCase {
    +33  
    +34      @BeforeClass
    +35      public static void setUpClass() {
    +36      }
    +37  
    +38      @AfterClass
    +39      public static void tearDownClass() {
    +40      }
    +41  
    +42      @Before
    +43      public void setUp() throws Exception {
    +44          super.setUp();
    +45      }
    +46  
    +47      @After
    +48      public void tearDown() throws Exception {
    +49          super.tearDown();
    +50      }
    +51  
    +52      /**
    +53       * test some examples
    +54       */
    +55      public void testExamples() throws IOException {
    +56          Tokenizer wsTokenizer = new WhitespaceTokenizer(LuceneUtils.CURRENT_VERSION, new StringReader("one two three"));
    +57          TokenStream filter = new TokenPairConcatenatingFilter(wsTokenizer);
    +58          assertTokenStreamContents(filter,
    +59                  new String[]{"one", "onetwo", "two", "twothree", "three"});
    +60      }
    +61  
    +62      /**
    +63       * Test of clear method, of class TokenPairConcatenatingFilter.
    +64       */
    +65      @Test
    +66      public void testClear() throws IOException {
    +67  
    +68          TokenStream ts = new WhitespaceTokenizer(LuceneUtils.CURRENT_VERSION, new StringReader("one two three"));
    +69          TokenPairConcatenatingFilter filter = new TokenPairConcatenatingFilter(ts);
    +70          assertTokenStreamContents(filter, new String[]{"one", "onetwo", "two", "twothree", "three"});
    +71  
    +72          assertNotNull(filter.getPreviousWord());
    +73          filter.clear();
    +74          assertNull(filter.getPreviousWord());
    +75          assertTrue(filter.getWords().isEmpty());
    +76      }
    +77  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html new file mode 100644 index 000000000..25027bf53 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html @@ -0,0 +1,108 @@ + + + + +UrlTokenizingFilterTest xref + + + +
    +
    +1   /*
    +2    * To change this template, choose Tools | Templates
    +3    * and open the template in the editor.
    +4    */
    +5   package org.owasp.dependencycheck.data.lucene;
    +6   
    +7   import java.io.IOException;
    +8   import java.io.Reader;
    +9   import org.apache.lucene.analysis.Analyzer;
    +10  import org.apache.lucene.analysis.Analyzer.TokenStreamComponents;
    +11  import org.apache.lucene.analysis.BaseTokenStreamTestCase;
    +12  import static org.apache.lucene.analysis.BaseTokenStreamTestCase.checkOneTerm;
    +13  import org.apache.lucene.analysis.MockTokenizer;
    +14  import org.apache.lucene.analysis.Tokenizer;
    +15  import org.apache.lucene.analysis.core.KeywordTokenizer;
    +16  import org.junit.After;
    +17  import org.junit.AfterClass;
    +18  import org.junit.Before;
    +19  import org.junit.BeforeClass;
    +20  
    +21  /**
    +22   *
    +23   * @author Jeremy Long (jeremy.long@owasp.org)
    +24   */
    +25  public class UrlTokenizingFilterTest extends BaseTokenStreamTestCase {
    +26  
    +27      private Analyzer analyzer;
    +28  
    +29      public UrlTokenizingFilterTest() {
    +30          analyzer = new Analyzer() {
    +31              @Override
    +32              protected TokenStreamComponents createComponents(String fieldName,
    +33                      Reader reader) {
    +34                  Tokenizer source = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
    +35                  return new TokenStreamComponents(source, new UrlTokenizingFilter(source));
    +36              }
    +37          };
    +38      }
    +39  
    +40      @BeforeClass
    +41      public static void setUpClass() {
    +42      }
    +43  
    +44      @AfterClass
    +45      public static void tearDownClass() {
    +46      }
    +47  
    +48      @Before
    +49      public void setUp() throws Exception {
    +50          super.setUp();
    +51      }
    +52  
    +53      @After
    +54      public void tearDown() throws Exception {
    +55          super.tearDown();
    +56      }
    +57  
    +58      /**
    +59       * test some example domains
    +60       */
    +61      public void testExamples() throws IOException {
    +62          String[] expected = new String[2];
    +63          expected[0] = "domain";
    +64          expected[1] = "test";
    +65          assertAnalyzesTo(analyzer, "http://www.domain.com/test.php", expected);
    +66          checkOneTerm(analyzer, "https://apache.org", "apache");
    +67      }
    +68  
    +69      /**
    +70       * copied from
    +71       * http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestEnglishMinimalStemFilter.java
    +72       * blast some random strings through the analyzer
    +73       */
    +74      public void testRandomStrings() throws Exception {
    +75          checkRandomData(random(), analyzer, 1000 * RANDOM_MULTIPLIER);
    +76      }
    +77  
    +78      /**
    +79       * copied from
    +80       * http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestEnglishMinimalStemFilter.java
    +81       *
    +82       * @throws IOException
    +83       */
    +84      public void testEmptyTerm() throws IOException {
    +85          Analyzer a = new Analyzer() {
    +86              @Override
    +87              protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
    +88                  Tokenizer tokenizer = new KeywordTokenizer(reader);
    +89                  return new TokenStreamComponents(tokenizer, new UrlTokenizingFilter(tokenizer));
    +90              }
    +91          };
    +92          checkOneTermReuse(a, "", "");
    +93      }
    +94  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html new file mode 100644 index 000000000..f73c283fa --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -0,0 +1,33 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.lucene + + + + +

    + org.owasp.dependencycheck.data.lucene +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html new file mode 100644 index 000000000..8854901c5 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -0,0 +1,82 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.lucene + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.lucene

    + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + FieldAnalyzerTest +
    + LuceneUtilsTest +
    + TokenPairConcatenatingFilterTest +
    + UrlTokenizingFilterTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html new file mode 100644 index 000000000..e0ccea2b0 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html @@ -0,0 +1,132 @@ + + + + +BaseDBTestCase xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import org.owasp.dependencycheck.data.cpe.*;
    +22  import java.io.BufferedInputStream;
    +23  import java.io.BufferedOutputStream;
    +24  import java.io.File;
    +25  import java.io.FileInputStream;
    +26  import java.io.FileOutputStream;
    +27  import java.io.IOException;
    +28  import java.util.logging.Level;
    +29  import java.util.logging.Logger;
    +30  import java.util.zip.ZipEntry;
    +31  import java.util.zip.ZipInputStream;
    +32  import junit.framework.TestCase;
    +33  import org.owasp.dependencycheck.data.update.DataStoreMetaInfo;
    +34  import org.owasp.dependencycheck.utils.Settings;
    +35  
    +36  /**
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public abstract class BaseDBTestCase extends TestCase {
    +41  
    +42      protected final static int BUFFER_SIZE = 2048;
    +43  
    +44      @Override
    +45      protected void setUp() throws Exception {
    +46          super.setUp();
    +47          ensureDBExists();
    +48      }
    +49  
    +50      public static void ensureDBExists() throws Exception {
    +51  
    +52          java.io.File dataPath = Settings.getDataFile(Settings.KEYS.DATA_DIRECTORY);
    +53          if (!dataPath.exists() || (dataPath.isDirectory() && dataPath.listFiles().length < 3)) {
    +54              dataPath.mkdirs();
    +55              FileInputStream fis = null;
    +56              ZipInputStream zin = null;
    +57              try {
    +58                  File path = new File(BaseDBTestCase.class.getClassLoader().getResource("data.zip").getPath());
    +59                  fis = new FileInputStream(path);
    +60                  zin = new ZipInputStream(new BufferedInputStream(fis));
    +61                  ZipEntry entry;
    +62                  while ((entry = zin.getNextEntry()) != null) {
    +63                      if (entry.isDirectory()) {
    +64                          final File d = new File(dataPath, entry.getName());
    +65                          d.mkdir();
    +66                          continue;
    +67                      }
    +68                      FileOutputStream fos = null;
    +69                      BufferedOutputStream dest = null;
    +70                      try {
    +71                          File o = new File(dataPath, entry.getName());
    +72                          o.createNewFile();
    +73                          fos = new FileOutputStream(o, false);
    +74                          dest = new BufferedOutputStream(fos, BUFFER_SIZE);
    +75                          byte data[] = new byte[BUFFER_SIZE];
    +76                          int count;
    +77                          while ((count = zin.read(data, 0, BUFFER_SIZE)) != -1) {
    +78                              dest.write(data, 0, count);
    +79                          }
    +80                      } catch (Exception ex) {
    +81                          Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.SEVERE, null, ex);
    +82                      } finally {
    +83                          try {
    +84                              if (dest != null) {
    +85                                  dest.flush();
    +86                                  dest.close();
    +87                              }
    +88                          } catch (Throwable ex) {
    +89                              Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +90                          }
    +91                          try {
    +92                              if (fos != null) {
    +93                                  fos.close();
    +94                              }
    +95                          } catch (Throwable ex) {
    +96                              Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +97                          }
    +98                      }
    +99                  }
    +100             } finally {
    +101                 try {
    +102                     if (zin != null) {
    +103                         zin.close();
    +104                     }
    +105                 } catch (Throwable ex) {
    +106                     Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +107                 }
    +108                 try {
    +109                     if (fis != null) {
    +110                         fis.close();
    +111                     }
    +112                 } catch (Throwable ex) {
    +113                     Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +114                 }
    +115             }
    +116         }
    +117     }
    +118 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html new file mode 100644 index 000000000..93269da11 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html @@ -0,0 +1,119 @@ + + + + +CveDBTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.sql.SQLException;
    +24  import java.util.List;
    +25  import java.util.Set;
    +26  import java.util.logging.Level;
    +27  import java.util.logging.Logger;
    +28  import org.junit.After;
    +29  import org.junit.AfterClass;
    +30  import org.junit.Before;
    +31  import org.junit.BeforeClass;
    +32  import org.junit.Test;
    +33  import org.owasp.dependencycheck.dependency.Vulnerability;
    +34  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +35  
    +36  /**
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public class CveDBTest extends BaseDBTestCase {
    +41  
    +42      @BeforeClass
    +43      public static void setUpClass() {
    +44      }
    +45  
    +46      @AfterClass
    +47      public static void tearDownClass() {
    +48      }
    +49  
    +50      @Before
    +51      @Override
    +52      public void setUp() throws Exception {
    +53          super.setUp();
    +54      }
    +55  
    +56      @After
    +57      @Override
    +58      public void tearDown() throws Exception {
    +59          super.tearDown();
    +60      }
    +61  
    +62      /**
    +63       * Pretty useless tests of open, commit, and close methods, of class CveDB.
    +64       */
    +65      @Test
    +66      public void testOpen() throws Exception {
    +67          CveDB instance = new CveDB();
    +68          instance.open();
    +69          instance.commit();
    +70          instance.close();
    +71      }
    +72  
    +73      /**
    +74       * Test of getCPEs method, of class CveDB.
    +75       */
    +76      @Test
    +77      public void testGetCPEs() throws Exception {
    +78          CveDB instance = new CveDB();
    +79          try {
    +80              String vendor = "apache";
    +81              String product = "struts";
    +82              instance.open();
    +83              Set<VulnerableSoftware> result = instance.getCPEs(vendor, product);
    +84              assertTrue(result.size() > 5);
    +85          } finally {
    +86              instance.close();
    +87          }
    +88      }
    +89  
    +90      /**
    +91       * Test of getVulnerabilities method, of class CveDB.
    +92       */
    +93      @Test
    +94      public void testGetVulnerabilities() throws Exception {
    +95          String cpeStr = "cpe:/a:apache:struts:2.1.2";
    +96          CveDB instance = new CveDB();
    +97          try {
    +98              instance.open();
    +99              List result = instance.getVulnerabilities(cpeStr);
    +100             assertTrue(result.size() > 5);
    +101         } finally {
    +102             instance.close();
    +103         }
    +104     }
    +105 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_1_2_HandlerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_1_2_HandlerTest.html new file mode 100644 index 000000000..43de1357a --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_1_2_HandlerTest.html @@ -0,0 +1,86 @@ + + + + +NvdCve_1_2_HandlerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler;
    +22  import java.io.File;
    +23  import java.util.List;
    +24  import java.util.Map;
    +25  import javax.xml.parsers.SAXParser;
    +26  import javax.xml.parsers.SAXParserFactory;
    +27  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +28  import org.junit.After;
    +29  import org.junit.AfterClass;
    +30  import org.junit.Before;
    +31  import org.junit.BeforeClass;
    +32  import org.junit.Test;
    +33  import static org.junit.Assert.*;
    +34  
    +35  /**
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class NvdCve_1_2_HandlerTest {
    +40  
    +41      public NvdCve_1_2_HandlerTest() {
    +42      }
    +43  
    +44      @BeforeClass
    +45      public static void setUpClass() throws Exception {
    +46      }
    +47  
    +48      @AfterClass
    +49      public static void tearDownClass() throws Exception {
    +50      }
    +51  
    +52      @Before
    +53      public void setUp() {
    +54      }
    +55  
    +56      @After
    +57      public void tearDown() {
    +58      }
    +59  
    +60      @Test
    +61      public void testParse() throws Exception {
    +62          SAXParserFactory factory = SAXParserFactory.newInstance();
    +63          SAXParser saxParser = factory.newSAXParser();
    +64  
    +65          File file = new File(this.getClass().getClassLoader().getResource("nvdcve-2012.xml").getPath());
    +66  
    +67          NvdCve12Handler instance = new NvdCve12Handler();
    +68          saxParser.parse(file, instance);
    +69          Map<String, List<VulnerableSoftware>> results = instance.getVulnerabilities();
    +70          assertTrue("No vulnerable software identified with a previous version in 2012 CVE 1.2?", !results.isEmpty());
    +71      }
    +72  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_2_0_HandlerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_2_0_HandlerTest.html new file mode 100644 index 000000000..1b5724544 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/NvdCve_2_0_HandlerTest.html @@ -0,0 +1,92 @@ + + + + +NvdCve_2_0_HandlerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler;
    +22  import java.io.File;
    +23  import javax.xml.parsers.SAXParser;
    +24  import javax.xml.parsers.SAXParserFactory;
    +25  import org.junit.After;
    +26  import org.junit.AfterClass;
    +27  import org.junit.Before;
    +28  import org.junit.BeforeClass;
    +29  import org.junit.Test;
    +30  import static org.junit.Assert.*;
    +31  
    +32  /**
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class NvdCve_2_0_HandlerTest {
    +37  
    +38      public NvdCve_2_0_HandlerTest() {
    +39      }
    +40  
    +41      @BeforeClass
    +42      public static void setUpClass() throws Exception {
    +43      }
    +44  
    +45      @AfterClass
    +46      public static void tearDownClass() throws Exception {
    +47      }
    +48  
    +49      @Before
    +50      public void setUp() {
    +51      }
    +52  
    +53      @After
    +54      public void tearDown() {
    +55      }
    +56  
    +57      @Test
    +58      public void testParse() {
    +59          Exception results = null;
    +60          try {
    +61              SAXParserFactory factory = SAXParserFactory.newInstance();
    +62              SAXParser saxParser = factory.newSAXParser();
    +63  
    +64              File file = new File(this.getClass().getClassLoader().getResource("nvdcve-2.0-2012.xml").getPath());
    +65  
    +66              NvdCve20Handler instance = new NvdCve20Handler();
    +67  
    +68              saxParser.parse(file, instance);
    +69          } catch (Exception ex) {
    +70              results = ex;
    +71          }
    +72          assertTrue("Exception thrown during parse of 2012 CVE version 2.0?", results == null);
    +73          if (results != null) {
    +74              System.err.println(results);
    +75          }
    +76  
    +77      }
    +78  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html new file mode 100644 index 000000000..a4ab9ea4a --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -0,0 +1,33 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.nvdcve + + + + +

    + org.owasp.dependencycheck.data.nvdcve +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html new file mode 100644 index 000000000..e1e20a2d6 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -0,0 +1,82 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.nvdcve + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.nvdcve

    + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + BaseDBTestCase +
    + CveDBTest +
    + NvdCve_1_2_HandlerTest +
    + NvdCve_2_0_HandlerTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/AbstractUpdateTaskTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/AbstractUpdateTaskTest.html new file mode 100644 index 000000000..eefc46adf --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/AbstractUpdateTaskTest.html @@ -0,0 +1,154 @@ + + + + +AbstractUpdateTaskTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.net.MalformedURLException;
    +24  import java.text.DateFormat;
    +25  import java.util.Calendar;
    +26  import java.util.logging.Level;
    +27  import java.util.logging.Logger;
    +28  import org.junit.After;
    +29  import org.junit.AfterClass;
    +30  import org.junit.Before;
    +31  import org.junit.BeforeClass;
    +32  import org.junit.Test;
    +33  import static org.junit.Assert.*;
    +34  import org.owasp.dependencycheck.data.UpdateException;
    +35  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +36  
    +37  /**
    +38   *
    +39   * @author Jeremy Long (jeremy.long@owasp.org)
    +40   */
    +41  public class AbstractUpdateTaskTest {
    +42  
    +43      public AbstractUpdateTaskTest() {
    +44      }
    +45  
    +46      @BeforeClass
    +47      public static void setUpClass() {
    +48      }
    +49  
    +50      @AfterClass
    +51      public static void tearDownClass() {
    +52      }
    +53  
    +54      @Before
    +55      public void setUp() {
    +56      }
    +57  
    +58      @After
    +59      public void tearDown() {
    +60      }
    +61  
    +62      public AbstractUpdateTask getAbstractUpdateImpl() throws Exception {
    +63          DataStoreMetaInfo props = new DataStoreMetaInfo();
    +64          AbstractUpdateTask instance = new AbstractUpdateImpl(props);
    +65          return instance;
    +66      }
    +67  
    +68      /**
    +69       * Test of setDeleteAndRecreate method, of class AbstractUpdateTask.
    +70       */
    +71      @Test
    +72      public void testSetDeleteAndRecreate() throws Exception {
    +73          boolean deleteAndRecreate = false;
    +74          boolean expResult = false;
    +75          AbstractUpdateTask instance = getAbstractUpdateImpl();
    +76          instance.setDeleteAndRecreate(deleteAndRecreate);
    +77          boolean result = instance.shouldDeleteAndRecreate();
    +78          assertEquals(expResult, result);
    +79      }
    +80  
    +81      /**
    +82       * Test of deleteExistingData method, of class AbstractUpdateTask.
    +83       */
    +84      @Test
    +85      public void testDeleteExistingData() throws Exception {
    +86          AbstractUpdateTask instance = getAbstractUpdateImpl();
    +87          Exception result = null;
    +88          try {
    +89              instance.deleteExistingData();
    +90          } catch (IOException ex) {
    +91              result = ex;
    +92          }
    +93          assertNull(result);
    +94      }
    +95  
    +96      /**
    +97       * Test of openDataStores method, of class AbstractUpdateTask.
    +98       */
    +99      @Test
    +100     public void testOpenDataStores() throws Exception {
    +101         AbstractUpdateTask instance = getAbstractUpdateImpl();
    +102         instance.openDataStores();
    +103         instance.closeDataStores();
    +104     }
    +105 
    +106     /**
    +107      * Test of withinRange method, of class AbstractUpdateTask.
    +108      */
    +109     @Test
    +110     public void testWithinRange() throws Exception {
    +111         Calendar c = Calendar.getInstance();
    +112 
    +113         long current = c.getTimeInMillis();
    +114         long lastRun = c.getTimeInMillis() - (3 * (1000 * 60 * 60 * 24));
    +115         int range = 7; // 7 days
    +116         AbstractUpdateTask instance = getAbstractUpdateImpl();
    +117         boolean expResult = true;
    +118         boolean result = instance.withinRange(lastRun, current, range);
    +119         assertEquals(expResult, result);
    +120 
    +121         lastRun = c.getTimeInMillis() - (8 * (1000 * 60 * 60 * 24));
    +122         expResult = false;
    +123         result = instance.withinRange(lastRun, current, range);
    +124         assertEquals(expResult, result);
    +125     }
    +126 
    +127     public class AbstractUpdateImpl extends AbstractUpdateTask {
    +128 
    +129         public AbstractUpdateImpl(DataStoreMetaInfo props) throws Exception {
    +130             super(props);
    +131         }
    +132 
    +133         public Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
    +134             return null;
    +135         }
    +136 
    +137         public void update() throws UpdateException {
    +138         }
    +139     }
    +140 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/BatchUpdateTaskTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/BatchUpdateTaskTest.html new file mode 100644 index 000000000..9b487b58a --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/BatchUpdateTaskTest.html @@ -0,0 +1,135 @@ + + + + +BatchUpdateTaskTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.net.MalformedURLException;
    +23  import org.apache.commons.io.FileUtils;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  import org.owasp.dependencycheck.data.UpdateException;
    +31  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +32  import org.owasp.dependencycheck.utils.Settings;
    +33  
    +34  /**
    +35   *
    +36   * @author Jeremy Long (jeremy.long@owasp.org)
    +37   */
    +38  public class BatchUpdateTaskTest {
    +39  
    +40      public BatchUpdateTaskTest() {
    +41      }
    +42  
    +43      @BeforeClass
    +44      public static void setUpClass() {
    +45      }
    +46  
    +47      @AfterClass
    +48      public static void tearDownClass() {
    +49      }
    +50      private String old12;
    +51      private String old20;
    +52  
    +53      @Before
    +54      public void setUp() throws Exception {
    +55          old12 = Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL);
    +56          old20 = Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL);
    +57  
    +58          File tmp = Settings.getTempDirectory();
    +59          if (!tmp.exists()) {
    +60              tmp.mkdirs();
    +61          }
    +62  
    +63          File dest = new File(tmp, "data.zip");
    +64          File file = new File(this.getClass().getClassLoader().getResource("data.zip").toURI());
    +65          FileUtils.copyFile(file, dest);
    +66          String path = "file:///" + dest.getCanonicalPath();
    +67          Settings.setString(Settings.KEYS.BATCH_UPDATE_URL, path);
    +68  
    +69          dest = new File(tmp, "nvdcve-2012.xml");
    +70          file = new File(this.getClass().getClassLoader().getResource("nvdcve-2012.xml").toURI());
    +71          FileUtils.copyFile(file, dest);
    +72          path = "file:///" + dest.getCanonicalPath();
    +73          Settings.setString(Settings.KEYS.CVE_MODIFIED_12_URL, path);
    +74  
    +75          dest = new File(tmp, "nvdcve-2.0-2012.xml");
    +76          file = new File(this.getClass().getClassLoader().getResource("nvdcve-2.0-2012.xml").toURI());
    +77          FileUtils.copyFile(file, dest);
    +78          path = "file:///" + dest.getCanonicalPath();
    +79          Settings.setString(Settings.KEYS.CVE_MODIFIED_20_URL, path);
    +80      }
    +81  
    +82      @After
    +83      public void tearDown() {
    +84          Settings.setString(Settings.KEYS.CVE_MODIFIED_12_URL, old12);
    +85          Settings.setString(Settings.KEYS.CVE_MODIFIED_20_URL, old20);
    +86          Settings.setString(Settings.KEYS.BATCH_UPDATE_URL, "");
    +87      }
    +88  
    +89      public BatchUpdateTask getBatchUpdateTask() throws MalformedURLException, DownloadFailedException, UpdateException {
    +90          DataStoreMetaInfo props = new DataStoreMetaInfo();
    +91          BatchUpdateTask instance = new BatchUpdateTask(props);
    +92          return instance;
    +93      }
    +94  
    +95      /**
    +96       * Test of setDoBatchUpdate method, of class BatchUpdateTask.
    +97       */
    +98      @Test
    +99      public void testSetDoBatchUpdate() throws DownloadFailedException, MalformedURLException, UpdateException {
    +100         boolean expected = false;
    +101         BatchUpdateTask instance = getBatchUpdateTask();
    +102         instance.setDoBatchUpdate(expected);
    +103         boolean results = instance.isDoBatchUpdate();
    +104         assertEquals(results, expected);
    +105     }
    +106 
    +107     /**
    +108      * Test of update method, of class BatchUpdateTask.
    +109      */
    +110     @Test
    +111     public void testUpdate() throws Exception {
    +112         BatchUpdateTask instance = getBatchUpdateTask();
    +113 
    +114         //do some setup
    +115         instance.setDoBatchUpdate(true);
    +116         instance.deleteExistingData();
    +117 
    +118         instance.update(); //no exceptions it worked?
    +119         //todo add some actual asserts to check things.
    +120     }
    +121 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DataStoreMetaInfoTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DataStoreMetaInfoTest.html new file mode 100644 index 000000000..1d1c86345 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DataStoreMetaInfoTest.html @@ -0,0 +1,132 @@ + + + + +DataStoreMetaInfoTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import org.junit.After;
    +23  import org.junit.AfterClass;
    +24  import org.junit.Before;
    +25  import org.junit.BeforeClass;
    +26  import org.junit.Test;
    +27  import static org.junit.Assert.*;
    +28  
    +29  /**
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class DataStoreMetaInfoTest {
    +34  
    +35      public DataStoreMetaInfoTest() {
    +36      }
    +37  
    +38      @BeforeClass
    +39      public static void setUpClass() {
    +40      }
    +41  
    +42      @AfterClass
    +43      public static void tearDownClass() {
    +44      }
    +45  
    +46      @Before
    +47      public void setUp() {
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() {
    +52      }
    +53  
    +54      /**
    +55       * Test of isBatchUpdateMode method, of class DataStoreMetaInfo.
    +56       */
    +57      @Test
    +58      public void testIsBatchUpdateMode() {
    +59          DataStoreMetaInfo instance = new DataStoreMetaInfo();
    +60          boolean expResult = false;
    +61          instance.setBatchUpdateMode(expResult);
    +62          boolean result = instance.isBatchUpdateMode();
    +63          assertEquals(expResult, result);
    +64      }
    +65  
    +66      /**
    +67       * Test of isEmpty method, of class DataStoreMetaInfo.
    +68       */
    +69      @Test
    +70      public void testIsEmpty() {
    +71          DataStoreMetaInfo instance = new DataStoreMetaInfo();
    +72          boolean expResult = false;
    +73          boolean result = instance.isEmpty();
    +74          assertEquals(expResult, result);
    +75      }
    +76  
    +77      /**
    +78       * Test of save method, of class DataStoreMetaInfo.
    +79       */
    +80      @Test
    +81      public void testSave() throws Exception {
    +82          NvdCveInfo updatedValue = new NvdCveInfo();
    +83          String key = "test";
    +84          long expected = 1337;
    +85          updatedValue.setId(key);
    +86          updatedValue.setTimestamp(expected);
    +87          DataStoreMetaInfo instance = new DataStoreMetaInfo();
    +88          instance.save(updatedValue);
    +89          //reload the properties
    +90          instance = new DataStoreMetaInfo();
    +91          long results = Long.parseLong(instance.getProperty("lastupdated." + key));
    +92          assertEquals(expected, results);
    +93  
    +94      }
    +95  
    +96      /**
    +97       * Test of getProperty method, of class DataStoreMetaInfo.
    +98       */
    +99      @Test
    +100     public void testGetProperty_String_String() {
    +101         String key = "doesn't exist";
    +102         String defaultValue = "default";
    +103         DataStoreMetaInfo instance = new DataStoreMetaInfo();
    +104         String expResult = "default";
    +105         String result = instance.getProperty(key, defaultValue);
    +106         assertEquals(expResult, result);
    +107     }
    +108 
    +109     /**
    +110      * Test of getPropertiesFile method, of class DataStoreMetaInfo.
    +111      */
    +112     @Test
    +113     public void testGetPropertiesFile() {
    +114         File result = DataStoreMetaInfo.getPropertiesFile();
    +115         //wow... rigorous!
    +116         assertNotNull(result);
    +117     }
    +118 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DatabaseUpdaterIntegrationTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DatabaseUpdaterIntegrationTest.html new file mode 100644 index 000000000..f371a32af --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/DatabaseUpdaterIntegrationTest.html @@ -0,0 +1,75 @@ + + + + +DatabaseUpdaterIntegrationTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class DatabaseUpdaterIntegrationTest {
    +33  
    +34      public DatabaseUpdaterIntegrationTest() {
    +35      }
    +36  
    +37      @BeforeClass
    +38      public static void setUpClass() {
    +39      }
    +40  
    +41      @AfterClass
    +42      public static void tearDownClass() {
    +43      }
    +44  
    +45      @Before
    +46      public void setUp() {
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      /**
    +54       * Test of update method, of class DatabaseUpdater.
    +55       */
    +56      @Test
    +57      public void testUpdate() throws Exception {
    +58          DatabaseUpdater instance = new DatabaseUpdater();
    +59          instance.update();
    +60      }
    +61  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/NvdCveInfoTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/NvdCveInfoTest.html new file mode 100644 index 000000000..68401f027 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/NvdCveInfoTest.html @@ -0,0 +1,127 @@ + + + + +NvdCveInfoTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   * Rigorous test of setters/getters.
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class NvdCveInfoTest {
    +34  
    +35      public NvdCveInfoTest() {
    +36      }
    +37  
    +38      @BeforeClass
    +39      public static void setUpClass() {
    +40      }
    +41  
    +42      @AfterClass
    +43      public static void tearDownClass() {
    +44      }
    +45  
    +46      @Before
    +47      public void setUp() {
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() {
    +52      }
    +53  
    +54      /**
    +55       * Test of setId and getId method, of class NvdCveInfo.
    +56       */
    +57      @Test
    +58      public void testSetGetId() {
    +59          NvdCveInfo instance = new NvdCveInfo();
    +60          String expResult = "id";
    +61          instance.setId(expResult);
    +62          String result = instance.getId();
    +63          assertEquals(expResult, result);
    +64      }
    +65  
    +66      /**
    +67       * Test of getUrl method, of class NvdCveInfo.
    +68       */
    +69      @Test
    +70      public void testSetGetUrl() {
    +71          NvdCveInfo instance = new NvdCveInfo();
    +72          String expResult = "http://www.someurl.com/something";
    +73          instance.setUrl(expResult);
    +74          String result = instance.getUrl();
    +75          assertEquals(expResult, result);
    +76      }
    +77  
    +78      /**
    +79       * Test of getOldSchemaVersionUrl method, of class NvdCveInfo.
    +80       */
    +81      @Test
    +82      public void testSetGetOldSchemaVersionUrl() {
    +83          NvdCveInfo instance = new NvdCveInfo();
    +84          String expResult = "http://www.someurl.com/something";
    +85          instance.setOldSchemaVersionUrl(expResult);
    +86          String result = instance.getOldSchemaVersionUrl();
    +87          assertEquals(expResult, result);
    +88      }
    +89  
    +90      /**
    +91       * Test of getTimestamp method, of class NvdCveInfo.
    +92       */
    +93      @Test
    +94      public void testSetGetTimestamp() {
    +95          NvdCveInfo instance = new NvdCveInfo();
    +96          long expResult = 1337L;
    +97          instance.setTimestamp(expResult);
    +98          long result = instance.getTimestamp();
    +99          assertEquals(expResult, result);
    +100     }
    +101 
    +102     /**
    +103      * Test of getNeedsUpdate method, of class NvdCveInfo.
    +104      */
    +105     @Test
    +106     public void testSetGetNeedsUpdate() {
    +107         NvdCveInfo instance = new NvdCveInfo();
    +108         boolean expResult = true;
    +109         instance.setNeedsUpdate(expResult);
    +110         boolean result = instance.getNeedsUpdate();
    +111         assertEquals(expResult, result);
    +112     }
    +113 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/StandardUpdateTaskIntegrationTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/StandardUpdateTaskIntegrationTest.html new file mode 100644 index 000000000..968aada05 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/StandardUpdateTaskIntegrationTest.html @@ -0,0 +1,95 @@ + + + + +StandardUpdateTaskIntegrationTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.net.MalformedURLException;
    +22  import org.junit.After;
    +23  import org.junit.AfterClass;
    +24  import org.junit.Before;
    +25  import org.junit.BeforeClass;
    +26  import org.junit.Test;
    +27  import static org.junit.Assert.*;
    +28  import org.owasp.dependencycheck.data.UpdateException;
    +29  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +30  
    +31  /**
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class StandardUpdateTaskIntegrationTest {
    +36  
    +37      public StandardUpdateTaskIntegrationTest() {
    +38      }
    +39  
    +40      @BeforeClass
    +41      public static void setUpClass() {
    +42      }
    +43  
    +44      @AfterClass
    +45      public static void tearDownClass() {
    +46      }
    +47  
    +48      @Before
    +49      public void setUp() {
    +50      }
    +51  
    +52      @After
    +53      public void tearDown() {
    +54      }
    +55  
    +56      public StandardUpdateTask getStandardUpdateTask() throws MalformedURLException, DownloadFailedException, UpdateException {
    +57          DataStoreMetaInfo props = new DataStoreMetaInfo();
    +58          StandardUpdateTask instance = new StandardUpdateTask(props);
    +59          return instance;
    +60      }
    +61  
    +62      /**
    +63       * Test of update method, of class StandardUpdateTask.
    +64       */
    +65      @Test
    +66      public void testUpdate() throws Exception {
    +67          StandardUpdateTask instance = getStandardUpdateTask();
    +68          instance.update();
    +69          //TODO make this an actual test
    +70      }
    +71  
    +72      /**
    +73       * Test of updatesNeeded method, of class StandardUpdateTask.
    +74       */
    +75      @Test
    +76      public void testUpdatesNeeded() throws Exception {
    +77          StandardUpdateTask instance = getStandardUpdateTask();
    +78          Updateable result = instance.updatesNeeded();
    +79          assertNotNull(result);
    +80      }
    +81  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/UpdateableTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/UpdateableTest.html new file mode 100644 index 000000000..3f2960b29 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/UpdateableTest.html @@ -0,0 +1,174 @@ + + + + +UpdateableTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.net.MalformedURLException;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +31  
    +32  /**
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class UpdateableTest {
    +37  
    +38      public UpdateableTest() {
    +39      }
    +40  
    +41      @BeforeClass
    +42      public static void setUpClass() {
    +43      }
    +44  
    +45      @AfterClass
    +46      public static void tearDownClass() {
    +47      }
    +48  
    +49      @Before
    +50      public void setUp() {
    +51      }
    +52  
    +53      @After
    +54      public void tearDown() {
    +55      }
    +56  
    +57      /**
    +58       * Test of isUpdateNeeded method, of class Updateable.
    +59       */
    +60      @Test
    +61      public void testIsUpdateNeeded() throws MalformedURLException, DownloadFailedException, IOException {
    +62          String id = "key";
    +63          //use a local file as this test will load the result and check the timestamp
    +64          File f = new File("target/test-classes/nvdcve-2.0-2012.xml");
    +65          String url = "file:///" + f.getCanonicalPath();
    +66          Updateable instance = new Updateable();
    +67          instance.add(id, url, url, false);
    +68  
    +69          boolean expResult = false;
    +70          boolean result = instance.isUpdateNeeded();
    +71          assertEquals(expResult, result);
    +72  
    +73          instance.add("nextId", url, url, true);
    +74  
    +75          expResult = true;
    +76          result = instance.isUpdateNeeded();
    +77          assertEquals(expResult, result);
    +78      }
    +79  
    +80      /**
    +81       * Test of add method, of class Updateable.
    +82       */
    +83      @Test
    +84      public void testAdd_3args() throws Exception {
    +85          String id = "key";
    +86          File f = new File("target/test-classes/nvdcve-2.0-2012.xml");
    +87          //use a local file as this test will load the result and check the timestamp
    +88          String url = "file:///" + f.getCanonicalPath();
    +89          Updateable instance = new Updateable();
    +90          instance.add(id, url, url);
    +91          NvdCveInfo results = instance.get(id);
    +92          assertEquals(id, results.getId());
    +93          assertEquals(url, results.getUrl());
    +94          assertEquals(url, results.getOldSchemaVersionUrl());
    +95      }
    +96  
    +97      /**
    +98       * Test of add method, of class Updateable.
    +99       */
    +100     @Test
    +101     public void testAdd_4args() throws Exception {
    +102         String id = "key";
    +103         //use a local file as this test will load the result and check the timestamp
    +104         File f = new File("target/test-classes/nvdcve-2.0-2012.xml");
    +105         String url = "file:///" + f.getCanonicalPath();
    +106         Updateable instance = new Updateable();
    +107         instance.add(id, url, url, false);
    +108 
    +109         boolean expResult = false;
    +110         boolean result = instance.isUpdateNeeded();
    +111         assertEquals(expResult, result);
    +112 
    +113         instance.add("nextId", url, url, false);
    +114         NvdCveInfo results = instance.get(id);
    +115 
    +116         assertEquals(id, results.getId());
    +117         assertEquals(url, results.getUrl());
    +118         assertEquals(url, results.getOldSchemaVersionUrl());
    +119 
    +120     }
    +121 
    +122     /**
    +123      * Test of clear method, of class Updateable.
    +124      */
    +125     @Test
    +126     public void testClear() throws MalformedURLException, DownloadFailedException, IOException {
    +127         String id = "key";
    +128         //use a local file as this test will load the result and check the timestamp
    +129         File f = new File("target/test-classes/nvdcve-2.0-2012.xml");
    +130         String url = "file:///" + f.getCanonicalPath();
    +131         Updateable instance = new Updateable();
    +132         instance.add(id, url, url, false);
    +133         assertFalse(instance.getCollection().isEmpty());
    +134         instance.clear();
    +135         assertTrue(instance.getCollection().isEmpty());
    +136     }
    +137 
    +138     /**
    +139      * Test of iterator method, of class Updateable.
    +140      */
    +141     @Test
    +142     public void testIterator() throws IOException {
    +143         //use a local file as this test will load the result and check the timestamp
    +144         File f = new File("target/test-classes/nvdcve-2.0-2012.xml");
    +145         String url = "file:///" + f.getCanonicalPath();
    +146         Updateable instance = new Updateable();
    +147         instance.add("one", url, url, false);
    +148         instance.add("two", url, url, false);
    +149         instance.add("three", url, url, false);
    +150         int itemsProcessed = 0;
    +151         for (NvdCveInfo item : instance) {
    +152             if ("one".equals(item.getId())) {
    +153                 instance.remove();
    +154             }
    +155             itemsProcessed += 1;
    +156         }
    +157         assertEquals(3, itemsProcessed);
    +158         assertEquals(2, instance.getCollection().size());
    +159     }
    +160 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html new file mode 100644 index 000000000..2ebf7d42d --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html @@ -0,0 +1,45 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.update + + + + +

    + org.owasp.dependencycheck.data.update +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html new file mode 100644 index 000000000..b3cef30f2 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html @@ -0,0 +1,102 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.update + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.update

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractUpdateImpl +
    + AbstractUpdateTaskTest +
    + BatchUpdateTaskTest +
    + DataStoreMetaInfoTest +
    + DatabaseUpdaterIntegrationTest +
    + NvdCveInfoTest +
    + StandardUpdateTaskIntegrationTest +
    + UpdateableTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html new file mode 100644 index 000000000..d42226f5f --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html @@ -0,0 +1,315 @@ + + + + +DependencyTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.util.Set;
    +22  import org.owasp.dependencycheck.dependency.EvidenceCollection;
    +23  import org.owasp.dependencycheck.dependency.Identifier;
    +24  import org.owasp.dependencycheck.dependency.Dependency;
    +25  import org.owasp.dependencycheck.dependency.Evidence;
    +26  import java.io.File;
    +27  import java.util.List;
    +28  import org.junit.After;
    +29  import org.junit.AfterClass;
    +30  import org.junit.Before;
    +31  import org.junit.BeforeClass;
    +32  import org.junit.Test;
    +33  import static org.junit.Assert.*;
    +34  
    +35  /**
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class DependencyTest {
    +40  
    +41      public DependencyTest() {
    +42      }
    +43  
    +44      @BeforeClass
    +45      public static void setUpClass() throws Exception {
    +46      }
    +47  
    +48      @AfterClass
    +49      public static void tearDownClass() throws Exception {
    +50      }
    +51  
    +52      @Before
    +53      public void setUp() {
    +54      }
    +55  
    +56      @After
    +57      public void tearDown() {
    +58      }
    +59  
    +60      /**
    +61       * Test of getFileName method, of class Dependency.
    +62       */
    +63      @Test
    +64      public void testGetFileName() {
    +65          Dependency instance = new Dependency();
    +66          String expResult = "filename";
    +67          instance.setFileName(expResult);
    +68          String result = instance.getFileName();
    +69          assertEquals(expResult, result);
    +70      }
    +71  
    +72      /**
    +73       * Test of setFileName method, of class Dependency.
    +74       */
    +75      @Test
    +76      public void testSetFileName() {
    +77          String fileName = "test.file";
    +78          Dependency instance = new Dependency();
    +79          instance.setFileName(fileName);
    +80          assertEquals(fileName, instance.getFileName());
    +81      }
    +82  
    +83      /**
    +84       * Test of setActualFilePath method, of class Dependency.
    +85       */
    +86      @Test
    +87      public void testSetActualFilePath() {
    +88          String actualFilePath = "test.file";
    +89          Dependency instance = new Dependency();
    +90          instance.setActualFilePath(actualFilePath);
    +91          assertEquals(actualFilePath, instance.getActualFilePath());
    +92      }
    +93  
    +94      /**
    +95       * Test of getActualFilePath method, of class Dependency.
    +96       */
    +97      @Test
    +98      public void testGetActualFilePath() {
    +99          Dependency instance = new Dependency();
    +100         String expResult = "test.file";
    +101         instance.setActualFilePath(expResult);
    +102         String result = instance.getActualFilePath();
    +103         assertEquals(expResult, result);
    +104     }
    +105 
    +106     /**
    +107      * Test of setFilePath method, of class Dependency.
    +108      */
    +109     @Test
    +110     public void testSetFilePath() {
    +111         String filePath = "test.file";
    +112         Dependency instance = new Dependency();
    +113         instance.setFilePath(filePath);
    +114         assertEquals(filePath, instance.getFilePath());
    +115     }
    +116 
    +117     /**
    +118      * Test of getFilePath method, of class Dependency.
    +119      */
    +120     @Test
    +121     public void testGetFilePath() {
    +122         Dependency instance = new Dependency();
    +123         String expResult = "path/test.file";
    +124         instance.setFilePath(expResult);
    +125         String result = instance.getFilePath();
    +126         assertEquals(expResult, result);
    +127     }
    +128 
    +129     /**
    +130      * Test of setFileExtension method, of class Dependency.
    +131      */
    +132     @Test
    +133     public void testSetFileExtension() {
    +134         String fileExtension = "jar";
    +135         Dependency instance = new Dependency();
    +136         instance.setFileExtension(fileExtension);
    +137         assertEquals(fileExtension, instance.getFileExtension());
    +138     }
    +139 
    +140     /**
    +141      * Test of getFileExtension method, of class Dependency.
    +142      */
    +143     @Test
    +144     public void testGetFileExtension() {
    +145         Dependency instance = new Dependency();
    +146         String expResult = "jar";
    +147         instance.setFileExtension(expResult);
    +148         String result = instance.getFileExtension();
    +149         assertEquals(expResult, result);
    +150     }
    +151 
    +152     /**
    +153      * Test of getMd5sum method, of class Dependency.
    +154      */
    +155     @Test
    +156     public void testGetMd5sum() {
    +157         File file = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +158         Dependency instance = new Dependency(file);
    +159 //        assertEquals("89CE9E36AA9A9E03F1450936D2F4F8DD0F961F8B", result.getSha1sum());
    +160         String expResult = "C30B57142E1CCBC1EFD5CD15F307358F";
    +161         String result = instance.getMd5sum();
    +162         assertEquals(expResult, result);
    +163     }
    +164 
    +165     /**
    +166      * Test of setMd5sum method, of class Dependency.
    +167      */
    +168     @Test
    +169     public void testSetMd5sum() {
    +170         String md5sum = "test";
    +171         Dependency instance = new Dependency();
    +172         instance.setMd5sum(md5sum);
    +173         assertEquals(md5sum, instance.getMd5sum());
    +174     }
    +175 
    +176     /**
    +177      * Test of getSha1sum method, of class Dependency.
    +178      */
    +179     @Test
    +180     public void testGetSha1sum() {
    +181         File file = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +182         Dependency instance = new Dependency(file);
    +183         String expResult = "89CE9E36AA9A9E03F1450936D2F4F8DD0F961F8B";
    +184         String result = instance.getSha1sum();
    +185         assertEquals(expResult, result);
    +186     }
    +187 
    +188     /**
    +189      * Test of setSha1sum method, of class Dependency.
    +190      */
    +191     @Test
    +192     public void testSetSha1sum() {
    +193         String sha1sum = "test";
    +194         Dependency instance = new Dependency();
    +195         instance.setSha1sum(sha1sum);
    +196         assertEquals(sha1sum, instance.getSha1sum());
    +197     }
    +198 
    +199     /**
    +200      * Test of getIdentifiers method, of class Dependency.
    +201      */
    +202     @Test
    +203     public void testGetIdentifiers() {
    +204         Dependency instance = new Dependency();
    +205         List expResult = null;
    +206         Set<Identifier> result = instance.getIdentifiers();
    +207 
    +208         assertTrue(true); //this is just a getter setter pair.
    +209     }
    +210 
    +211     /**
    +212      * Test of setIdentifiers method, of class Dependency.
    +213      */
    +214     @Test
    +215     public void testSetIdentifiers() {
    +216         Set<Identifier> identifiers = null;
    +217         Dependency instance = new Dependency();
    +218         instance.setIdentifiers(identifiers);
    +219         assertTrue(true); //this is just a getter setter pair.
    +220     }
    +221 
    +222     /**
    +223      * Test of addIdentifier method, of class Dependency.
    +224      */
    +225     @Test
    +226     public void testAddIdentifier() {
    +227         String type = "cpe";
    +228         String value = "cpe:/a:apache:struts:2.1.2";
    +229         String url = "http://somewhere";
    +230         Identifier expResult = new Identifier(type, value, url);
    +231 
    +232         Dependency instance = new Dependency();
    +233         instance.addIdentifier(type, value, url);
    +234         assertEquals(1, instance.getIdentifiers().size());
    +235         assertTrue("Identifier doesn't contain expected result.", instance.getIdentifiers().contains(expResult));
    +236     }
    +237 
    +238     /**
    +239      * Test of getEvidence method, of class Dependency.
    +240      */
    +241     @Test
    +242     public void testGetEvidence() {
    +243         Dependency instance = new Dependency();
    +244         EvidenceCollection expResult = null;
    +245         EvidenceCollection result = instance.getEvidence();
    +246         assertTrue(true); //this is just a getter setter pair.
    +247     }
    +248 
    +249     /**
    +250      * Test of getEvidenceUsed method, of class Dependency.
    +251      */
    +252     @Test
    +253     public void testGetEvidenceUsed() {
    +254         Dependency instance = new Dependency();
    +255         String expResult = "used";
    +256 
    +257         instance.getProductEvidence().addEvidence("used", "used", "used", Evidence.Confidence.HIGH);
    +258         instance.getProductEvidence().addEvidence("not", "not", "not", Evidence.Confidence.MEDIUM);
    +259         for (Evidence e : instance.getProductEvidence().iterator(Evidence.Confidence.HIGH)) {
    +260             String use = e.getValue();
    +261         }
    +262 
    +263         EvidenceCollection result = instance.getEvidenceUsed();
    +264 
    +265         assertEquals(1, result.size());
    +266         assertTrue(result.containsUsedString(expResult));
    +267     }
    +268 
    +269     /**
    +270      * Test of getVendorEvidence method, of class Dependency.
    +271      */
    +272     @Test
    +273     public void testGetVendorEvidence() {
    +274         Dependency instance = new Dependency();
    +275         EvidenceCollection expResult = null;
    +276         EvidenceCollection result = instance.getVendorEvidence();
    +277         assertTrue(true); //this is just a getter setter pair.
    +278     }
    +279 
    +280     /**
    +281      * Test of getProductEvidence method, of class Dependency.
    +282      */
    +283     @Test
    +284     public void testGetProductEvidence() {
    +285         Dependency instance = new Dependency();
    +286         EvidenceCollection expResult = null;
    +287         EvidenceCollection result = instance.getProductEvidence();
    +288         assertTrue(true); //this is just a getter setter pair.
    +289     }
    +290 
    +291     /**
    +292      * Test of getVersionEvidence method, of class Dependency.
    +293      */
    +294     @Test
    +295     public void testGetVersionEvidence() {
    +296         Dependency instance = new Dependency();
    +297         EvidenceCollection expResult = null;
    +298         EvidenceCollection result = instance.getVersionEvidence();
    +299         assertTrue(true); //this is just a getter setter pair.
    +300     }
    +301 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html new file mode 100644 index 000000000..0ec34c33d --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html @@ -0,0 +1,106 @@ + + + + +VulnerableSoftwareTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class VulnerableSoftwareTest {
    +33  
    +34      public VulnerableSoftwareTest() {
    +35      }
    +36  
    +37      @BeforeClass
    +38      public static void setUpClass() throws Exception {
    +39      }
    +40  
    +41      @AfterClass
    +42      public static void tearDownClass() throws Exception {
    +43      }
    +44  
    +45      @Before
    +46      public void setUp() {
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      /**
    +54       * Test of equals method, of class VulnerableSoftware.
    +55       */
    +56      @Test
    +57      public void testEquals() {
    +58          VulnerableSoftware obj = new VulnerableSoftware();
    +59          obj.setCpe("cpe:/a:mortbay:jetty:6.1.0");
    +60          VulnerableSoftware instance = new VulnerableSoftware();
    +61          instance.setCpe("cpe:/a:mortbay:jetty:6.1");
    +62          boolean expResult = false;
    +63          boolean result = instance.equals(obj);
    +64          assertEquals(expResult, result);
    +65      }
    +66  
    +67      /**
    +68       * Test of hashCode method, of class VulnerableSoftware.
    +69       */
    +70      @Test
    +71      public void testHashCode() {
    +72          VulnerableSoftware instance = new VulnerableSoftware();
    +73          instance.setCpe("cpe:/a:mortbay:jetty:6.1");
    +74          int expResult = 1849413912;
    +75          int result = instance.hashCode();
    +76          assertEquals(expResult, result);
    +77      }
    +78  
    +79      /**
    +80       * Test of compareTo method, of class VulnerableSoftware.
    +81       */
    +82      @Test
    +83      public void testCompareTo() {
    +84          VulnerableSoftware vs = new VulnerableSoftware();
    +85          vs.setCpe("cpe:/a:mortbay:jetty:6.1.0");
    +86          VulnerableSoftware instance = new VulnerableSoftware();
    +87          instance.setCpe("cpe:/a:mortbay:jetty:6.1");
    +88          int expResult = -2;
    +89          int result = instance.compareTo(vs);
    +90          assertEquals(expResult, result);
    +91      }
    +92  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html new file mode 100644 index 000000000..75aa5f5ff --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html @@ -0,0 +1,27 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.dependency + + + + +

    + org.owasp.dependencycheck.dependency +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html new file mode 100644 index 000000000..c1e35b6c6 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html @@ -0,0 +1,72 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.dependency + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.dependency

    + + + + + + + + + + + + + + + +
    Class Summary
    + DependencyTest +
    + VulnerableSoftwareTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..1b88301fb --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck + + + + +

    + org.owasp.dependencycheck +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..4d0f80534 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck

    + + + + + + + + + + + + +
    Class Summary
    + EngineIntegrationTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html new file mode 100644 index 000000000..bd4a66b7b --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html @@ -0,0 +1,170 @@ + + + + +ReportGeneratorTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.reporting;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.data.cpe.BaseIndexTestCase;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  
    +29  import javax.xml.XMLConstants;
    +30  import javax.xml.transform.stream.StreamSource;
    +31  import javax.xml.validation.Schema;
    +32  import javax.xml.validation.SchemaFactory;
    +33  import javax.xml.validation.Validator;
    +34  import java.io.File;
    +35  import java.io.InputStream;
    +36  
    +37  /**
    +38   *
    +39   * @author Jeremy Long (jeremy.long@owasp.org)
    +40   */
    +41  public class ReportGeneratorTest {
    +42  
    +43      @BeforeClass
    +44      public static void setUpClass() throws Exception {
    +45      }
    +46  
    +47      @AfterClass
    +48      public static void tearDownClass() throws Exception {
    +49      }
    +50  
    +51      @Before
    +52      public void setUp() {
    +53      }
    +54  
    +55      @After
    +56      public void tearDown() {
    +57      }
    +58  
    +59      /**
    +60       * Test of generateReport method, of class ReportGenerator.
    +61       *
    +62       * @throws Exception is thrown when an exception occurs.
    +63       */
    +64      @Test
    +65      public void testGenerateReport() throws Exception {
    +66          String templateName = "HtmlReport";
    +67  //        File f = new File("target/test-reports");
    +68  //        if (!f.exists()) {
    +69  //            f.mkdir();
    +70  //        }
    +71  //        String writeTo = "target/test-reports/Report.html";
    +72  //        Map<String, Object> properties = new HashMap<String, Object>();
    +73  //        Dependency d = new Dependency();
    +74  //        d.setFileName("FileName.jar");
    +75  //        d.setActualFilePath("lib/FileName.jar");
    +76  //        d.addCPEentry("cpe://a:/some:cpe:1.0");
    +77  //
    +78  //        List<Dependency> dependencies = new ArrayList<Dependency>();
    +79  //        d.getProductEvidence().addEvidence("jar","filename","<test>test", Confidence.HIGH);
    +80  //        d.getProductEvidence().addEvidence("manifest","vendor","<test>test", Confidence.HIGH);
    +81  //
    +82  //        for (Evidence e : d.getProductEvidence().iterator(Confidence.HIGH)) {
    +83  //            String t = e.getValue();
    +84  //        }
    +85  //        dependencies.add(d);
    +86  //
    +87  //        Dependency d2 = new Dependency();
    +88  //        d2.setFileName("Another.jar");
    +89  //        d2.setActualFilePath("lib/Another.jar");
    +90  //        d2.addCPEentry("cpe://a:/another:cpe:1.0");
    +91  //        d2.addCPEentry("cpe://a:/another:cpe:1.1");
    +92  //        d2.addCPEentry("cpe://a:/another:cpe:1.2");
    +93  //        d2.getProductEvidence().addEvidence("jar","filename","another.jar", Confidence.HIGH);
    +94  //        d2.getProductEvidence().addEvidence("manifest","vendor","Company A", Confidence.MEDIUM);
    +95  //
    +96  //        for (Evidence e : d2.getProductEvidence().iterator(Confidence.HIGH)) {
    +97  //            String t = e.getValue();
    +98  //        }
    +99  //
    +100 //        dependencies.add(d2);
    +101 //
    +102 //        Dependency d3 = new Dependency();
    +103 //        d3.setFileName("Third.jar");
    +104 //        d3.setActualFilePath("lib/Third.jar");
    +105 //        d3.getProductEvidence().addEvidence("jar","filename","third.jar", Confidence.HIGH);
    +106 //
    +107 //        for (Evidence e : d3.getProductEvidence().iterator(Confidence.HIGH)) {
    +108 //            String t = e.getValue();
    +109 //        }
    +110 //
    +111 //        dependencies.add(d3);
    +112 //
    +113 //        properties.put("dependencies",dependencies);
    +114 //
    +115 //        ReportGenerator instance = new ReportGenerator();
    +116 //        instance.generateReport(templateName, writeTo, properties);
    +117         //assertTrue("need to add a real check here", false);
    +118     }
    +119 
    +120     /**
    +121      * Generates an XML report containing known vulnerabilities and realistic
    +122      * data and validates the generated XML document against the XSD.
    +123      * @throws Exception
    +124      */
    +125     @Test
    +126     public void testGenerateXMLReport() throws Exception {
    +127         String templateName = "XmlReport";
    +128 
    +129         File f = new File("target/test-reports");
    +130         if (!f.exists()) {
    +131             f.mkdir();
    +132         }
    +133         String writeTo = "target/test-reports/Report.xml";
    +134 
    +135         File struts = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +136         File axis = new File(this.getClass().getClassLoader().getResource("axis2-adb-1.4.1.jar").getPath());
    +137         File jetty = new File(this.getClass().getClassLoader().getResource("org.mortbay.jetty.jar").getPath());
    +138 
    +139         Engine engine = new Engine();
    +140         engine.scan(struts);
    +141         engine.scan(axis);
    +142         engine.scan(jetty);
    +143         engine.analyzeDependencies();
    +144 
    +145         ReportGenerator generator = new ReportGenerator("Test Report", engine.getDependencies(), engine.getAnalyzers());
    +146         generator.generateReport(templateName, writeTo);
    +147 
    +148         InputStream xsdStream = ReportGenerator.class.getClassLoader().getResourceAsStream("schema/DependencyCheck.xsd");
    +149         StreamSource xsdSource = new StreamSource(xsdStream);
    +150         StreamSource xmlSource =  new StreamSource(new File(writeTo));
    +151         SchemaFactory sf = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
    +152         Schema schema = sf.newSchema(xsdSource);
    +153         Validator validator = schema.newValidator();
    +154         validator.validate(xmlSource);
    +155     }
    +156 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html new file mode 100644 index 000000000..31255a0ae --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.reporting + + + + +

    + org.owasp.dependencycheck.reporting +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html new file mode 100644 index 000000000..b2685612c --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.reporting + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.reporting

    + + + + + + + + + + + + +
    Class Summary
    + ReportGeneratorTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html new file mode 100644 index 000000000..a7ea0e323 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html @@ -0,0 +1,122 @@ + + + + +PropertyTypeTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class PropertyTypeTest {
    +33  
    +34      public PropertyTypeTest() {
    +35      }
    +36  
    +37      @BeforeClass
    +38      public static void setUpClass() {
    +39      }
    +40  
    +41      @AfterClass
    +42      public static void tearDownClass() {
    +43      }
    +44  
    +45      @Before
    +46      public void setUp() {
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      /**
    +54       * Test of set and getValue method, of class PropertyType.
    +55       */
    +56      @Test
    +57      public void testSetGetValue() {
    +58  
    +59          PropertyType instance = new PropertyType();
    +60          String expResult = "test";
    +61          instance.setValue(expResult);
    +62          String result = instance.getValue();
    +63          assertEquals(expResult, result);
    +64      }
    +65  
    +66      /**
    +67       * Test of isRegex method, of class PropertyType.
    +68       */
    +69      @Test
    +70      public void testIsRegex() {
    +71          PropertyType instance = new PropertyType();
    +72          boolean result = instance.isRegex();
    +73          assertFalse(instance.isRegex());
    +74          instance.setRegex(true);
    +75          assertTrue(instance.isRegex());
    +76      }
    +77  
    +78      /**
    +79       * Test of isCaseSensitive method, of class PropertyType.
    +80       */
    +81      @Test
    +82      public void testIsCaseSensitive() {
    +83          PropertyType instance = new PropertyType();
    +84          assertFalse(instance.isCaseSensitive());
    +85          instance.setCaseSensitive(true);
    +86          assertTrue(instance.isCaseSensitive());
    +87      }
    +88  
    +89      /**
    +90       * Test of matches method, of class PropertyType.
    +91       */
    +92      @Test
    +93      public void testMatches() {
    +94          String text = "Simple";
    +95  
    +96          PropertyType instance = new PropertyType();
    +97          instance.setValue("simple");
    +98          assertTrue(instance.matches(text));
    +99          instance.setCaseSensitive(true);
    +100         assertFalse(instance.matches(text));
    +101 
    +102         instance.setValue("s.*le");
    +103         instance.setRegex(true);
    +104         assertFalse(instance.matches(text));
    +105         instance.setCaseSensitive(false);
    +106         assertTrue(instance.matches(text));
    +107     }
    +108 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html new file mode 100644 index 000000000..e56b67cfc --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html @@ -0,0 +1,109 @@ + + + + +SuppressionHandlerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileInputStream;
    +23  import java.io.InputStream;
    +24  import java.io.InputStreamReader;
    +25  import java.io.Reader;
    +26  import java.util.List;
    +27  import javax.xml.parsers.SAXParser;
    +28  import javax.xml.parsers.SAXParserFactory;
    +29  import org.junit.After;
    +30  import org.junit.AfterClass;
    +31  import org.junit.Before;
    +32  import org.junit.BeforeClass;
    +33  import org.junit.Test;
    +34  import static org.junit.Assert.*;
    +35  import org.xml.sax.InputSource;
    +36  import org.xml.sax.XMLReader;
    +37  
    +38  /**
    +39   *
    +40   * @author Jeremy Long (jeremy.long@owasp.org)
    +41   */
    +42  public class SuppressionHandlerTest {
    +43  
    +44      public SuppressionHandlerTest() {
    +45      }
    +46  
    +47      @BeforeClass
    +48      public static void setUpClass() {
    +49      }
    +50  
    +51      @AfterClass
    +52      public static void tearDownClass() {
    +53      }
    +54  
    +55      @Before
    +56      public void setUp() {
    +57      }
    +58  
    +59      @After
    +60      public void tearDown() {
    +61      }
    +62  
    +63      /**
    +64       * Test of getSupressionRules method, of class SuppressionHandler.
    +65       *
    +66       * @throws Exception thrown if there is an exception....
    +67       */
    +68      @Test
    +69      public void testHandler() throws Exception {
    +70          File file = new File(this.getClass().getClassLoader().getResource("suppressions.xml").getPath());
    +71  
    +72          File schema = new File(this.getClass().getClassLoader().getResource("schema/suppression.xsd").getPath());
    +73          SuppressionHandler handler = new SuppressionHandler();
    +74  
    +75          SAXParserFactory factory = SAXParserFactory.newInstance();
    +76          factory.setNamespaceAware(true);
    +77          factory.setValidating(true);
    +78          SAXParser saxParser = factory.newSAXParser();
    +79          saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_LANGUAGE, SuppressionParser.W3C_XML_SCHEMA);
    +80          saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_SOURCE, schema);
    +81          XMLReader xmlReader = saxParser.getXMLReader();
    +82          xmlReader.setErrorHandler(new SuppressionErrorHandler());
    +83          xmlReader.setContentHandler(handler);
    +84  
    +85          InputStream inputStream = new FileInputStream(file);
    +86          Reader reader = new InputStreamReader(inputStream, "UTF-8");
    +87          InputSource in = new InputSource(reader);
    +88          //in.setEncoding("UTF-8");
    +89  
    +90          xmlReader.parse(in);
    +91  
    +92          List result = handler.getSupressionRules();
    +93          assertTrue(result.size() > 3);
    +94      }
    +95  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html new file mode 100644 index 000000000..4e187818a --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html @@ -0,0 +1,80 @@ + + + + +SuppressionParserTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.util.List;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import static org.junit.Assert.*;
    +29  
    +30  /**
    +31   * Test of the suppression parser.
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class SuppressionParserTest {
    +36  
    +37      public SuppressionParserTest() {
    +38      }
    +39  
    +40      @BeforeClass
    +41      public static void setUpClass() {
    +42      }
    +43  
    +44      @AfterClass
    +45      public static void tearDownClass() {
    +46      }
    +47  
    +48      @Before
    +49      public void setUp() {
    +50      }
    +51  
    +52      @After
    +53      public void tearDown() {
    +54      }
    +55  
    +56      /**
    +57       * Test of parseSuppressionRules method, of class SuppressionParser.
    +58       */
    +59      @Test
    +60      public void testParseSuppressionRules() throws Exception {
    +61          File file = new File(this.getClass().getClassLoader().getResource("suppressions.xml").getPath());
    +62          SuppressionParser instance = new SuppressionParser();
    +63          List result = instance.parseSuppressionRules(file);
    +64          assertTrue(result.size() > 3);
    +65      }
    +66  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html new file mode 100644 index 000000000..304053f19 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html @@ -0,0 +1,485 @@ + + + + +SuppressionRuleTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.util.ArrayList;
    +23  import java.util.List;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  import org.owasp.dependencycheck.dependency.Dependency;
    +31  import org.owasp.dependencycheck.dependency.Identifier;
    +32  import org.owasp.dependencycheck.dependency.Vulnerability;
    +33  
    +34  /**
    +35   * Test of the suppression rule.
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class SuppressionRuleTest {
    +40  
    +41      public SuppressionRuleTest() {
    +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() {
    +54      }
    +55  
    +56      @After
    +57      public void tearDown() {
    +58      }
    +59  
    +60      //<editor-fold defaultstate="collapsed" desc="Stupid tests of properties">
    +61      /**
    +62       * Test of FilePath property, of class SuppressionRule.
    +63       */
    +64      @Test
    +65      public void testFilePath() {
    +66          SuppressionRule instance = new SuppressionRule();
    +67          PropertyType expResult = new PropertyType();
    +68          expResult.setValue("test");
    +69          instance.setFilePath(expResult);
    +70          PropertyType result = instance.getFilePath();
    +71          assertEquals(expResult, result);
    +72      }
    +73  
    +74      /**
    +75       * Test of Sha1 property, of class SuppressionRule.
    +76       */
    +77      @Test
    +78      public void testSha1() {
    +79          SuppressionRule instance = new SuppressionRule();
    +80          String expResult = "384FAA82E193D4E4B0546059CA09572654BC3970";
    +81          instance.setSha1(expResult);
    +82          String result = instance.getSha1();
    +83          assertEquals(expResult, result);
    +84      }
    +85  
    +86      /**
    +87       * Test of Cpe property, of class SuppressionRule.
    +88       */
    +89      @Test
    +90      public void testCpe() {
    +91          SuppressionRule instance = new SuppressionRule();
    +92          ArrayList<PropertyType> cpe = new ArrayList<PropertyType>();
    +93          instance.setCpe(cpe);
    +94          assertFalse(instance.hasCpe());
    +95          PropertyType pt = new PropertyType();
    +96          pt.setValue("one");
    +97          instance.addCpe(pt);
    +98          assertTrue(instance.hasCpe());
    +99          List<PropertyType> result = instance.getCpe();
    +100         assertEquals(cpe, result);
    +101 
    +102     }
    +103 
    +104     /**
    +105      * Test of CvssBelow property, of class SuppressionRule.
    +106      */
    +107     @Test
    +108     public void testGetCvssBelow() {
    +109         SuppressionRule instance = new SuppressionRule();
    +110         ArrayList<Float> cvss = new ArrayList<Float>();
    +111         instance.setCvssBelow(cvss);
    +112         assertFalse(instance.hasCvssBelow());
    +113         instance.addCvssBelow(0.7f);
    +114         assertTrue(instance.hasCvssBelow());
    +115         List<Float> result = instance.getCvssBelow();
    +116         assertEquals(cvss, result);
    +117     }
    +118 
    +119     /**
    +120      * Test of Cwe property, of class SuppressionRule.
    +121      */
    +122     @Test
    +123     public void testCwe() {
    +124         SuppressionRule instance = new SuppressionRule();
    +125         ArrayList<String> cwe = new ArrayList<String>();
    +126         instance.setCwe(cwe);
    +127         assertFalse(instance.hasCwe());
    +128         instance.addCwe("2");
    +129         assertTrue(instance.hasCwe());
    +130         List<String> result = instance.getCwe();
    +131         assertEquals(cwe, result);
    +132     }
    +133 
    +134     /**
    +135      * Test of Cve property, of class SuppressionRule.
    +136      */
    +137     @Test
    +138     public void testCve() {
    +139         SuppressionRule instance = new SuppressionRule();
    +140         ArrayList<String> cve = new ArrayList<String>();
    +141         instance.setCve(cve);
    +142         assertFalse(instance.hasCve());
    +143         instance.addCve("CVE-2013-1337");
    +144         assertTrue(instance.hasCve());
    +145         List<String> result = instance.getCve();
    +146         assertEquals(cve, result);
    +147     }
    +148     //</editor-fold>
    +149 
    +150     //<editor-fold defaultstate="collapsed" desc="Ignored duplicate tests, left in, as empty tests, so IDE doesn't re-generate them">
    +151     /**
    +152      * Test of getFilePath method, of class SuppressionRule.
    +153      */
    +154     @Test
    +155     public void testGetFilePath() {
    +156         //already tested, this is just left so the IDE doesn't recreate it.
    +157     }
    +158 
    +159     /**
    +160      * Test of setFilePath method, of class SuppressionRule.
    +161      */
    +162     @Test
    +163     public void testSetFilePath() {
    +164         //already tested, this is just left so the IDE doesn't recreate it.
    +165     }
    +166 
    +167     /**
    +168      * Test of getSha1 method, of class SuppressionRule.
    +169      */
    +170     @Test
    +171     public void testGetSha1() {
    +172         //already tested, this is just left so the IDE doesn't recreate it.
    +173     }
    +174 
    +175     /**
    +176      * Test of setSha1 method, of class SuppressionRule.
    +177      */
    +178     @Test
    +179     public void testSetSha1() {
    +180         //already tested, this is just left so the IDE doesn't recreate it.
    +181     }
    +182 
    +183     /**
    +184      * Test of getCpe method, of class SuppressionRule.
    +185      */
    +186     @Test
    +187     public void testGetCpe() {
    +188         //already tested, this is just left so the IDE doesn't recreate it.
    +189     }
    +190 
    +191     /**
    +192      * Test of setCpe method, of class SuppressionRule.
    +193      */
    +194     @Test
    +195     public void testSetCpe() {
    +196         //already tested, this is just left so the IDE doesn't recreate it.
    +197     }
    +198 
    +199     /**
    +200      * Test of addCpe method, of class SuppressionRule.
    +201      */
    +202     @Test
    +203     public void testAddCpe() {
    +204         //already tested, this is just left so the IDE doesn't recreate it.
    +205     }
    +206 
    +207     /**
    +208      * Test of hasCpe method, of class SuppressionRule.
    +209      */
    +210     @Test
    +211     public void testHasCpe() {
    +212         //already tested, this is just left so the IDE doesn't recreate it.
    +213     }
    +214 
    +215     /**
    +216      * Test of setCvssBelow method, of class SuppressionRule.
    +217      */
    +218     @Test
    +219     public void testSetCvssBelow() {
    +220         //already tested, this is just left so the IDE doesn't recreate it.
    +221     }
    +222 
    +223     /**
    +224      * Test of addCvssBelow method, of class SuppressionRule.
    +225      */
    +226     @Test
    +227     public void testAddCvssBelow() {
    +228         //already tested, this is just left so the IDE doesn't recreate it.
    +229     }
    +230 
    +231     /**
    +232      * Test of hasCvssBelow method, of class SuppressionRule.
    +233      */
    +234     @Test
    +235     public void testHasCvssBelow() {
    +236         //already tested, this is just left so the IDE doesn't recreate it.
    +237     }
    +238 
    +239     /**
    +240      * Test of getCwe method, of class SuppressionRule.
    +241      */
    +242     @Test
    +243     public void testGetCwe() {
    +244         //already tested, this is just left so the IDE doesn't recreate it.
    +245     }
    +246 
    +247     /**
    +248      * Test of setCwe method, of class SuppressionRule.
    +249      */
    +250     @Test
    +251     public void testSetCwe() {
    +252         //already tested, this is just left so the IDE doesn't recreate it.
    +253     }
    +254 
    +255     /**
    +256      * Test of addCwe method, of class SuppressionRule.
    +257      */
    +258     @Test
    +259     public void testAddCwe() {
    +260         //already tested, this is just left so the IDE doesn't recreate it.
    +261     }
    +262 
    +263     /**
    +264      * Test of hasCwe method, of class SuppressionRule.
    +265      */
    +266     @Test
    +267     public void testHasCwe() {
    +268         //already tested, this is just left so the IDE doesn't recreate it.
    +269     }
    +270 
    +271     /**
    +272      * Test of getCve method, of class SuppressionRule.
    +273      */
    +274     @Test
    +275     public void testGetCve() {
    +276         //already tested, this is just left so the IDE doesn't recreate it.
    +277     }
    +278 
    +279     /**
    +280      * Test of setCve method, of class SuppressionRule.
    +281      */
    +282     @Test
    +283     public void testSetCve() {
    +284         //already tested, this is just left so the IDE doesn't recreate it.
    +285     }
    +286 
    +287     /**
    +288      * Test of addCve method, of class SuppressionRule.
    +289      */
    +290     @Test
    +291     public void testAddCve() {
    +292         //already tested, this is just left so the IDE doesn't recreate it.
    +293     }
    +294 
    +295     /**
    +296      * Test of hasCve method, of class SuppressionRule.
    +297      */
    +298     @Test
    +299     public void testHasCve() {
    +300         //already tested, this is just left so the IDE doesn't recreate it.
    +301     }
    +302     //</editor-fold>
    +303 
    +304     /**
    +305      * Test of cpeHasNoVersion method, of class SuppressionRule.
    +306      */
    +307     @Test
    +308     public void testCpeHasNoVersion() {
    +309         PropertyType c = new PropertyType();
    +310         c.setValue("cpe:/a:microsoft:.net_framework:4.5");
    +311         SuppressionRule instance = new SuppressionRule();
    +312         assertFalse(instance.cpeHasNoVersion(c));
    +313         c.setValue("cpe:/a:microsoft:.net_framework:");
    +314         assertFalse(instance.cpeHasNoVersion(c));
    +315         c.setValue("cpe:/a:microsoft:.net_framework");
    +316         assertTrue(instance.cpeHasNoVersion(c));
    +317     }
    +318 
    +319     /**
    +320      * Test of countCharacter method, of class SuppressionRule.
    +321      */
    +322     @Test
    +323     public void testCountCharacter() {
    +324         String str = "cpe:/a:microsoft:.net_framework:4.5";
    +325         char c = ':';
    +326         SuppressionRule instance = new SuppressionRule();
    +327         int expResult = 4;
    +328         int result = instance.countCharacter(str, c);
    +329         assertEquals(expResult, result);
    +330         str = "::";
    +331         expResult = 2;
    +332         result = instance.countCharacter(str, c);
    +333         assertEquals(expResult, result);
    +334         str = "these are not the characters you are looking for";
    +335         expResult = 0;
    +336         result = instance.countCharacter(str, c);
    +337         assertEquals(expResult, result);
    +338     }
    +339 
    +340     /**
    +341      * Test of cpeMatches method, of class SuppressionRule.
    +342      */
    +343     @Test
    +344     public void testCpeMatches() {
    +345         Identifier identifier = new Identifier("cwe", "cpe:/a:microsoft:.net_framework:4.5", "some url not needed for this test");
    +346 
    +347         PropertyType cpe = new PropertyType();
    +348         cpe.setValue("cpe:/a:microsoft:.net_framework:4.5");
    +349 
    +350         SuppressionRule instance = new SuppressionRule();
    +351         boolean expResult = true;
    +352         boolean result = instance.cpeMatches(cpe, identifier);
    +353         assertEquals(expResult, result);
    +354 
    +355         cpe.setValue("cpe:/a:microsoft:.net_framework:4.0");
    +356         expResult = false;
    +357         result = instance.cpeMatches(cpe, identifier);
    +358         assertEquals(expResult, result);
    +359 
    +360         cpe.setValue("CPE:/a:microsoft:.net_framework:4.5");
    +361         cpe.setCaseSensitive(true);
    +362         expResult = false;
    +363         result = instance.cpeMatches(cpe, identifier);
    +364         assertEquals(expResult, result);
    +365 
    +366         cpe.setValue("cpe:/a:microsoft:.net_framework");
    +367         cpe.setCaseSensitive(false);
    +368         expResult = true;
    +369         result = instance.cpeMatches(cpe, identifier);
    +370         assertEquals(expResult, result);
    +371 
    +372         cpe.setValue("cpe:/a:microsoft:.*");
    +373         cpe.setRegex(true);
    +374         expResult = true;
    +375         result = instance.cpeMatches(cpe, identifier);
    +376         assertEquals(expResult, result);
    +377 
    +378         cpe.setValue("CPE:/a:microsoft:.*");
    +379         cpe.setRegex(true);
    +380         cpe.setCaseSensitive(true);
    +381         expResult = false;
    +382         result = instance.cpeMatches(cpe, identifier);
    +383         assertEquals(expResult, result);
    +384 
    +385         cpe.setValue("cpe:/a:apache:.*");
    +386         cpe.setRegex(true);
    +387         cpe.setCaseSensitive(false);
    +388         expResult = false;
    +389         result = instance.cpeMatches(cpe, identifier);
    +390         assertEquals(expResult, result);
    +391     }
    +392 
    +393     /**
    +394      * Test of process method, of class SuppressionRule.
    +395      */
    +396     @Test
    +397     public void testProcess() {
    +398         File struts = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +399         Dependency dependency = new Dependency(struts);
    +400         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:4.5", "some url not needed for this test");
    +401         String sha1 = dependency.getSha1sum();
    +402         dependency.setSha1sum("384FAA82E193D4E4B0546059CA09572654BC3970");
    +403         Vulnerability v = createVulnerability();
    +404         dependency.addVulnerability(v);
    +405 
    +406         //cwe
    +407         SuppressionRule instance = new SuppressionRule();
    +408         instance.setSha1(sha1);
    +409         instance.addCwe("287");
    +410         instance.process(dependency);
    +411         assertTrue(dependency.getVulnerabilities().size() == 1);
    +412         dependency.setSha1sum(sha1);
    +413         instance.process(dependency);
    +414         assertTrue(dependency.getVulnerabilities().isEmpty());
    +415 
    +416         //cvss
    +417         dependency.addVulnerability(v);
    +418         instance = new SuppressionRule();
    +419         instance.addCvssBelow(5f);
    +420         instance.process(dependency);
    +421         assertTrue(dependency.getVulnerabilities().size() == 1);
    +422         instance.addCvssBelow(8f);
    +423         instance.process(dependency);
    +424         assertTrue(dependency.getVulnerabilities().isEmpty());
    +425 
    +426         //cve
    +427         dependency.addVulnerability(v);
    +428         instance = new SuppressionRule();
    +429         instance.addCve("CVE-2012-1337");
    +430         instance.process(dependency);
    +431         assertTrue(dependency.getVulnerabilities().size() == 1);
    +432         instance.addCve("CVE-2013-1337");
    +433         instance.process(dependency);
    +434         assertTrue(dependency.getVulnerabilities().isEmpty());
    +435 
    +436         //cpe
    +437         instance = new SuppressionRule();
    +438         PropertyType pt = new PropertyType();
    +439         pt.setValue("cpe:/a:microsoft:.net_framework:4.0");
    +440         instance.addCpe(pt);
    +441         instance.process(dependency);
    +442         assertTrue(dependency.getIdentifiers().size() == 1);
    +443         pt = new PropertyType();
    +444         pt.setValue("cpe:/a:microsoft:.net_framework:4.5");
    +445         instance.addCpe(pt);
    +446         pt = new PropertyType();
    +447         pt.setValue(".*");
    +448         pt.setRegex(true);
    +449         instance.setFilePath(pt);
    +450         instance.process(dependency);
    +451         assertTrue(dependency.getIdentifiers().isEmpty());
    +452 
    +453         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:4.0", "some url not needed for this test");
    +454         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:4.5", "some url not needed for this test");
    +455         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:5.0", "some url not needed for this test");
    +456         pt = new PropertyType();
    +457         pt.setValue("cpe:/a:microsoft:.net_framework");
    +458         instance.addCpe(pt);
    +459         assertTrue(dependency.getIdentifiers().size() == 3);
    +460         instance.process(dependency);
    +461         assertTrue(dependency.getIdentifiers().isEmpty());
    +462     }
    +463 
    +464     private Vulnerability createVulnerability() {
    +465         Vulnerability v = new Vulnerability();
    +466         v.setCwe("CWE-287 Improper Authentication");
    +467         v.setName("CVE-2013-1337");
    +468         v.setCvssScore(7.5f);
    +469         return v;
    +470     }
    +471 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html new file mode 100644 index 000000000..6e529a78a --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html @@ -0,0 +1,33 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + + +

    + org.owasp.dependencycheck.suppression +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html new file mode 100644 index 000000000..e4faf9443 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html @@ -0,0 +1,82 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.suppression

    + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + PropertyTypeTest +
    + SuppressionHandlerTest +
    + SuppressionParserTest +
    + SuppressionRuleTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html new file mode 100644 index 000000000..7654da346 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html @@ -0,0 +1,164 @@ + + + + +ChecksumTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import org.owasp.dependencycheck.utils.Checksum;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.security.NoSuchAlgorithmException;
    +25  import org.junit.After;
    +26  import org.junit.AfterClass;
    +27  import org.junit.Assert;
    +28  import org.junit.Before;
    +29  import org.junit.BeforeClass;
    +30  import org.junit.Test;
    +31  
    +32  /**
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class ChecksumTest {
    +37  
    +38      @BeforeClass
    +39      public static void setUpClass() throws Exception {
    +40      }
    +41  
    +42      @AfterClass
    +43      public static void tearDownClass() throws Exception {
    +44      }
    +45  
    +46      @Before
    +47      public void setUp() throws Exception {
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() throws Exception {
    +52      }
    +53  
    +54      /**
    +55       * Test of getChecksum method, of class Checksum.
    +56       *
    +57       * @throws Exception thrown when an exception occurs.
    +58       */
    +59      @Test
    +60      public void testGetChecksum() throws Exception {
    +61          String algorithm = "MD5";
    +62          File file = new File(this.getClass().getClassLoader().getResource("checkSumTest.file").getPath());
    +63          byte[] expResult = {-16, -111, 92, 95, 70, -72, -49, -94, -125, -27, -83, 103, -96, -101, 55, -109};
    +64          byte[] result = Checksum.getChecksum(algorithm, file);
    +65          boolean arraysAreEqual = true;
    +66          if (expResult.length == result.length) {
    +67              for (int i = 0; arraysAreEqual && i < result.length; i++) {
    +68                  arraysAreEqual = result[i] == expResult[i];
    +69              }
    +70          } else {
    +71              Assert.fail("Checksum results do not match expected results.");
    +72          }
    +73          Assert.assertTrue(arraysAreEqual);
    +74      }
    +75  
    +76      /**
    +77       * Test of getChecksum method, of class Checksum. This checks that an
    +78       * exception is thrown when an invalid path is specified.
    +79       *
    +80       * @throws Exception is thrown when an exception occurs.
    +81       */
    +82      @Test
    +83      public void testGetChecksum_FileNotFound() throws Exception {
    +84          String algorithm = "MD5";
    +85          File file = new File("not a valid file");
    +86          boolean exceptionThrown = false;
    +87          try {
    +88              byte[] result = Checksum.getChecksum(algorithm, file);
    +89          } catch (IOException ex) {
    +90              exceptionThrown = true;
    +91          }
    +92          Assert.assertTrue(exceptionThrown);
    +93      }
    +94  
    +95      /**
    +96       * Test of getChecksum method, of class Checksum. This checks that an
    +97       * exception is thrown when an invalid algorithm is specified.
    +98       *
    +99       * @throws Exception is thrown when an exception occurs.
    +100      */
    +101     @Test
    +102     public void testGetChecksum_NoSuchAlgorithm() throws Exception {
    +103         String algorithm = "some unknown algorithm";
    +104         File file = new File(this.getClass().getClassLoader().getResource("checkSumTest.file").getPath());
    +105         boolean exceptionThrown = false;
    +106         try {
    +107             byte[] result = Checksum.getChecksum(algorithm, file);
    +108         } catch (NoSuchAlgorithmException ex) {
    +109             exceptionThrown = true;
    +110         }
    +111         Assert.assertTrue(exceptionThrown);
    +112     }
    +113 
    +114     /**
    +115      * Test of getMD5Checksum method, of class Checksum.
    +116      *
    +117      * @throws Exception is thrown when an exception occurs.
    +118      */
    +119     @Test
    +120     public void testGetMD5Checksum() throws Exception {
    +121         File file = new File(this.getClass().getClassLoader().getResource("checkSumTest.file").getPath());
    +122         String expResult = "F0915C5F46B8CFA283E5AD67A09B3793";
    +123         String result = Checksum.getMD5Checksum(file);
    +124         Assert.assertEquals(expResult, result);
    +125     }
    +126 
    +127     /**
    +128      * Test of getSHA1Checksum method, of class Checksum.
    +129      *
    +130      * @throws Exception is thrown when an exception occurs.
    +131      */
    +132     @Test
    +133     public void testGetSHA1Checksum() throws Exception {
    +134         File file = new File(this.getClass().getClassLoader().getResource("checkSumTest.file").getPath());
    +135         String expResult = "B8A9FF28B21BCB1D0B50E24A5243D8B51766851A";
    +136         String result = Checksum.getSHA1Checksum(file);
    +137         Assert.assertEquals(expResult, result);
    +138     }
    +139 
    +140     /**
    +141      * Test of getHex method, of class Checksum.
    +142      */
    +143     @Test
    +144     public void testGetHex() {
    +145         byte[] raw = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16};
    +146         String expResult = "000102030405060708090A0B0C0D0E0F10";
    +147         String result = Checksum.getHex(raw);
    +148         Assert.assertEquals(expResult, result);
    +149     }
    +150 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html new file mode 100644 index 000000000..fe288381c --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html @@ -0,0 +1,190 @@ + + + + +DependencyVersionTest xref + + + +
    +
    +1   /*
    +2    * To change this template, choose Tools | Templates
    +3    * and open the template in the editor.
    +4    */
    +5   package org.owasp.dependencycheck.utils;
    +6   
    +7   import java.util.ArrayList;
    +8   import java.util.Iterator;
    +9   import java.util.List;
    +10  import org.junit.After;
    +11  import org.junit.AfterClass;
    +12  import org.junit.Before;
    +13  import org.junit.BeforeClass;
    +14  import org.junit.Test;
    +15  import static org.junit.Assert.*;
    +16  
    +17  /**
    +18   *
    +19   * @author Jeremy Long (jeremy.long@owasp.org)
    +20   */
    +21  public class DependencyVersionTest {
    +22  
    +23      public DependencyVersionTest() {
    +24      }
    +25  
    +26      @BeforeClass
    +27      public static void setUpClass() {
    +28      }
    +29  
    +30      @AfterClass
    +31      public static void tearDownClass() {
    +32      }
    +33  
    +34      @Before
    +35      public void setUp() {
    +36      }
    +37  
    +38      @After
    +39      public void tearDown() {
    +40      }
    +41  
    +42      /**
    +43       * Test of parseVersion method, of class DependencyVersion.
    +44       */
    +45      @Test
    +46      public void testParseVersion() {
    +47          String version = "1.2r1";
    +48          DependencyVersion instance = new DependencyVersion();
    +49          instance.parseVersion(version);
    +50          List<String> parts = instance.getVersionParts();
    +51          assertEquals(3, parts.size());
    +52          assertEquals("1", parts.get(0));
    +53          assertEquals("2", parts.get(1));
    +54          assertEquals("r1", parts.get(2));
    +55  
    +56          instance.parseVersion("x6.0");
    +57          parts = instance.getVersionParts();
    +58          assertEquals(2, parts.size());
    +59          assertEquals("x6", parts.get(0));
    +60          assertEquals("0", parts.get(1));
    +61          //assertEquals("0", parts.get(2));
    +62  
    +63  
    +64      }
    +65  
    +66      /**
    +67       * Test of iterator method, of class DependencyVersion.
    +68       */
    +69      @Test
    +70      public void testIterator() {
    +71          DependencyVersion instance = new DependencyVersion("1.2.3");
    +72          Iterator result = instance.iterator();
    +73          int count = 1;
    +74          while (result.hasNext()) {
    +75              String v = (String) result.next();
    +76              assertTrue(String.valueOf(count++).equals(v));
    +77          }
    +78      }
    +79  
    +80      /**
    +81       * Test of toString method, of class DependencyVersion.
    +82       */
    +83      @Test
    +84      public void testToString() {
    +85          DependencyVersion instance = new DependencyVersion("1.2.3r1");
    +86          String expResult = "1.2.3.r1";
    +87          String result = instance.toString();
    +88          assertEquals(expResult, result);
    +89      }
    +90  
    +91      /**
    +92       * Test of equals method, of class DependencyVersion.
    +93       */
    +94      @Test
    +95      public void testEquals() {
    +96          DependencyVersion obj = new DependencyVersion("1.2.3.r1");
    +97          DependencyVersion instance = new DependencyVersion("1.2.3");
    +98          boolean expResult = false;
    +99          boolean result = instance.equals(obj);
    +100         assertEquals(expResult, result);
    +101         obj = new DependencyVersion("1.2.3");
    +102         expResult = true;
    +103         result = instance.equals(obj);
    +104         assertEquals(expResult, result);
    +105     }
    +106 
    +107     /**
    +108      * Test of hashCode method, of class DependencyVersion.
    +109      */
    +110     @Test
    +111     public void testHashCode() {
    +112         DependencyVersion instance = new DependencyVersion("3.2.1");
    +113         int expResult = 80756;
    +114         int result = instance.hashCode();
    +115         assertEquals(expResult, result);
    +116     }
    +117 
    +118     /**
    +119      * Test of matchesAtLeastThreeLevels method, of class DependencyVersion.
    +120      */
    +121     @Test
    +122     public void testMatchesAtLeastThreeLevels() {
    +123 
    +124         DependencyVersion instance = new DependencyVersion("1.2.3.4");
    +125         DependencyVersion version = new DependencyVersion("1.2.3.5");
    +126         //true tests
    +127         assertEquals(true, instance.matchesAtLeastThreeLevels(version));
    +128         version = new DependencyVersion("1.2");
    +129         assertEquals(true, instance.matchesAtLeastThreeLevels(version));
    +130         //false tests
    +131         version = new DependencyVersion("1.2.2.5");
    +132         assertEquals(false, instance.matchesAtLeastThreeLevels(version));
    +133         version = new DependencyVersion("2");
    +134         assertEquals(false, instance.matchesAtLeastThreeLevels(version));
    +135     }
    +136 
    +137     /**
    +138      * Test of compareTo method, of class DependencyVersion.
    +139      */
    +140     @Test
    +141     public void testCompareTo() {
    +142         DependencyVersion instance = new DependencyVersion("1.2.3");
    +143         DependencyVersion version = new DependencyVersion("1.2.3");
    +144         int expResult = 0;
    +145         assertEquals(0, instance.compareTo(version));
    +146         version = new DependencyVersion("1.1");
    +147         assertEquals(1, instance.compareTo(version));
    +148         version = new DependencyVersion("1.2");
    +149         assertEquals(1, instance.compareTo(version));
    +150         version = new DependencyVersion("1.3");
    +151         assertEquals(-1, instance.compareTo(version));
    +152         version = new DependencyVersion("1.2.3.1");
    +153         assertEquals(-1, instance.compareTo(version));
    +154 
    +155         DependencyVersion[] dv = new DependencyVersion[7];
    +156         dv[0] = new DependencyVersion("2.1.3");
    +157         dv[1] = new DependencyVersion("2.1.3.r2");
    +158         dv[2] = new DependencyVersion("2.1.3.r1");
    +159         dv[3] = new DependencyVersion("1.2.3.1");
    +160         dv[4] = new DependencyVersion("1.2.3");
    +161         dv[5] = new DependencyVersion("2");
    +162         dv[6] = new DependencyVersion("-");
    +163 
    +164         DependencyVersion[] expected = new DependencyVersion[7];
    +165         expected[0] = new DependencyVersion("-");
    +166         expected[1] = new DependencyVersion("1.2.3");
    +167         expected[2] = new DependencyVersion("1.2.3.1");
    +168         expected[3] = new DependencyVersion("2");
    +169         expected[4] = new DependencyVersion("2.1.3");
    +170         expected[5] = new DependencyVersion("2.1.3.r1");
    +171         expected[6] = new DependencyVersion("2.1.3.r2");
    +172         java.util.Arrays.sort(dv);
    +173 
    +174         assertArrayEquals(expected, dv);
    +175     }
    +176 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html new file mode 100644 index 000000000..b1e2ff9d0 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html @@ -0,0 +1,95 @@ + + + + +DependencyVersionUtilTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class DependencyVersionUtilTest {
    +33  
    +34      public DependencyVersionUtilTest() {
    +35      }
    +36  
    +37      @BeforeClass
    +38      public static void setUpClass() throws Exception {
    +39      }
    +40  
    +41      @AfterClass
    +42      public static void tearDownClass() throws Exception {
    +43      }
    +44  
    +45      @Before
    +46      public void setUp() {
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      /**
    +54       * Test of parseVersion method, of class DependencyVersionUtil.
    +55       */
    +56      @Test
    +57      public void testParseVersionFromFileName() {
    +58          final String[] fileName = {"something-0.9.5.jar", "lib2-1.1.jar", "lib1.5r4-someflag-R26.jar",
    +59              "lib-1.2.5-dev-20050313.jar", "testlib_V4.4.0.jar", "lib-core-2.0.0-RC1-SNAPSHOT.jar",
    +60              "lib-jsp-2.0.1_R114940.jar", "dev-api-2.3.11_R121413.jar", "lib-api-3.7-SNAPSHOT.jar",
    +61              "-", "", "1.3-beta", "6"};
    +62          final String[] expResult = {"0.9.5", "1.1", "1.5.r4", "1.2.5", "4.4.0", "2.0.0.rc1",
    +63              "2.0.1.r114940", "2.3.11.r121413", "3.7", "-", null, "1.3.beta", "6"};
    +64  
    +65          for (int i = 0; i < fileName.length; i++) {
    +66              final DependencyVersion version = DependencyVersionUtil.parseVersion(fileName[i]);
    +67              String result = null;
    +68              if (version != null) {
    +69                  result = version.toString();
    +70              }
    +71              assertEquals("Failed extraction on \"" + fileName[i] + "\".", expResult[i], result);
    +72          }
    +73  
    +74          String[] failingNames = {"no-version-identified.jar", "somelib-04aug2000r7-dev.jar", /*"no.version15.jar",*/
    +75              "lib_1.0_spec-1.1.jar", "lib-api_1.0_spec-1.0.1.jar"};
    +76          for (String failingName : failingNames) {
    +77              final DependencyVersion version = DependencyVersionUtil.parseVersion(failingName);
    +78              assertNull("Found version in name that should have failed \"" + failingName + "\".", version);
    +79          }
    +80      }
    +81  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html new file mode 100644 index 000000000..3c0420620 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html @@ -0,0 +1,92 @@ + + + + +DownloaderIntegrationTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.File;
    +22  import org.owasp.dependencycheck.utils.Settings;
    +23  import org.owasp.dependencycheck.utils.Downloader;
    +24  import java.net.URL;
    +25  import org.junit.After;
    +26  import org.junit.AfterClass;
    +27  import org.junit.Before;
    +28  import org.junit.BeforeClass;
    +29  import org.junit.Test;
    +30  import static org.junit.Assert.*;
    +31  
    +32  /**
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class DownloaderIntegrationTest {
    +37  
    +38      @BeforeClass
    +39      public static void setUpClass() throws Exception {
    +40      }
    +41  
    +42      @AfterClass
    +43      public static void tearDownClass() throws Exception {
    +44      }
    +45  
    +46      @Before
    +47      public void setUp() {
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() {
    +52      }
    +53  
    +54      /**
    +55       * Test of fetchFile method, of class Downloader.
    +56       *
    +57       * @throws Exception thrown when an exception occurs.
    +58       */
    +59      @Test
    +60      public void testFetchFile() throws Exception {
    +61  
    +62  //        Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, "1000");
    +63  //        Settings.setString(Settings.KEYS.PROXY_PORT, "8080");
    +64  //        Settings.setString(Settings.KEYS.PROXY_URL, "127.0.0.1");
    +65  
    +66          URL url = new URL(Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL));
    +67          File outputPath = new File("target/downloaded_cve.xml");
    +68          Downloader.fetchFile(url, outputPath);
    +69  
    +70      }
    +71  
    +72      @Test
    +73      public void testGetLastModified() throws Exception {
    +74          URL url = new URL("http://nvd.nist.gov/download/nvdcve-2012.xml");
    +75          long timestamp = Downloader.getLastModified(url);
    +76          assertTrue("timestamp equal to zero?", timestamp > 0);
    +77      }
    +78  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderTest.html new file mode 100644 index 000000000..f0709d256 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderTest.html @@ -0,0 +1,74 @@ + + + + +DownloaderTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.File;
    +22  import org.owasp.dependencycheck.utils.Downloader;
    +23  import java.net.URL;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  
    +31  /**
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class DownloaderTest {
    +36  
    +37      @BeforeClass
    +38      public static void setUpClass() throws Exception {
    +39      }
    +40  
    +41      @AfterClass
    +42      public static void tearDownClass() throws Exception {
    +43      }
    +44  
    +45      @Before
    +46      public void setUp() {
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      @Test
    +54      public void testGetLastModified_file() throws Exception {
    +55          File f = new File("target/test-classes/nvdcve-2.0-2012.xml");
    +56          URL url = new URL("file:///" + f.getCanonicalPath());
    +57          long timestamp = Downloader.getLastModified(url);
    +58          assertTrue("timestamp equal to zero?", timestamp > 0);
    +59      }
    +60  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html new file mode 100644 index 000000000..e33de3a93 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html @@ -0,0 +1,95 @@ + + + + +FileUtilsTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.File;
    +22  import org.junit.After;
    +23  import org.junit.AfterClass;
    +24  import org.junit.Before;
    +25  import org.junit.BeforeClass;
    +26  import org.junit.Test;
    +27  import static org.junit.Assert.*;
    +28  
    +29  /**
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class FileUtilsTest {
    +34  
    +35      public FileUtilsTest() {
    +36      }
    +37  
    +38      @BeforeClass
    +39      public static void setUpClass() throws Exception {
    +40      }
    +41  
    +42      @AfterClass
    +43      public static void tearDownClass() throws Exception {
    +44      }
    +45  
    +46      @Before
    +47      public void setUp() {
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() {
    +52      }
    +53  
    +54      /**
    +55       * Test of getFileExtension method, of class FileUtils.
    +56       */
    +57      @Test
    +58      public void testGetFileExtension() {
    +59          String[] fileName = {"something-0.9.5.jar", "lib2-1.1.js"};
    +60          String[] expResult = {"jar", "js"};
    +61  
    +62          for (int i = 0; i < fileName.length; i++) {
    +63              String result = FileUtils.getFileExtension(fileName[i]);
    +64              assertEquals("Failed extraction on \"" + fileName[i] + "\".", expResult[i], result);
    +65          }
    +66      }
    +67  
    +68      /**
    +69       * Test of delete method, of class FileUtils.
    +70       */
    +71      @Test
    +72      public void testDelete() throws Exception {
    +73  
    +74          File file = File.createTempFile("tmp", "deleteme");
    +75          if (!file.exists()) {
    +76              fail("Unable to create a temporary file.");
    +77          }
    +78          FileUtils.delete(file);
    +79          assertFalse("Temporary file exists after attempting deletion", file.exists());
    +80      }
    +81  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html new file mode 100644 index 000000000..576d80b65 --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html @@ -0,0 +1,108 @@ + + + + +FilterTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import org.owasp.dependencycheck.utils.Filter;
    +22  import java.util.List;
    +23  import java.util.ArrayList;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  
    +31  /**
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class FilterTest {
    +36  
    +37      public FilterTest() {
    +38      }
    +39  
    +40      @BeforeClass
    +41      public static void setUpClass() throws Exception {
    +42      }
    +43  
    +44      @AfterClass
    +45      public static void tearDownClass() throws Exception {
    +46      }
    +47  
    +48      @Before
    +49      public void setUp() {
    +50      }
    +51  
    +52      @After
    +53      public void tearDown() {
    +54      }
    +55  
    +56      /**
    +57       * Test of passes method, of class Filter.
    +58       */
    +59      @Test
    +60      public void testPasses() {
    +61          String keep = "keep";
    +62          String fail = "fail";
    +63  
    +64          assertTrue("String contained keep - but passes returned false.", TEST_FILTER.passes(keep));
    +65          assertFalse("String contained fail - but passes returned true.", TEST_FILTER.passes(fail));
    +66      }
    +67  
    +68      /**
    +69       * Test of filter method, of class Filter.
    +70       */
    +71      @Test
    +72      public void testFilter_Iterable() {
    +73          List<String> testData = new ArrayList<String>();
    +74          testData.add("keep");
    +75          testData.add("remove");
    +76          testData.add("keep");
    +77  
    +78          List<String> expResults = new ArrayList<String>();
    +79          expResults.add("keep");
    +80          expResults.add("keep");
    +81  
    +82          List<String> actResults = new ArrayList<String>();
    +83          for (String s : TEST_FILTER.filter(testData)) {
    +84              actResults.add(s);
    +85          }
    +86          assertArrayEquals(expResults.toArray(), actResults.toArray());
    +87      }
    +88      private static final Filter<String> TEST_FILTER =
    +89              new Filter<String>() {
    +90          public boolean passes(String str) {
    +91              return str.contains("keep");
    +92          }
    +93      };
    +94  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html new file mode 100644 index 000000000..a972ddeab --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html @@ -0,0 +1,196 @@ + + + + +SettingsTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import org.owasp.dependencycheck.utils.InvalidSettingException;
    +22  import org.owasp.dependencycheck.utils.Settings;
    +23  import java.io.File;
    +24  import java.io.IOException;
    +25  import java.net.URISyntaxException;
    +26  import org.junit.After;
    +27  import org.junit.AfterClass;
    +28  import org.junit.Assert;
    +29  import org.junit.Before;
    +30  import org.junit.BeforeClass;
    +31  import org.junit.Test;
    +32  
    +33  /**
    +34   *
    +35   * @author Jeremy Long (jeremy.long@owasp.org)
    +36   */
    +37  public class SettingsTest {
    +38  
    +39      @BeforeClass
    +40      public static void setUpClass() throws Exception {
    +41      }
    +42  
    +43      @AfterClass
    +44      public static void tearDownClass() throws Exception {
    +45      }
    +46  
    +47      @Before
    +48      public void setUp() throws Exception {
    +49      }
    +50  
    +51      @After
    +52      public void tearDown() throws Exception {
    +53      }
    +54  
    +55      /**
    +56       * Test of getString method, of class Settings.
    +57       */
    +58      @Test
    +59      public void testGetString() {
    +60          String key = Settings.KEYS.CVE_DATA_DIRECTORY;
    +61          String expResult = "cve";
    +62          String result = Settings.getString(key);
    +63          Assert.assertTrue(result.endsWith(expResult));
    +64      }
    +65  
    +66      /**
    +67       * Test of getDataFile method, of class Settings.
    +68       */
    +69      @Test
    +70      public void testGetDataFile() throws IOException {
    +71          String key = Settings.KEYS.CVE_DATA_DIRECTORY;
    +72          String expResult = "data" + File.separator + "cve";
    +73          File result = Settings.getDataFile(key);
    +74          Assert.assertTrue(result.getAbsolutePath().endsWith(expResult));
    +75  
    +76          result = Settings.getDataFile(Settings.KEYS.DATA_DIRECTORY);
    +77          String path = result.getPath();
    +78          Assert.assertTrue(path.endsWith("data") || path.endsWith("data" + File.separator));
    +79      }
    +80  
    +81      /**
    +82       * Test of mergeProperties method, of class Settings.
    +83       */
    +84      @Test
    +85      public void testMergeProperties_String() throws IOException, URISyntaxException {
    +86          String key = Settings.KEYS.PROXY_PORT;
    +87          String expResult = Settings.getString(key);
    +88          File f = new File(this.getClass().getClassLoader().getResource("test.properties").toURI());
    +89          //InputStream in = this.getClass().getClassLoader().getResourceAsStream("test.properties");
    +90          Settings.mergeProperties(f.getAbsolutePath());
    +91          String result = Settings.getString(key);
    +92          Assert.assertTrue("setting didn't change?", (expResult == null && result != null) || !expResult.equals(result));
    +93      }
    +94  
    +95      /**
    +96       * Test of setString method, of class Settings.
    +97       */
    +98      @Test
    +99      public void testSetString() {
    +100         String key = "newProperty";
    +101         String value = "someValue";
    +102         Settings.setString(key, value);
    +103         String expResults = Settings.getString(key);
    +104         Assert.assertEquals(expResults, value);
    +105     }
    +106 
    +107     /**
    +108      * Test of getString method, of class Settings.
    +109      */
    +110     @Test
    +111     public void testGetString_String_String() {
    +112         String key = "key That Doesn't Exist";
    +113         String defaultValue = "blue bunny";
    +114         String expResult = "blue bunny";
    +115         String result = Settings.getString(key);
    +116         Assert.assertTrue(result == null);
    +117         result = Settings.getString(key, defaultValue);
    +118         Assert.assertEquals(expResult, result);
    +119     }
    +120 
    +121     /**
    +122      * Test of getString method, of class Settings.
    +123      */
    +124     @Test
    +125     public void testGetString_String() {
    +126         String key = Settings.KEYS.CONNECTION_TIMEOUT;
    +127         String result = Settings.getString(key);
    +128         Assert.assertTrue(result == null);
    +129     }
    +130 
    +131     /**
    +132      * Test of getInt method, of class Settings.
    +133      */
    +134     @Test
    +135     public void testGetInt() throws InvalidSettingException {
    +136         String key = "SomeNumber";
    +137         int expResult = 85;
    +138         Settings.setString(key, "85");
    +139         int result = Settings.getInt(key);
    +140         Assert.assertEquals(expResult, result);
    +141     }
    +142 
    +143     /**
    +144      * Test of getLong method, of class Settings.
    +145      */
    +146     @Test
    +147     public void testGetLong() throws InvalidSettingException {
    +148         String key = "SomeNumber";
    +149         long expResult = 300L;
    +150         Settings.setString(key, "300");
    +151         long result = Settings.getLong(key);
    +152         Assert.assertEquals(expResult, result);
    +153     }
    +154 
    +155     /**
    +156      * Test of getBoolean method, of class Settings.
    +157      */
    +158     @Test
    +159     public void testGetBoolean() throws InvalidSettingException {
    +160         String key = "SomeBoolean";
    +161         Settings.setString(key, "false");
    +162         boolean expResult = false;
    +163         boolean result = Settings.getBoolean(key);
    +164         Assert.assertEquals(expResult, result);
    +165     }
    +166 
    +167     /**
    +168      * Test of removeProperty method, of class Settings.
    +169      */
    +170     @Test
    +171     public void testRemoveProperty() {
    +172         String key = "SomeKey";
    +173         String value = "value";
    +174         String dfault = "default";
    +175         Settings.setString(key, value);
    +176         String ret = Settings.getString(key);
    +177         Assert.assertEquals(value, ret);
    +178         Settings.removeProperty(key);
    +179         ret = Settings.getString(key, dfault);
    +180         Assert.assertEquals(dfault, ret);
    +181     }
    +182 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html new file mode 100644 index 000000000..de21ea64f --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html @@ -0,0 +1,45 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.utils + + + + +

    + org.owasp.dependencycheck.utils +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html new file mode 100644 index 000000000..535bde58f --- /dev/null +++ b/css/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html @@ -0,0 +1,102 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.utils + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + ChecksumTest +
    + DependencyVersionTest +
    + DependencyVersionUtilTest +
    + DownloaderIntegrationTest +
    + DownloaderTest +
    + FileUtilsTest +
    + FilterTest +
    + SettingsTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/overview-frame.html b/css/dependency-check-core/xref-test/overview-frame.html new file mode 100644 index 000000000..b8166a187 --- /dev/null +++ b/css/dependency-check-core/xref-test/overview-frame.html @@ -0,0 +1,58 @@ + + + + + + Dependency-Check Core 1.0.6 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/css/dependency-check-core/xref-test/overview-summary.html b/css/dependency-check-core/xref-test/overview-summary.html new file mode 100644 index 000000000..8cce59938 --- /dev/null +++ b/css/dependency-check-core/xref-test/overview-summary.html @@ -0,0 +1,119 @@ + + + + + + Dependency-Check Core 1.0.6 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    Dependency-Check Core 1.0.6 Reference

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck +
    + org.owasp.dependencycheck.analyzer +
    + org.owasp.dependencycheck.concurrency +
    + org.owasp.dependencycheck.data.cpe +
    + org.owasp.dependencycheck.data.cwe +
    + org.owasp.dependencycheck.data.lucene +
    + org.owasp.dependencycheck.data.nvdcve +
    + org.owasp.dependencycheck.data.update +
    + org.owasp.dependencycheck.dependency +
    + org.owasp.dependencycheck.reporting +
    + org.owasp.dependencycheck.suppression +
    + org.owasp.dependencycheck.utils +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref-test/stylesheet.css b/css/dependency-check-core/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/css/dependency-check-core/xref-test/stylesheet.css @@ -0,0 +1,116 @@ +/* Javadoc style sheet */ +/* Define colors, fonts and other style attributes here to override the defaults */ +body { + background-color: #fff; + font-family: Arial, Helvetica, sans-serif; +} + +a:link { + color: #00f; +} +a:visited { + color: #00a; +} + +a:active, a:hover { + color: #f30 !important; +} + +ul, li { + list-style-type:none; + margin:0; + padding:0; +} + +table td { + padding: 3px; + border: 1px solid #000; +} +table { + width:100%; + border: 1px solid #000; + border-collapse: collapse; +} + +div.overview { + background-color:#ddd; + padding: 4px 4px 4px 0; +} +div.overview li, div.framenoframe li { + display: inline; +} +div.framenoframe { + text-align: center; + font-size: x-small; +} +div.framenoframe li { + margin: 0 3px 0 3px; +} +div.overview li { + margin:3px 3px 0 3px; + padding: 4px; +} +li.selected { + background-color:#888; + color: #fff; + font-weight: bold; +} + +table.summary { + margin-bottom: 20px; +} +table.summary td, table.summary th { + font-weight: bold; + text-align: left; + padding: 3px; +} +table.summary th { + background-color:#036; + color: #fff; +} +table.summary td { + background-color:#eee; + border: 1px solid black; +} + +em { + color: #A00; +} +em.comment { + color: #390; +} +.string { + color: #009; +} +div#footer { + text-align:center; +} +#overview { + padding:2px; +} + +hr { + height: 1px; + color: #000; +} + +/* JXR style sheet */ +.jxr_comment +{ + color: #390; +} + +.jxr_javadoccomment +{ + color: #A00; +} + +.jxr_string +{ + color: #009; +} + +.jxr_keyword +{ + color: #000; +} diff --git a/css/dependency-check-core/xref/allclasses-frame.html b/css/dependency-check-core/xref/allclasses-frame.html new file mode 100644 index 000000000..b4a6ed009 --- /dev/null +++ b/css/dependency-check-core/xref/allclasses-frame.html @@ -0,0 +1,500 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/css/dependency-check-core/xref/index.html b/css/dependency-check-core/xref/index.html new file mode 100644 index 000000000..507b53bb5 --- /dev/null +++ b/css/dependency-check-core/xref/index.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference + + + + + + + + + <body> + <h1>Frame Alert</h1> + <p> + You don't have frames. Go <a href="overview-summary.html">here</a> + </p> + </body> + + + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html new file mode 100644 index 000000000..4cc5239ed --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html @@ -0,0 +1,462 @@ + + + + +Engine xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck;
    +20  
    +21  import java.util.EnumMap;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.sql.SQLException;
    +25  import java.util.ArrayList;
    +26  import java.util.HashSet;
    +27  import java.util.Iterator;
    +28  import java.util.List;
    +29  import java.util.Set;
    +30  import java.util.logging.Level;
    +31  import java.util.logging.Logger;
    +32  import org.owasp.dependencycheck.analyzer.AnalysisException;
    +33  import org.owasp.dependencycheck.analyzer.AnalysisPhase;
    +34  import org.owasp.dependencycheck.analyzer.Analyzer;
    +35  import org.owasp.dependencycheck.analyzer.AnalyzerService;
    +36  import org.owasp.dependencycheck.data.CachedWebDataSource;
    +37  import org.owasp.dependencycheck.data.NoDataException;
    +38  import org.owasp.dependencycheck.data.UpdateException;
    +39  import org.owasp.dependencycheck.data.UpdateService;
    +40  import org.owasp.dependencycheck.data.cpe.CpeMemoryIndex;
    +41  import org.owasp.dependencycheck.data.cpe.IndexException;
    +42  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +43  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +44  import org.owasp.dependencycheck.dependency.Dependency;
    +45  import org.owasp.dependencycheck.utils.FileUtils;
    +46  import org.owasp.dependencycheck.utils.InvalidSettingException;
    +47  import org.owasp.dependencycheck.utils.Settings;
    +48  
    +49  /**
    +50   * Scans files, directories, etc. for Dependencies. Analyzers are loaded and
    +51   * used to process the files found by the scan, if a file is encountered and an
    +52   * Analyzer is associated with the file type then the file is turned into a
    +53   * dependency.
    +54   *
    +55   * @author Jeremy Long (jeremy.long@owasp.org)
    +56   */
    +57  public class Engine {
    +58  
    +59      /**
    +60       * The list of dependencies.
    +61       */
    +62      private final List<Dependency> dependencies = new ArrayList<Dependency>();
    +63      /**
    +64       * A Map of analyzers grouped by Analysis phase.
    +65       */
    +66      private final EnumMap<AnalysisPhase, List<Analyzer>> analyzers =
    +67              new EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.class);
    +68      /**
    +69       * A set of extensions supported by the analyzers.
    +70       */
    +71      private final Set<String> extensions = new HashSet<String>();
    +72  
    +73      /**
    +74       * Creates a new Engine.
    +75       */
    +76      public Engine() {
    +77          boolean autoUpdate = true;
    +78          try {
    +79              autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE);
    +80          } catch (InvalidSettingException ex) {
    +81              Logger.getLogger(Engine.class.getName()).log(Level.FINE, "Invalid setting for auto-update; using true.");
    +82          }
    +83          if (autoUpdate) {
    +84              doUpdates();
    +85          }
    +86          loadAnalyzers();
    +87      }
    +88  
    +89      /**
    +90       * Creates a new Engine.
    +91       *
    +92       * @param autoUpdate indicates whether or not data should be updated from
    +93       * the Internet
    +94       * @deprecated This function should no longer be used; the autoupdate flag
    +95       * should be set using:
    +96       * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code>
    +97       */
    +98      @Deprecated
    +99      public Engine(boolean autoUpdate) {
    +100         if (autoUpdate) {
    +101             doUpdates();
    +102         }
    +103         loadAnalyzers();
    +104     }
    +105 
    +106     /**
    +107      * Loads the analyzers specified in the configuration file (or system
    +108      * properties).
    +109      */
    +110     private void loadAnalyzers() {
    +111 
    +112         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +113             analyzers.put(phase, new ArrayList<Analyzer>());
    +114         }
    +115 
    +116         final AnalyzerService service = AnalyzerService.getInstance();
    +117         final Iterator<Analyzer> iterator = service.getAnalyzers();
    +118         while (iterator.hasNext()) {
    +119             final Analyzer a = iterator.next();
    +120             analyzers.get(a.getAnalysisPhase()).add(a);
    +121             if (a.getSupportedExtensions() != null) {
    +122                 extensions.addAll(a.getSupportedExtensions());
    +123             }
    +124         }
    +125     }
    +126 
    +127     /**
    +128      * Get the List of the analyzers for a specific phase of analysis.
    +129      *
    +130      * @param phase the phase to get the configured analyzers.
    +131      * @return the analyzers loaded
    +132      */
    +133     public List<Analyzer> getAnalyzers(AnalysisPhase phase) {
    +134         return analyzers.get(phase);
    +135     }
    +136 
    +137     /**
    +138      * Get the dependencies identified.
    +139      *
    +140      * @return the dependencies identified
    +141      */
    +142     public List<Dependency> getDependencies() {
    +143         return dependencies;
    +144     }
    +145 
    +146     /**
    +147      * Scans an array of files or directories. If a directory is specified, it
    +148      * will be scanned recursively. Any dependencies identified are added to the
    +149      * dependency collection.
    +150      *
    +151      * @since v0.3.2.5
    +152      *
    +153      * @param paths an array of paths to files or directories to be analyzed.
    +154      */
    +155     public void scan(String[] paths) {
    +156         for (String path : paths) {
    +157             final File file = new File(path);
    +158             scan(file);
    +159         }
    +160     }
    +161 
    +162     /**
    +163      * Scans a given file or directory. If a directory is specified, it will be
    +164      * scanned recursively. Any dependencies identified are added to the
    +165      * dependency collection.
    +166      *
    +167      * @param path the path to a file or directory to be analyzed.
    +168      */
    +169     public void scan(String path) {
    +170         final File file = new File(path);
    +171         scan(file);
    +172     }
    +173 
    +174     /**
    +175      * Scans an array of files or directories. If a directory is specified, it
    +176      * will be scanned recursively. Any dependencies identified are added to the
    +177      * dependency collection.
    +178      *
    +179      * @since v0.3.2.5
    +180      *
    +181      * @param files an array of paths to files or directories to be analyzed.
    +182      */
    +183     public void scan(File[] files) {
    +184         for (File file : files) {
    +185             scan(file);
    +186         }
    +187     }
    +188 
    +189     /**
    +190      * Scans a list of files or directories. If a directory is specified, it
    +191      * will be scanned recursively. Any dependencies identified are added to the
    +192      * dependency collection.
    +193      *
    +194      * @since v0.3.2.5
    +195      *
    +196      * @param files a set of paths to files or directories to be analyzed.
    +197      */
    +198     public void scan(Set<File> files) {
    +199         for (File file : files) {
    +200             scan(file);
    +201         }
    +202     }
    +203 
    +204     /**
    +205      * Scans a list of files or directories. If a directory is specified, it
    +206      * will be scanned recursively. Any dependencies identified are added to the
    +207      * dependency collection.
    +208      *
    +209      * @since v0.3.2.5
    +210      *
    +211      * @param files a set of paths to files or directories to be analyzed.
    +212      */
    +213     public void scan(List<File> files) {
    +214         for (File file : files) {
    +215             scan(file);
    +216         }
    +217     }
    +218 
    +219     /**
    +220      * Scans a given file or directory. If a directory is specified, it will be
    +221      * scanned recursively. Any dependencies identified are added to the
    +222      * dependency collection.
    +223      *
    +224      * @since v0.3.2.4
    +225      *
    +226      * @param file the path to a file or directory to be analyzed.
    +227      */
    +228     public void scan(File file) {
    +229         if (file.exists()) {
    +230             if (file.isDirectory()) {
    +231                 scanDirectory(file);
    +232             } else {
    +233                 scanFile(file);
    +234             }
    +235         }
    +236     }
    +237 
    +238     /**
    +239      * Recursively scans files and directories. Any dependencies identified are
    +240      * added to the dependency collection.
    +241      *
    +242      * @param dir the directory to scan.
    +243      */
    +244     protected void scanDirectory(File dir) {
    +245         final File[] files = dir.listFiles();
    +246         if (files != null) {
    +247             for (File f : files) {
    +248                 if (f.isDirectory()) {
    +249                     scanDirectory(f);
    +250                 } else {
    +251                     scanFile(f);
    +252                 }
    +253             }
    +254         }
    +255     }
    +256 
    +257     /**
    +258      * Scans a specified file. If a dependency is identified it is added to the
    +259      * dependency collection.
    +260      *
    +261      * @param file The file to scan.
    +262      */
    +263     protected void scanFile(File file) {
    +264         if (!file.isFile()) {
    +265             final String msg = String.format("Path passed to scanFile(File) is not a file: %s. Skipping the file.", file.toString());
    +266             Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
    +267             return;
    +268         }
    +269         final String fileName = file.getName();
    +270         final String extension = FileUtils.getFileExtension(fileName);
    +271         if (extension != null) {
    +272             if (extensions.contains(extension)) {
    +273                 final Dependency dependency = new Dependency(file);
    +274                 dependencies.add(dependency);
    +275             }
    +276         } else {
    +277             final String msg = String.format("No file extension found on file '%s'. The file was not analyzed.",
    +278                     file.toString());
    +279             Logger.getLogger(Engine.class.getName()).log(Level.FINEST, msg);
    +280         }
    +281     }
    +282 
    +283     /**
    +284      * Runs the analyzers against all of the dependencies.
    +285      */
    +286     public void analyzeDependencies() {
    +287         //need to ensure that data exists
    +288         try {
    +289             ensureDataExists();
    +290         } catch (NoDataException ex) {
    +291             final String msg = String.format("%n%n%s%n%nUnable to continue dependency-check analysis.", ex.getMessage());
    +292             Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg);
    +293             Logger.getLogger(Engine.class.getName()).log(Level.FINE, null, ex);
    +294             return;
    +295         }
    +296 
    +297         //phase one initialize
    +298         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +299             final List<Analyzer> analyzerList = analyzers.get(phase);
    +300             for (Analyzer a : analyzerList) {
    +301                 try {
    +302                     final String msg = String.format("Initializing %s", a.getName());
    +303                     Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
    +304                     a.initialize();
    +305                 } catch (Exception ex) {
    +306                     final String msg = String.format("Exception occurred initializing %s.", a.getName());
    +307                     Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg);
    +308                     Logger.getLogger(Engine.class.getName()).log(Level.INFO, null, ex);
    +309                     try {
    +310                         a.close();
    +311                     } catch (Exception ex1) {
    +312                         Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex1);
    +313                     }
    +314                 }
    +315             }
    +316         }
    +317 
    +318         // analysis phases
    +319         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +320             final List<Analyzer> analyzerList = analyzers.get(phase);
    +321 
    +322             for (Analyzer a : analyzerList) {
    +323                 /* need to create a copy of the collection because some of the
    +324                  * analyzers may modify it. This prevents ConcurrentModificationExceptions.
    +325                  * This is okay for adds/deletes because it happens per analyzer.
    +326                  */
    +327                 final String msg = String.format("Begin Analyzer '%s'", a.getName());
    +328                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
    +329                 final Set<Dependency> dependencySet = new HashSet<Dependency>();
    +330                 dependencySet.addAll(dependencies);
    +331                 for (Dependency d : dependencySet) {
    +332                     final String msgFile = String.format("Begin Analysis of '%s'", d.getActualFilePath());
    +333                     Logger.getLogger(Engine.class.getName()).log(Level.FINE, msgFile);
    +334                     if (a.supportsExtension(d.getFileExtension())) {
    +335                         try {
    +336                             a.analyze(d, this);
    +337                         } catch (AnalysisException ex) {
    +338                             d.addAnalysisException(ex);
    +339                         }
    +340                     }
    +341                 }
    +342             }
    +343         }
    +344 
    +345         //close/cleanup
    +346         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +347             final List<Analyzer> analyzerList = analyzers.get(phase);
    +348             for (Analyzer a : analyzerList) {
    +349                 final String msg = String.format("Closing Analyzer '%s'", a.getName());
    +350                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
    +351                 try {
    +352                     a.close();
    +353                 } catch (Exception ex) {
    +354                     Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex);
    +355                 }
    +356             }
    +357         }
    +358     }
    +359 
    +360     /**
    +361      * Cycles through the cached web data sources and calls update on all of
    +362      * them.
    +363      */
    +364     private void doUpdates() {
    +365         final UpdateService service = UpdateService.getInstance();
    +366         final Iterator<CachedWebDataSource> iterator = service.getDataSources();
    +367         while (iterator.hasNext()) {
    +368             final CachedWebDataSource source = iterator.next();
    +369             try {
    +370                 source.update();
    +371             } catch (UpdateException ex) {
    +372                 Logger.getLogger(Engine.class.getName()).log(Level.WARNING,
    +373                         "Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities.");
    +374                 Logger.getLogger(Engine.class.getName()).log(Level.FINE,
    +375                         String.format("Unable to update details for %s", source.getClass().getName()), ex);
    +376             }
    +377         }
    +378     }
    +379 
    +380     /**
    +381      * Returns a full list of all of the analyzers. This is useful for reporting
    +382      * which analyzers where used.
    +383      *
    +384      * @return a list of Analyzers
    +385      */
    +386     public List<Analyzer> getAnalyzers() {
    +387         final List<Analyzer> ret = new ArrayList<Analyzer>();
    +388         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +389             final List<Analyzer> analyzerList = analyzers.get(phase);
    +390             ret.addAll(analyzerList);
    +391         }
    +392         return ret;
    +393     }
    +394 
    +395     /**
    +396      * Checks all analyzers to see if an extension is supported.
    +397      *
    +398      * @param ext a file extension
    +399      * @return true or false depending on whether or not the file extension is
    +400      * supported
    +401      */
    +402     public boolean supportsExtension(String ext) {
    +403         if (ext == null) {
    +404             return false;
    +405         }
    +406         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +407             final List<Analyzer> analyzerList = analyzers.get(phase);
    +408             for (Analyzer a : analyzerList) {
    +409                 if (a.getSupportedExtensions() != null && a.supportsExtension(ext)) {
    +410                     return true;
    +411                 }
    +412             }
    +413         }
    +414         return false;
    +415     }
    +416 
    +417     /**
    +418      * Checks the CPE Index to ensure documents exists. If none exist a
    +419      * NoDataException is thrown.
    +420      *
    +421      * @throws NoDataException thrown if no data exists in the CPE Index
    +422      */
    +423     private void ensureDataExists() throws NoDataException {
    +424         final CpeMemoryIndex cpe = CpeMemoryIndex.getInstance();
    +425         final CveDB cve = new CveDB();
    +426 
    +427         try {
    +428             cve.open();
    +429             cpe.open(cve);
    +430         } catch (IndexException ex) {
    +431             throw new NoDataException(ex);
    +432         } catch (IOException ex) {
    +433             throw new NoDataException(ex);
    +434         } catch (SQLException ex) {
    +435             throw new NoDataException(ex);
    +436         } catch (DatabaseException ex) {
    +437             throw new NoDataException(ex);
    +438         } catch (ClassNotFoundException ex) {
    +439             throw new NoDataException(ex);
    +440         } finally {
    +441             cve.close();
    +442         }
    +443         if (cpe.numDocs() <= 0) {
    +444             cpe.close();
    +445             throw new NoDataException();
    +446         }
    +447     }
    +448 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html new file mode 100644 index 000000000..9ae5346af --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html @@ -0,0 +1,82 @@ + + + + +AbstractAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.util.Collections;
    +22  import java.util.HashSet;
    +23  import java.util.Set;
    +24  
    +25  /**
    +26   *
    +27   * @author Jeremy Long (jeremy.long@owasp.org)
    +28   */
    +29  public abstract class AbstractAnalyzer implements Analyzer {
    +30  
    +31      /**
    +32       * Utility method to help in the creation of the extensions set. This
    +33       * constructs a new Set that can be used in a final static
    +34       * declaration.<br/><br/>
    +35       *
    +36       * This implementation was copied from
    +37       * http://stackoverflow.com/questions/2041778/initialize-java-hashset-values-by-construction
    +38       *
    +39       * @param strings a list of strings to add to the set.
    +40       * @return a Set of strings.
    +41       */
    +42      protected static Set<String> newHashSet(String... strings) {
    +43          final Set<String> set = new HashSet<String>();
    +44  
    +45          Collections.addAll(set, strings);
    +46          return set;
    +47      }
    +48  
    +49      /**
    +50       * The initialize method does nothing for this Analyzer.
    +51       *
    +52       * @throws Exception thrown if there is an exception
    +53       */
    +54      @Override
    +55      public void initialize() throws Exception {
    +56          //do nothing
    +57      }
    +58  
    +59      /**
    +60       * The close method does nothing for this Analyzer.
    +61       *
    +62       * @throws Exception thrown if there is an exception
    +63       */
    +64      @Override
    +65      public void close() throws Exception {
    +66          //do nothing
    +67      }
    +68  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..87b1e4414 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html @@ -0,0 +1,129 @@ + + + + +AbstractSuppressionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.File;
    +22  import java.util.List;
    +23  import java.util.Set;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.owasp.dependencycheck.suppression.SuppressionParseException;
    +27  import org.owasp.dependencycheck.suppression.SuppressionParser;
    +28  import org.owasp.dependencycheck.suppression.SuppressionRule;
    +29  import org.owasp.dependencycheck.utils.Settings;
    +30  
    +31  /**
    +32   * Abstract base suppression analyzer that contains methods for parsing the
    +33   * suppression xml file.
    +34   *
    +35   * @author Jeremy Long (jeremy.long@owasp.org)
    +36   */
    +37  public abstract class AbstractSuppressionAnalyzer extends AbstractAnalyzer {
    +38  
    +39      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +40      /**
    +41       * Returns a list of file EXTENSIONS supported by this analyzer.
    +42       *
    +43       * @return a list of file EXTENSIONS supported by this analyzer.
    +44       */
    +45      public Set<String> getSupportedExtensions() {
    +46          return null;
    +47      }
    +48  
    +49      /**
    +50       * Returns whether or not this analyzer can process the given extension.
    +51       *
    +52       * @param extension the file extension to test for support.
    +53       * @return whether or not the specified file extension is supported by this
    +54       * analyzer.
    +55       */
    +56      @Override
    +57      public boolean supportsExtension(String extension) {
    +58          return true;
    +59      }
    +60  
    +61      //</editor-fold>
    +62      /**
    +63       * The initialize method loads the suppression XML file.
    +64       *
    +65       * @throws Exception thrown if there is an exception
    +66       */
    +67      @Override
    +68      public void initialize() throws Exception {
    +69          super.initialize();
    +70          loadSuppressionData();
    +71      }
    +72      /**
    +73       * The list of suppression rules
    +74       */
    +75      private List<SuppressionRule> rules;
    +76  
    +77      /**
    +78       * Get the value of rules.
    +79       *
    +80       * @return the value of rules
    +81       */
    +82      public List<SuppressionRule> getRules() {
    +83          return rules;
    +84      }
    +85  
    +86      /**
    +87       * Set the value of rules.
    +88       *
    +89       * @param rules new value of rules
    +90       */
    +91      public void setRules(List<SuppressionRule> rules) {
    +92          this.rules = rules;
    +93      }
    +94  
    +95      /**
    +96       * Loads the suppression rules file.
    +97       *
    +98       * @throws SuppressionParseException thrown if the XML cannot be parsed.
    +99       */
    +100     private void loadSuppressionData() throws SuppressionParseException {
    +101         final File file = Settings.getFile(Settings.KEYS.SUPPRESSION_FILE);
    +102         if (file != null) {
    +103             final SuppressionParser parser = new SuppressionParser();
    +104             try {
    +105                 rules = parser.parseSuppressionRules(file);
    +106             } catch (SuppressionParseException ex) {
    +107                 final String msg = String.format("Unable to parse suppression xml file '%s'", file.getPath());
    +108                 Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, msg);
    +109                 Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, ex.getMessage());
    +110                 Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +111                 throw ex;
    +112             }
    +113         }
    +114     }
    +115 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html new file mode 100644 index 000000000..d918bedb6 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html @@ -0,0 +1,81 @@ + + + + +AnalysisException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  /**
    +22   * An exception thrown when the analysis of a dependency fails.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class AnalysisException extends Exception {
    +27  
    +28      /**
    +29       * The serial version UID for serialization.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Creates a new AnalysisException.
    +35       */
    +36      public AnalysisException() {
    +37          super();
    +38      }
    +39  
    +40      /**
    +41       * Creates a new AnalysisException.
    +42       *
    +43       * @param msg a message for the exception.
    +44       */
    +45      public AnalysisException(String msg) {
    +46          super(msg);
    +47      }
    +48  
    +49      /**
    +50       * Creates a new AnalysisException.
    +51       *
    +52       * @param ex the cause of the failure.
    +53       */
    +54      public AnalysisException(Throwable ex) {
    +55          super(ex);
    +56      }
    +57  
    +58      /**
    +59       * Creates a new AnalysisException.
    +60       *
    +61       * @param msg a message for the exception.
    +62       * @param ex the cause of the failure.
    +63       */
    +64      public AnalysisException(String msg, Throwable ex) {
    +65          super(msg, ex);
    +66      }
    +67  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html new file mode 100644 index 000000000..7864e4bee --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html @@ -0,0 +1,78 @@ + + + + +AnalysisPhase xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  /**
    +22   * An enumeration defining the phases of analysis.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public enum AnalysisPhase {
    +27  
    +28      /**
    +29       * Initialization phase.
    +30       */
    +31      INITIAL,
    +32      /**
    +33       * Information collection phase.
    +34       */
    +35      INFORMATION_COLLECTION,
    +36      /**
    +37       * Pre identifier analysis phase.
    +38       */
    +39      PRE_IDENTIFIER_ANALYSIS,
    +40      /**
    +41       * Identifier analysis phase.
    +42       */
    +43      IDENTIFIER_ANALYSIS,
    +44      /**
    +45       * Post identifier analysis phase.
    +46       */
    +47      POST_IDENTIFIER_ANALYSIS,
    +48      /**
    +49       * Pre finding analysis phase.
    +50       */
    +51      PRE_FINDING_ANALYSIS,
    +52      /**
    +53       * Finding analysis phase.
    +54       */
    +55      FINDING_ANALYSIS,
    +56      /**
    +57       * Post analysis phase.
    +58       */
    +59      POST_FINDING_ANALYSIS,
    +60      /**
    +61       * The final analysis phase.
    +62       */
    +63      FINAL
    +64  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html new file mode 100644 index 000000000..677780488 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html @@ -0,0 +1,116 @@ + + + + +Analyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.util.Set;
    +22  import org.owasp.dependencycheck.Engine;
    +23  import org.owasp.dependencycheck.dependency.Dependency;
    +24  
    +25  /**
    +26   * An interface that defines an Analyzer that is used to identify Dependencies.
    +27   * An analyzer will collect information about the dependency in the form of
    +28   * Evidence.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public interface Analyzer {
    +33  
    +34      /**
    +35       * Analyzes the given dependency. The analysis could be anything from
    +36       * identifying an Identifier for the dependency, to finding vulnerabilities,
    +37       * etc. Additionally, if the analyzer collects enough information to add a
    +38       * description or license information for the dependency it should be added.
    +39       *
    +40       * @param dependency a dependency to analyze.
    +41       * @param engine the engine that is scanning the dependencies - this is
    +42       * useful if we need to check other dependencies
    +43       * @throws AnalysisException is thrown if there is an error analyzing the
    +44       * dependency file
    +45       */
    +46      void analyze(Dependency dependency, Engine engine) throws AnalysisException;
    +47  
    +48      /**
    +49       * <p>Returns a list of supported file extensions. An example would be an
    +50       * analyzer that inspected java jar files. The getSupportedExtensions
    +51       * function would return a set with a single element "jar".</p>
    +52       *
    +53       * <p><b>Note:</b> when implementing this the extensions returned MUST be
    +54       * lowercase.</p>
    +55       *
    +56       * @return The file extensions supported by this analyzer.
    +57       *
    +58       * <p>If the analyzer returns null it will not cause additional files to be
    +59       * analyzed but will be executed against every file loaded</p>
    +60       */
    +61      Set<String> getSupportedExtensions();
    +62  
    +63      /**
    +64       * Returns the name of the analyzer.
    +65       *
    +66       * @return the name of the analyzer.
    +67       */
    +68      String getName();
    +69  
    +70      /**
    +71       * Returns whether or not this analyzer can process the given extension.
    +72       *
    +73       * @param extension the file extension to test for support.
    +74       * @return whether or not the specified file extension is supported by this
    +75       * analyzer.
    +76       */
    +77      boolean supportsExtension(String extension);
    +78  
    +79      /**
    +80       * Returns the phase that the analyzer is intended to run in.
    +81       *
    +82       * @return the phase that the analyzer is intended to run in.
    +83       */
    +84      AnalysisPhase getAnalysisPhase();
    +85  
    +86      /**
    +87       * The initialize method is called (once) prior to the analyze method being
    +88       * called on all of the dependencies.
    +89       *
    +90       * @throws Exception is thrown if an exception occurs initializing the
    +91       * analyzer.
    +92       */
    +93      void initialize() throws Exception;
    +94  
    +95      /**
    +96       * The close method is called after all of the dependencies have been
    +97       * analyzed.
    +98       *
    +99       * @throws Exception is thrown if an exception occurs closing the analyzer.
    +100      */
    +101     void close() throws Exception;
    +102 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html new file mode 100644 index 000000000..c134e9bde --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html @@ -0,0 +1,80 @@ + + + + +AnalyzerService xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.util.Iterator;
    +22  import java.util.ServiceLoader;
    +23  
    +24  /**
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public final class AnalyzerService {
    +29  
    +30      /**
    +31       * The analyzer service singleton.
    +32       */
    +33      private static AnalyzerService service;
    +34      /**
    +35       * The service loader for analyzers.
    +36       */
    +37      private final ServiceLoader<Analyzer> loader;
    +38  
    +39      /**
    +40       * Creates a new instance of AnalyzerService.
    +41       */
    +42      private AnalyzerService() {
    +43          loader = ServiceLoader.load(Analyzer.class);
    +44      }
    +45  
    +46      /**
    +47       * Retrieve the singleton instance of AnalyzerService.
    +48       *
    +49       * @return a singleton AnalyzerService.
    +50       */
    +51      public static synchronized AnalyzerService getInstance() {
    +52          if (service == null) {
    +53              service = new AnalyzerService();
    +54          }
    +55          return service;
    +56      }
    +57  
    +58      /**
    +59       * Returns an Iterator for all instances of the Analyzer interface.
    +60       *
    +61       * @return an iterator of Analyzers.
    +62       */
    +63      public Iterator<Analyzer> getAnalyzers() {
    +64          return loader.iterator();
    +65      }
    +66  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html new file mode 100644 index 000000000..f81ec6b76 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html @@ -0,0 +1,410 @@ + + + + +ArchiveAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.BufferedInputStream;
    +22  import java.io.BufferedOutputStream;
    +23  import java.io.File;
    +24  import java.io.FileInputStream;
    +25  import java.io.FileNotFoundException;
    +26  import java.io.FileOutputStream;
    +27  import java.io.IOException;
    +28  import java.util.ArrayList;
    +29  import java.util.Collections;
    +30  import java.util.HashSet;
    +31  import java.util.List;
    +32  import java.util.Set;
    +33  import java.util.logging.Level;
    +34  import java.util.logging.Logger;
    +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 set of file extensions supported by this analyzer.
    +88       */
    +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/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html new file mode 100644 index 000000000..ba859648c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveExtractionException.html @@ -0,0 +1,81 @@ + + + + +ArchiveExtractionException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  /**
    +22   * An exception thrown when files in an archive cannot be extracted.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class ArchiveExtractionException extends Exception {
    +27  
    +28      /**
    +29       * The serial version UID for serialization.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Creates a new ArchiveExtractionException.
    +35       */
    +36      public ArchiveExtractionException() {
    +37          super();
    +38      }
    +39  
    +40      /**
    +41       * Creates a new ArchiveExtractionException.
    +42       *
    +43       * @param msg a message for the exception.
    +44       */
    +45      public ArchiveExtractionException(String msg) {
    +46          super(msg);
    +47      }
    +48  
    +49      /**
    +50       * Creates a new ArchiveExtractionException.
    +51       *
    +52       * @param ex the cause of the failure.
    +53       */
    +54      public ArchiveExtractionException(Throwable ex) {
    +55          super(ex);
    +56      }
    +57  
    +58      /**
    +59       * Creates a new ArchiveExtractionException.
    +60       *
    +61       * @param msg a message for the exception.
    +62       * @param ex the cause of the failure.
    +63       */
    +64      public ArchiveExtractionException(String msg, Throwable ex) {
    +65          super(msg, ex);
    +66      }
    +67  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html new file mode 100644 index 000000000..0498a9d58 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CPEAnalyzer.html @@ -0,0 +1,801 @@ + + + + +CPEAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.IOException;
    +22  import java.io.UnsupportedEncodingException;
    +23  import java.net.URLEncoder;
    +24  import java.sql.SQLException;
    +25  import java.util.ArrayList;
    +26  import java.util.Collections;
    +27  import java.util.List;
    +28  import java.util.Set;
    +29  import java.util.StringTokenizer;
    +30  import java.util.logging.Level;
    +31  import java.util.logging.Logger;
    +32  import org.apache.lucene.document.Document;
    +33  import org.apache.lucene.index.CorruptIndexException;
    +34  import org.apache.lucene.queryparser.classic.ParseException;
    +35  import org.apache.lucene.search.ScoreDoc;
    +36  import org.apache.lucene.search.TopDocs;
    +37  import org.owasp.dependencycheck.Engine;
    +38  import org.owasp.dependencycheck.data.lucene.LuceneUtils;
    +39  import org.owasp.dependencycheck.dependency.Dependency;
    +40  import org.owasp.dependencycheck.dependency.Evidence;
    +41  import org.owasp.dependencycheck.dependency.Evidence.Confidence;
    +42  import org.owasp.dependencycheck.dependency.EvidenceCollection;
    +43  import org.owasp.dependencycheck.data.cpe.CpeMemoryIndex;
    +44  import org.owasp.dependencycheck.data.cpe.Fields;
    +45  import org.owasp.dependencycheck.data.cpe.IndexEntry;
    +46  import org.owasp.dependencycheck.data.cpe.IndexException;
    +47  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +48  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +49  import org.owasp.dependencycheck.dependency.Identifier;
    +50  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +51  import org.owasp.dependencycheck.utils.DependencyVersion;
    +52  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +53  
    +54  /**
    +55   * CPEAnalyzer is a utility class that takes a project dependency and attempts
    +56   * to discern if there is an associated CPE. It uses the evidence contained
    +57   * within the dependency to search the Lucene index.
    +58   *
    +59   * @author Jeremy Long (jeremy.long@owasp.org)
    +60   */
    +61  public class CPEAnalyzer implements Analyzer {
    +62  
    +63      /**
    +64       * The maximum number of query results to return.
    +65       */
    +66      static final int MAX_QUERY_RESULTS = 25;
    +67      /**
    +68       * The weighting boost to give terms when constructing the Lucene query.
    +69       */
    +70      static final String WEIGHTING_BOOST = "^5";
    +71      /**
    +72       * A string representation of a regular expression defining characters
    +73       * utilized within the CPE Names.
    +74       */
    +75      static final String CLEANSE_CHARACTER_RX = "[^A-Za-z0-9 ._-]";
    +76      /**
    +77       * A string representation of a regular expression used to remove all but
    +78       * alpha characters.
    +79       */
    +80      static final String CLEANSE_NONALPHA_RX = "[^A-Za-z]*";
    +81      /**
    +82       * The additional size to add to a new StringBuilder to account for extra
    +83       * data that will be written into the string.
    +84       */
    +85      static final int STRING_BUILDER_BUFFER = 20;
    +86      /**
    +87       * The CPE in memory index.
    +88       */
    +89      private CpeMemoryIndex cpe;
    +90      /**
    +91       * The CVE Database.
    +92       */
    +93      private CveDB cve;
    +94  
    +95      /**
    +96       * Opens the data source.
    +97       *
    +98       * @throws IOException when the Lucene directory to be queried does not
    +99       * exist or is corrupt.
    +100      * @throws DatabaseException when the database throws an exception. This
    +101      * usually occurs when the database is in use by another process.
    +102      */
    +103     public void open() throws IOException, DatabaseException {
    +104         cve = new CveDB();
    +105         try {
    +106             cve.open();
    +107         } catch (SQLException ex) {
    +108             Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +109             throw new DatabaseException("Unable to open the cve db", ex);
    +110         } catch (ClassNotFoundException ex) {
    +111             Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +112             throw new DatabaseException("Unable to open the cve db", ex);
    +113         }
    +114         cpe = CpeMemoryIndex.getInstance();
    +115         try {
    +116             cpe.open(cve);
    +117         } catch (IndexException ex) {
    +118             Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.SEVERE, null, ex);
    +119             throw new DatabaseException(ex);
    +120         }
    +121     }
    +122 
    +123     /**
    +124      * Closes the data sources.
    +125      */
    +126     @Override
    +127     public void close() {
    +128         if (cpe != null) {
    +129             cpe.close();
    +130         }
    +131         if (cve != null) {
    +132             cve.close();
    +133         }
    +134     }
    +135 
    +136     /**
    +137      * Searches the data store of CPE entries, trying to identify the CPE for
    +138      * the given dependency based on the evidence contained within. The
    +139      * dependency passed in is updated with any identified CPE values.
    +140      *
    +141      * @param dependency the dependency to search for CPE entries on.
    +142      * @throws CorruptIndexException is thrown when the Lucene index is corrupt.
    +143      * @throws IOException is thrown when an IOException occurs.
    +144      * @throws ParseException is thrown when the Lucene query cannot be parsed.
    +145      */
    +146     protected void determineCPE(Dependency dependency) throws CorruptIndexException, IOException, ParseException {
    +147         Confidence vendorConf = Confidence.HIGHEST;
    +148         Confidence productConf = Confidence.HIGHEST;
    +149 
    +150         String vendors = addEvidenceWithoutDuplicateTerms("", dependency.getVendorEvidence(), vendorConf);
    +151         String products = addEvidenceWithoutDuplicateTerms("", dependency.getProductEvidence(), productConf);
    +152 
    +153         int ctr = 0;
    +154         do {
    +155             if (!vendors.isEmpty() && !products.isEmpty()) {
    +156                 final List<IndexEntry> entries = searchCPE(vendors, products, dependency.getProductEvidence().getWeighting(),
    +157                         dependency.getVendorEvidence().getWeighting());
    +158 
    +159                 for (IndexEntry e : entries) {
    +160                     if (verifyEntry(e, dependency)) {
    +161                         final String vendor = e.getVendor();
    +162                         final String product = e.getProduct();
    +163                         determineIdentifiers(dependency, vendor, product);
    +164                     }
    +165                 }
    +166             }
    +167             vendorConf = reduceConfidence(vendorConf);
    +168             if (dependency.getVendorEvidence().contains(vendorConf)) {
    +169                 vendors = addEvidenceWithoutDuplicateTerms(vendors, dependency.getVendorEvidence(), vendorConf);
    +170             }
    +171             productConf = reduceConfidence(productConf);
    +172             if (dependency.getProductEvidence().contains(productConf)) {
    +173                 products = addEvidenceWithoutDuplicateTerms(products, dependency.getProductEvidence(), productConf);
    +174             }
    +175         } while ((++ctr) < 4);
    +176     }
    +177 
    +178     /**
    +179      * Returns the text created by concatenating the text and the values from
    +180      * the EvidenceCollection (filtered for a specific confidence). This
    +181      * attempts to prevent duplicate terms from being added.<br/<br/> Note, if
    +182      * the evidence is longer then 200 characters it will be truncated.
    +183      *
    +184      * @param text the base text.
    +185      * @param ec an EvidenceCollection
    +186      * @param confidenceFilter a Confidence level to filter the evidence by.
    +187      * @return the new evidence text
    +188      */
    +189     private String addEvidenceWithoutDuplicateTerms(final String text, final EvidenceCollection ec, Confidence confidenceFilter) {
    +190         final String txt = (text == null) ? "" : text;
    +191         final StringBuilder sb = new StringBuilder(txt.length() + (20 * ec.size()));
    +192         sb.append(' ').append(txt).append(' ');
    +193         for (Evidence e : ec.iterator(confidenceFilter)) {
    +194             String value = e.getValue();
    +195 
    +196             //hack to get around the fact that lucene does a really good job of recognizing domains and not
    +197             // splitting them. TODO - put together a better lucene analyzer specific to the domain.
    +198             if (value.startsWith("http://")) {
    +199                 value = value.substring(7).replaceAll("\\.", " ");
    +200             }
    +201             if (value.startsWith("https://")) {
    +202                 value = value.substring(8).replaceAll("\\.", " ");
    +203             }
    +204             if (sb.indexOf(" " + value + " ") < 0) {
    +205                 sb.append(value).append(' ');
    +206             }
    +207         }
    +208         return sb.toString().trim();
    +209     }
    +210 
    +211     /**
    +212      * Reduces the given confidence by one level. This returns LOW if the
    +213      * confidence passed in is not HIGH.
    +214      *
    +215      * @param c the confidence to reduce.
    +216      * @return One less then the confidence passed in.
    +217      */
    +218     private Confidence reduceConfidence(final Confidence c) {
    +219         if (c == Confidence.HIGHEST) {
    +220             return Confidence.HIGH;
    +221         } else if (c == Confidence.HIGH) {
    +222             return Confidence.MEDIUM;
    +223         } else {
    +224             return Confidence.LOW;
    +225         }
    +226     }
    +227 
    +228     /**
    +229      * <p>Searches the Lucene CPE index to identify possible CPE entries
    +230      * associated with the supplied vendor, product, and version.</p>
    +231      *
    +232      * <p>If either the vendorWeightings or productWeightings lists have been
    +233      * populated this data is used to add weighting factors to the search.</p>
    +234      *
    +235      * @param vendor the text used to search the vendor field
    +236      * @param product the text used to search the product field
    +237      * @param vendorWeightings a list of strings to use to add weighting factors
    +238      * to the vendor field
    +239      * @param productWeightings Adds a list of strings that will be used to add
    +240      * weighting factors to the product search
    +241      * @return a list of possible CPE values
    +242      * @throws CorruptIndexException when the Lucene index is corrupt
    +243      * @throws IOException when the Lucene index is not found
    +244      * @throws ParseException when the generated query is not valid
    +245      */
    +246     protected List<IndexEntry> searchCPE(String vendor, String product,
    +247             Set<String> vendorWeightings, Set<String> productWeightings)
    +248             throws CorruptIndexException, IOException, ParseException {
    +249         final ArrayList<IndexEntry> ret = new ArrayList<IndexEntry>(MAX_QUERY_RESULTS);
    +250 
    +251         final String searchString = buildSearch(vendor, product, vendorWeightings, productWeightings);
    +252         if (searchString == null) {
    +253             return ret;
    +254         }
    +255 
    +256         final TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);
    +257         for (ScoreDoc d : docs.scoreDocs) {
    +258             if (d.score >= 0.08) {
    +259                 final Document doc = cpe.getDocument(d.doc);
    +260                 final IndexEntry entry = new IndexEntry();
    +261                 entry.setVendor(doc.get(Fields.VENDOR));
    +262                 entry.setProduct(doc.get(Fields.PRODUCT));
    +263 //                if (d.score < 0.08) {
    +264 //                    System.out.print(entry.getVendor());
    +265 //                    System.out.print(":");
    +266 //                    System.out.print(entry.getProduct());
    +267 //                    System.out.print(":");
    +268 //                    System.out.println(d.score);
    +269 //                }
    +270                 entry.setSearchScore(d.score);
    +271                 if (!ret.contains(entry)) {
    +272                     ret.add(entry);
    +273                 }
    +274             }
    +275         }
    +276         return ret;
    +277     }
    +278 
    +279     /**
    +280      * <p>Builds a Lucene search string by properly escaping data and
    +281      * constructing a valid search query.</p>
    +282      *
    +283      * <p>If either the possibleVendor or possibleProducts lists have been
    +284      * populated this data is used to add weighting factors to the search string
    +285      * generated.</p>
    +286      *
    +287      * @param vendor text to search the vendor field
    +288      * @param product text to search the product field
    +289      * @param vendorWeighting a list of strings to apply to the vendor to boost
    +290      * the terms weight
    +291      * @param productWeightings a list of strings to apply to the product to
    +292      * boost the terms weight
    +293      * @return the Lucene query
    +294      */
    +295     protected String buildSearch(String vendor, String product,
    +296             Set<String> vendorWeighting, Set<String> productWeightings) {
    +297         final String v = vendor; //.replaceAll("[^\\w\\d]", " ");
    +298         final String p = product; //.replaceAll("[^\\w\\d]", " ");
    +299         final StringBuilder sb = new StringBuilder(v.length() + p.length()
    +300                 + Fields.PRODUCT.length() + Fields.VENDOR.length() + STRING_BUILDER_BUFFER);
    +301 
    +302         if (!appendWeightedSearch(sb, Fields.PRODUCT, p, productWeightings)) {
    +303             return null;
    +304         }
    +305         sb.append(" AND ");
    +306         if (!appendWeightedSearch(sb, Fields.VENDOR, v, vendorWeighting)) {
    +307             return null;
    +308         }
    +309         return sb.toString();
    +310     }
    +311 
    +312     /**
    +313      * This method constructs a Lucene query for a given field. The searchText
    +314      * is split into separate words and if the word is within the list of
    +315      * weighted words then an additional weighting is applied to the term as it
    +316      * is appended into the query.
    +317      *
    +318      * @param sb a StringBuilder that the query text will be appended to.
    +319      * @param field the field within the Lucene index that the query is
    +320      * searching.
    +321      * @param searchText text used to construct the query.
    +322      * @param weightedText a list of terms that will be considered higher
    +323      * importance when searching.
    +324      * @return if the append was successful.
    +325      */
    +326     private boolean appendWeightedSearch(StringBuilder sb, String field, String searchText, Set<String> weightedText) {
    +327         sb.append(" ").append(field).append(":( ");
    +328 
    +329         final String cleanText = cleanseText(searchText);
    +330 
    +331         if ("".equals(cleanText)) {
    +332             return false;
    +333         }
    +334 
    +335         if (weightedText == null || weightedText.isEmpty()) {
    +336             LuceneUtils.appendEscapedLuceneQuery(sb, cleanText);
    +337         } else {
    +338             final StringTokenizer tokens = new StringTokenizer(cleanText);
    +339             while (tokens.hasMoreElements()) {
    +340                 final String word = tokens.nextToken();
    +341                 String temp = null;
    +342                 for (String weighted : weightedText) {
    +343                     final String weightedStr = cleanseText(weighted);
    +344                     if (equalsIgnoreCaseAndNonAlpha(word, weightedStr)) {
    +345                         temp = LuceneUtils.escapeLuceneQuery(word) + WEIGHTING_BOOST;
    +346                         if (!word.equalsIgnoreCase(weightedStr)) {
    +347                             temp += " " + LuceneUtils.escapeLuceneQuery(weightedStr) + WEIGHTING_BOOST;
    +348                         }
    +349                     }
    +350                 }
    +351                 if (temp == null) {
    +352                     temp = LuceneUtils.escapeLuceneQuery(word);
    +353                 }
    +354                 sb.append(" ").append(temp);
    +355             }
    +356         }
    +357         sb.append(" ) ");
    +358         return true;
    +359     }
    +360 
    +361     /**
    +362      * Removes characters from the input text that are not used within the CPE
    +363      * index.
    +364      *
    +365      * @param text is the text to remove the characters from.
    +366      * @return the text having removed some characters.
    +367      */
    +368     private String cleanseText(String text) {
    +369         return text.replaceAll(CLEANSE_CHARACTER_RX, " ");
    +370     }
    +371 
    +372     /**
    +373      * Compares two strings after lower casing them and removing the non-alpha
    +374      * characters.
    +375      *
    +376      * @param l string one to compare.
    +377      * @param r string two to compare.
    +378      * @return whether or not the two strings are similar.
    +379      */
    +380     private boolean equalsIgnoreCaseAndNonAlpha(String l, String r) {
    +381         if (l == null || r == null) {
    +382             return false;
    +383         }
    +384 
    +385         final String left = l.replaceAll(CLEANSE_NONALPHA_RX, "");
    +386         final String right = r.replaceAll(CLEANSE_NONALPHA_RX, "");
    +387         return left.equalsIgnoreCase(right);
    +388     }
    +389 
    +390     /**
    +391      * Ensures that the CPE Identified matches the dependency. This validates
    +392      * that the product, vendor, and version information for the CPE are
    +393      * contained within the dependencies evidence.
    +394      *
    +395      * @param entry a CPE entry.
    +396      * @param dependency the dependency that the CPE entries could be for.
    +397      * @return whether or not the entry is valid.
    +398      */
    +399     private boolean verifyEntry(final IndexEntry entry, final Dependency dependency) {
    +400         boolean isValid = false;
    +401 
    +402         if (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())
    +403                 && collectionContainsString(dependency.getVendorEvidence(), entry.getVendor())) {
    +404             //&& collectionContainsVersion(dependency.getVersionEvidence(), entry.getVersion())
    +405             isValid = true;
    +406         }
    +407         return isValid;
    +408     }
    +409 
    +410     /**
    +411      * Used to determine if the EvidenceCollection contains a specific string.
    +412      *
    +413      * @param ec an EvidenceCollection
    +414      * @param text the text to search for
    +415      * @return whether or not the EvidenceCollection contains the string
    +416      */
    +417     private boolean collectionContainsString(EvidenceCollection ec, String text) {
    +418 
    +419         //<editor-fold defaultstate="collapsed" desc="This code fold contains an old version of the code, delete once more testing is done">
    +420         //        String[] splitText = text.split("[\\s_-]");
    +421         //
    +422         //        for (String search : splitText) {
    +423         //            //final String search = text.replaceAll("[\\s_-]", "").toLowerCase();
    +424         //            if (ec.containsUsedString(search)) {
    +425         //                return true;
    +426         //            }
    +427         //        }
    +428         //</editor-fold>
    +429 
    +430         //TODO - likely need to change the split... not sure if this will work for CPE with special chars
    +431         if (text == null) {
    +432             return false;
    +433         }
    +434         final String[] words = text.split("[\\s_-]");
    +435         final List<String> list = new ArrayList<String>();
    +436         String tempWord = null;
    +437         for (String word : words) {
    +438             //single letter words should be concatonated with the next word.
    +439             // so { "m", "core", "sample" } -> { "mcore", "sample" }
    +440             if (tempWord != null) {
    +441                 list.add(tempWord + word);
    +442                 tempWord = null;
    +443             } else if (word.length() <= 2) {
    +444                 tempWord = word;
    +445             } else {
    +446                 list.add(word);
    +447             }
    +448         }
    +449         if (tempWord != null && !list.isEmpty()) {
    +450             final String tmp = list.get(list.size() - 1) + tempWord;
    +451             list.add(tmp);
    +452         }
    +453         boolean contains = true;
    +454         for (String word : list) {
    +455             contains &= ec.containsUsedString(word);
    +456         }
    +457         return contains;
    +458     }
    +459 
    +460     /**
    +461      * Analyzes a dependency and attempts to determine if there are any CPE
    +462      * identifiers for this dependency.
    +463      *
    +464      * @param dependency The Dependency to analyze.
    +465      * @param engine The analysis engine
    +466      * @throws AnalysisException is thrown if there is an issue analyzing the
    +467      * dependency.
    +468      */
    +469     @Override
    +470     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +471         try {
    +472             determineCPE(dependency);
    +473         } catch (CorruptIndexException ex) {
    +474             throw new AnalysisException("CPE Index is corrupt.", ex);
    +475         } catch (IOException ex) {
    +476             throw new AnalysisException("Failure opening the CPE Index.", ex);
    +477         } catch (ParseException ex) {
    +478             throw new AnalysisException("Unable to parse the generated Lucene query for this dependency.", ex);
    +479         }
    +480     }
    +481 
    +482     /**
    +483      * Returns true because this analyzer supports all dependency types.
    +484      *
    +485      * @return true.
    +486      */
    +487     @Override
    +488     public Set<String> getSupportedExtensions() {
    +489         return null;
    +490     }
    +491 
    +492     /**
    +493      * Returns the name of this analyzer.
    +494      *
    +495      * @return the name of this analyzer.
    +496      */
    +497     @Override
    +498     public String getName() {
    +499         return "CPE Analyzer";
    +500     }
    +501 
    +502     /**
    +503      * Returns true because this analyzer supports all dependency types.
    +504      *
    +505      * @param extension the file extension of the dependency being analyzed.
    +506      * @return true.
    +507      */
    +508     @Override
    +509     public boolean supportsExtension(String extension) {
    +510         return true;
    +511     }
    +512 
    +513     /**
    +514      * Returns the analysis phase that this analyzer should run in.
    +515      *
    +516      * @return the analysis phase that this analyzer should run in.
    +517      */
    +518     @Override
    +519     public AnalysisPhase getAnalysisPhase() {
    +520         return AnalysisPhase.IDENTIFIER_ANALYSIS;
    +521     }
    +522 
    +523     /**
    +524      * Opens the CPE Lucene Index.
    +525      *
    +526      * @throws Exception is thrown if there is an issue opening the index.
    +527      */
    +528     @Override
    +529     public void initialize() throws Exception {
    +530         this.open();
    +531     }
    +532 
    +533     /**
    +534      * Retrieves a list of CPE values from the CveDB based on the vendor and
    +535      * product passed in. The list is then validated to find only CPEs that are
    +536      * valid for the given dependency. It is possible that the CPE identified is
    +537      * a best effort "guess" based on the vendor, product, and version
    +538      * information.
    +539      *
    +540      * @param dependency the Dependency being analyzed
    +541      * @param vendor the vendor for the CPE being analyzed
    +542      * @param product the product for the CPE being analyzed
    +543      * @throws UnsupportedEncodingException is thrown if UTF-8 is not supported
    +544      */
    +545     private void determineIdentifiers(Dependency dependency, String vendor, String product) throws UnsupportedEncodingException {
    +546         final Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);
    +547         DependencyVersion bestGuess = new DependencyVersion("-");
    +548         Confidence bestGuessConf = null;
    +549         final List<IdentifierMatch> collected = new ArrayList<IdentifierMatch>();
    +550         for (Confidence conf : Confidence.values()) {
    +551             for (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {
    +552                 final DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());
    +553                 if (evVer == null) {
    +554                     continue;
    +555                 }
    +556                 for (VulnerableSoftware vs : cpes) {
    +557                     DependencyVersion dbVer;
    +558                     if (vs.getRevision() != null && !vs.getRevision().isEmpty()) {
    +559                         dbVer = DependencyVersionUtil.parseVersion(vs.getVersion() + "." + vs.getRevision());
    +560                     } else {
    +561                         dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());
    +562                     }
    +563                     if (dbVer == null //special case, no version specified - everything is vulnerable
    +564                             || evVer.equals(dbVer)) { //woot exect match
    +565                         final String url = String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(vs.getName(), "UTF-8"));
    +566                         final IdentifierMatch match = new IdentifierMatch("cpe", vs.getName(), url, IdentifierConfidence.EXACT_MATCH, conf);
    +567                         collected.add(match);
    +568                     } else {
    +569                         //TODO the following isn't quite right is it? need to think about this guessing game a bit more.
    +570                         if (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()
    +571                                 && evVer.matchesAtLeastThreeLevels(dbVer)) {
    +572                             if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
    +573                                 if (bestGuess.getVersionParts().size() < dbVer.getVersionParts().size()) {
    +574                                     bestGuess = dbVer;
    +575                                     bestGuessConf = conf;
    +576                                 }
    +577                             }
    +578                         }
    +579                     }
    +580                 }
    +581                 if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
    +582                     if (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {
    +583                         bestGuess = evVer;
    +584                         bestGuessConf = conf;
    +585                     }
    +586                 }
    +587             }
    +588         }
    +589         final String cpeName = String.format("cpe:/a:%s:%s:%s", vendor, product, bestGuess.toString());
    +590         final String url = null; //String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(cpeName, "UTF-8"));
    +591         if (bestGuessConf == null) {
    +592             bestGuessConf = Confidence.LOW;
    +593         }
    +594         final IdentifierMatch match = new IdentifierMatch("cpe", cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);
    +595         collected.add(match);
    +596 
    +597         Collections.sort(collected);
    +598         final IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();
    +599         final Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();
    +600         for (IdentifierMatch m : collected) {
    +601             if (bestIdentifierQuality.equals(m.getConfidence())
    +602                     && bestEvidenceQuality.equals(m.getEvidenceConfidence())) {
    +603                 dependency.addIdentifier(m.getIdentifier());
    +604             }
    +605         }
    +606     }
    +607 
    +608     /**
    +609      * The confidence whether the identifier is an exact match, or a best guess.
    +610      */
    +611     private enum IdentifierConfidence {
    +612 
    +613         /**
    +614          * An exact match for the CPE.
    +615          */
    +616         EXACT_MATCH,
    +617         /**
    +618          * A best guess for the CPE.
    +619          */
    +620         BEST_GUESS
    +621     }
    +622 
    +623     /**
    +624      * A simple object to hold an identifier and carry information about the
    +625      * confidence in the identifier.
    +626      */
    +627     private static class IdentifierMatch implements Comparable<IdentifierMatch> {
    +628 
    +629         /**
    +630          * Constructs an IdentiferMatch.
    +631          *
    +632          * @param type the type of identifier (such as CPE)
    +633          * @param value the value of the identifier
    +634          * @param url the URL of the identifier
    +635          * @param identifierConfidence the confidence in the identifier: best
    +636          * guess or exact match
    +637          * @param evidenceConfidence the confidence of the evidence used to find
    +638          * the identifier
    +639          */
    +640         IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {
    +641             this.identifier = new Identifier(type, value, url);
    +642             this.confidence = identifierConfidence;
    +643             this.evidenceConfidence = evidenceConfidence;
    +644         }
    +645         //<editor-fold defaultstate="collapsed" desc="Property implementations: evidenceConfidence, confidence, identifier">
    +646         /**
    +647          * The confidence in the evidence used to identify this match.
    +648          */
    +649         private Confidence evidenceConfidence;
    +650 
    +651         /**
    +652          * Get the value of evidenceConfidence
    +653          *
    +654          * @return the value of evidenceConfidence
    +655          */
    +656         public Confidence getEvidenceConfidence() {
    +657             return evidenceConfidence;
    +658         }
    +659 
    +660         /**
    +661          * Set the value of evidenceConfidence
    +662          *
    +663          * @param evidenceConfidence new value of evidenceConfidence
    +664          */
    +665         public void setEvidenceConfidence(Confidence evidenceConfidence) {
    +666             this.evidenceConfidence = evidenceConfidence;
    +667         }
    +668         /**
    +669          * The confidence whether this is an exact match, or a best guess.
    +670          */
    +671         private IdentifierConfidence confidence;
    +672 
    +673         /**
    +674          * Get the value of confidence.
    +675          *
    +676          * @return the value of confidence
    +677          */
    +678         public IdentifierConfidence getConfidence() {
    +679             return confidence;
    +680         }
    +681 
    +682         /**
    +683          * Set the value of confidence.
    +684          *
    +685          * @param confidence new value of confidence
    +686          */
    +687         public void setConfidence(IdentifierConfidence confidence) {
    +688             this.confidence = confidence;
    +689         }
    +690         /**
    +691          * The CPE identifier.
    +692          */
    +693         private Identifier identifier;
    +694 
    +695         /**
    +696          * Get the value of identifier.
    +697          *
    +698          * @return the value of identifier
    +699          */
    +700         public Identifier getIdentifier() {
    +701             return identifier;
    +702         }
    +703 
    +704         /**
    +705          * Set the value of identifier.
    +706          *
    +707          * @param identifier new value of identifier
    +708          */
    +709         public void setIdentifier(Identifier identifier) {
    +710             this.identifier = identifier;
    +711         }
    +712         //</editor-fold>
    +713         //<editor-fold defaultstate="collapsed" desc="Standard implementations of toString, hashCode, and equals">
    +714 
    +715         /**
    +716          * Standard toString() implementation.
    +717          *
    +718          * @return the string representation of the object
    +719          */
    +720         @Override
    +721         public String toString() {
    +722             return "IdentifierMatch{" + "evidenceConfidence=" + evidenceConfidence
    +723                     + ", confidence=" + confidence + ", identifier=" + identifier + '}';
    +724         }
    +725 
    +726         /**
    +727          * Standard hashCode() implementation.
    +728          *
    +729          * @return the hashCode
    +730          */
    +731         @Override
    +732         public int hashCode() {
    +733             int hash = 5;
    +734             hash = 97 * hash + (this.evidenceConfidence != null ? this.evidenceConfidence.hashCode() : 0);
    +735             hash = 97 * hash + (this.confidence != null ? this.confidence.hashCode() : 0);
    +736             hash = 97 * hash + (this.identifier != null ? this.identifier.hashCode() : 0);
    +737             return hash;
    +738         }
    +739 
    +740         /**
    +741          * Standard equals implementation.
    +742          *
    +743          * @param obj the object to compare
    +744          * @return true if the objects are equal, otherwise false
    +745          */
    +746         @Override
    +747         public boolean equals(Object obj) {
    +748             if (obj == null) {
    +749                 return false;
    +750             }
    +751             if (getClass() != obj.getClass()) {
    +752                 return false;
    +753             }
    +754             final IdentifierMatch other = (IdentifierMatch) obj;
    +755             if (this.evidenceConfidence != other.evidenceConfidence) {
    +756                 return false;
    +757             }
    +758             if (this.confidence != other.confidence) {
    +759                 return false;
    +760             }
    +761             if (this.identifier != other.identifier && (this.identifier == null || !this.identifier.equals(other.identifier))) {
    +762                 return false;
    +763             }
    +764             return true;
    +765         }
    +766         //</editor-fold>
    +767 
    +768         /**
    +769          * Standard implementation of compareTo that compares identifier
    +770          * confidence, evidence confidence, and then the identifier.
    +771          *
    +772          * @param o the IdentifierMatch to compare to
    +773          * @return the natural ordering of IdentifierMatch
    +774          */
    +775         @Override
    +776         public int compareTo(IdentifierMatch o) {
    +777             int conf = this.confidence.compareTo(o.confidence);
    +778             if (conf == 0) {
    +779                 conf = this.evidenceConfidence.compareTo(o.evidenceConfidence);
    +780                 if (conf == 0) {
    +781                     conf = identifier.compareTo(o.identifier);
    +782                 }
    +783             }
    +784             return conf;
    +785         }
    +786     }
    +787 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..d8a8bc11f --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html @@ -0,0 +1,90 @@ + + + + +CpeSuppressionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.dependency.Dependency;
    +23  import org.owasp.dependencycheck.suppression.SuppressionRule;
    +24  
    +25  /**
    +26   * The suppression analyzer processes an externally defined XML document that
    +27   * complies with the suppressions.xsd schema. Any identified CPE entries within
    +28   * the dependencies that match will be removed.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class CpeSuppressionAnalyzer extends AbstractSuppressionAnalyzer {
    +33  
    +34      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +35      /**
    +36       * The name of the analyzer.
    +37       */
    +38      private static final String ANALYZER_NAME = "Cpe Suppression Analyzer";
    +39      /**
    +40       * The phase that this analyzer is intended to run in.
    +41       */
    +42      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_IDENTIFIER_ANALYSIS;
    +43  
    +44      /**
    +45       * Returns the name of the analyzer.
    +46       *
    +47       * @return the name of the analyzer.
    +48       */
    +49      @Override
    +50      public String getName() {
    +51          return ANALYZER_NAME;
    +52      }
    +53  
    +54      /**
    +55       * Returns the phase that the analyzer is intended to run in.
    +56       *
    +57       * @return the phase that the analyzer is intended to run in.
    +58       */
    +59      @Override
    +60      public AnalysisPhase getAnalysisPhase() {
    +61          return ANALYSIS_PHASE;
    +62      }
    +63      //</editor-fold>
    +64  
    +65      @Override
    +66      public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
    +67  
    +68          if (getRules() == null || getRules().size() <= 0) {
    +69              return;
    +70          }
    +71  
    +72          for (final SuppressionRule rule : getRules()) {
    +73              rule.process(dependency);
    +74          }
    +75      }
    +76  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..b13dfc8d6 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html @@ -0,0 +1,357 @@ + + + + +DependencyBundlingAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.File;
    +22  import java.util.HashSet;
    +23  import java.util.Iterator;
    +24  import java.util.ListIterator;
    +25  import java.util.Set;
    +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                                 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/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html new file mode 100644 index 000000000..879c1e8c9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html @@ -0,0 +1,385 @@ + + + + +FalsePositiveAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.UnsupportedEncodingException;
    +22  import java.net.URLEncoder;
    +23  import java.util.ArrayList;
    +24  import java.util.Collections;
    +25  import java.util.Iterator;
    +26  import java.util.List;
    +27  import java.util.ListIterator;
    +28  import java.util.Set;
    +29  import java.util.logging.Level;
    +30  import java.util.logging.Logger;
    +31  import java.util.regex.Matcher;
    +32  import java.util.regex.Pattern;
    +33  import org.owasp.dependencycheck.Engine;
    +34  import org.owasp.dependencycheck.dependency.Dependency;
    +35  import org.owasp.dependencycheck.dependency.Identifier;
    +36  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +37  
    +38  /**
    +39   * This analyzer attempts to remove some well known false positives -
    +40   * specifically regarding the java runtime.
    +41   *
    +42   * @author Jeremy Long (jeremy.long@owasp.org)
    +43   */
    +44  public class FalsePositiveAnalyzer extends AbstractAnalyzer {
    +45  
    +46      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +47      /**
    +48       * The set of file extensions supported by this analyzer.
    +49       */
    +50      private static final Set<String> EXTENSIONS = null;
    +51      /**
    +52       * The name of the analyzer.
    +53       */
    +54      private static final String ANALYZER_NAME = "False Positive Analyzer";
    +55      /**
    +56       * The phase that this analyzer is intended to run in.
    +57       */
    +58      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_IDENTIFIER_ANALYSIS;
    +59  
    +60      /**
    +61       * Returns a list of file EXTENSIONS supported by this analyzer.
    +62       *
    +63       * @return a list of file EXTENSIONS supported by this analyzer.
    +64       */
    +65      public Set<String> getSupportedExtensions() {
    +66          return EXTENSIONS;
    +67      }
    +68  
    +69      /**
    +70       * Returns the name of the analyzer.
    +71       *
    +72       * @return the name of the analyzer.
    +73       */
    +74      public String getName() {
    +75          return ANALYZER_NAME;
    +76      }
    +77  
    +78      /**
    +79       * Returns whether or not this analyzer can process the given extension.
    +80       *
    +81       * @param extension the file extension to test for support
    +82       * @return whether or not the specified file extension is supported by this
    +83       * analyzer.
    +84       */
    +85      public boolean supportsExtension(String extension) {
    +86          return true;
    +87      }
    +88  
    +89      /**
    +90       * Returns the phase that the analyzer is intended to run in.
    +91       *
    +92       * @return the phase that the analyzer is intended to run in.
    +93       */
    +94      public AnalysisPhase getAnalysisPhase() {
    +95          return ANALYSIS_PHASE;
    +96      }
    +97      //</editor-fold>
    +98  
    +99      /**
    +100      * Analyzes the dependencies and removes bad/incorrect CPE associations
    +101      * based on various heuristics.
    +102      *
    +103      * @param dependency the dependency to analyze.
    +104      * @param engine the engine that is scanning the dependencies
    +105      * @throws AnalysisException is thrown if there is an error reading the JAR
    +106      * file.
    +107      */
    +108     @Override
    +109     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +110         removeJreEntries(dependency);
    +111         removeBadMatches(dependency);
    +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 to analyze
    +301      */
    +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/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html new file mode 100644 index 000000000..51ccf8969 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html @@ -0,0 +1,147 @@ + + + + +FileNameAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.File;
    +22  import org.owasp.dependencycheck.dependency.Dependency;
    +23  import org.owasp.dependencycheck.dependency.Evidence;
    +24  import java.util.Set;
    +25  import org.owasp.dependencycheck.Engine;
    +26  import org.owasp.dependencycheck.utils.DependencyVersion;
    +27  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +28  
    +29  /**
    +30   *
    +31   * Takes a dependency and analyzes the filename and determines the hashes.
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class FileNameAnalyzer extends AbstractAnalyzer implements Analyzer {
    +36  
    +37      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +38      /**
    +39       * The name of the analyzer.
    +40       */
    +41      private static final String ANALYZER_NAME = "File Name Analyzer";
    +42      /**
    +43       * The phase that this analyzer is intended to run in.
    +44       */
    +45      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
    +46      /**
    +47       * The set of file extensions supported by this analyzer.
    +48       */
    +49      private static final Set<String> EXTENSIONS = null;
    +50  
    +51      /**
    +52       * Returns a list of file EXTENSIONS supported by this analyzer.
    +53       *
    +54       * @return a list of file EXTENSIONS supported by this analyzer.
    +55       */
    +56      public Set<String> getSupportedExtensions() {
    +57          return EXTENSIONS;
    +58      }
    +59  
    +60      /**
    +61       * Returns the name of the analyzer.
    +62       *
    +63       * @return the name of the analyzer.
    +64       */
    +65      public String getName() {
    +66          return ANALYZER_NAME;
    +67      }
    +68  
    +69      /**
    +70       * Returns whether or not this analyzer can process the given extension.
    +71       *
    +72       * @param extension the file extension to test for support.
    +73       * @return whether or not the specified file extension is supported by this
    +74       * analyzer.
    +75       */
    +76      public boolean supportsExtension(String extension) {
    +77          return true;
    +78      }
    +79  
    +80      /**
    +81       * Returns the phase that the analyzer is intended to run in.
    +82       *
    +83       * @return the phase that the analyzer is intended to run in.
    +84       */
    +85      public AnalysisPhase getAnalysisPhase() {
    +86          return ANALYSIS_PHASE;
    +87      }
    +88      //</editor-fold>
    +89  
    +90      /**
    +91       * Collects information about the file name.
    +92       *
    +93       * @param dependency the dependency to analyze.
    +94       * @param engine the engine that is scanning the dependencies
    +95       * @throws AnalysisException is thrown if there is an error reading the JAR
    +96       * file.
    +97       */
    +98      @Override
    +99      public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +100 
    +101         //strip any path information that may get added by ArchiveAnalyzer, etc.
    +102         final File f = new File(dependency.getFileName());
    +103         String fileName = f.getName();
    +104 
    +105         //remove file extension
    +106         final int pos = fileName.lastIndexOf(".");
    +107         if (pos > 0) {
    +108             fileName = fileName.substring(0, pos);
    +109         }
    +110 
    +111         //add version evidence
    +112         final DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);
    +113         if (version != null) {
    +114             dependency.getVersionEvidence().addEvidence("file", "name",
    +115                     version.toString(), Evidence.Confidence.HIGHEST);
    +116             dependency.getVersionEvidence().addEvidence("file", "name",
    +117                     fileName, Evidence.Confidence.MEDIUM);
    +118         }
    +119 
    +120         //add as vendor and product evidence
    +121         if (fileName.contains("-")) {
    +122             dependency.getProductEvidence().addEvidence("file", "name",
    +123                     fileName, Evidence.Confidence.HIGHEST);
    +124             dependency.getVendorEvidence().addEvidence("file", "name",
    +125                     fileName, Evidence.Confidence.HIGHEST);
    +126         } else {
    +127             dependency.getProductEvidence().addEvidence("file", "name",
    +128                     fileName, Evidence.Confidence.HIGH);
    +129             dependency.getVendorEvidence().addEvidence("file", "name",
    +130                     fileName, Evidence.Confidence.HIGH);
    +131         }
    +132     }
    +133 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html new file mode 100644 index 000000000..d7cdbd3fb --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html @@ -0,0 +1,158 @@ + + + + +HintAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.Iterator;
    +23  import java.util.Set;
    +24  import org.owasp.dependencycheck.Engine;
    +25  import org.owasp.dependencycheck.dependency.Dependency;
    +26  import org.owasp.dependencycheck.dependency.Evidence;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class HintAnalyzer extends AbstractAnalyzer implements Analyzer {
    +33  
    +34      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +35      /**
    +36       * The name of the analyzer.
    +37       */
    +38      private static final String ANALYZER_NAME = "Hint Analyzer";
    +39      /**
    +40       * The phase that this analyzer is intended to run in.
    +41       */
    +42      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_IDENTIFIER_ANALYSIS;
    +43      /**
    +44       * The set of file extensions supported by this analyzer.
    +45       */
    +46      private static final Set<String> EXTENSIONS = null;
    +47  
    +48      /**
    +49       * Returns a list of file EXTENSIONS supported by this analyzer.
    +50       *
    +51       * @return a list of file EXTENSIONS supported by this analyzer.
    +52       */
    +53      public Set<String> getSupportedExtensions() {
    +54          return EXTENSIONS;
    +55      }
    +56  
    +57      /**
    +58       * Returns the name of the analyzer.
    +59       *
    +60       * @return the name of the analyzer.
    +61       */
    +62      public String getName() {
    +63          return ANALYZER_NAME;
    +64      }
    +65  
    +66      /**
    +67       * Returns whether or not this analyzer can process the given extension.
    +68       *
    +69       * @param extension the file extension to test for support.
    +70       * @return whether or not the specified file extension is supported by this
    +71       * analyzer.
    +72       */
    +73      public boolean supportsExtension(String extension) {
    +74          return true;
    +75      }
    +76  
    +77      /**
    +78       * Returns the phase that the analyzer is intended to run in.
    +79       *
    +80       * @return the phase that the analyzer is intended to run in.
    +81       */
    +82      public AnalysisPhase getAnalysisPhase() {
    +83          return ANALYSIS_PHASE;
    +84      }
    +85      //</editor-fold>
    +86  
    +87      /**
    +88       * The HintAnalyzer uses knowledge about a dependency to add additional
    +89       * information to help in identification of identifiers or vulnerabilities.
    +90       *
    +91       * @param dependency The dependency being analyzed
    +92       * @param engine The scanning engine
    +93       * @throws AnalysisException is thrown if there is an exception analyzing
    +94       * the dependency.
    +95       */
    +96      @Override
    +97      public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +98          final Evidence springTest1 = new Evidence("Manifest",
    +99                  "Implementation-Title",
    +100                 "Spring Framework",
    +101                 Evidence.Confidence.HIGH);
    +102 
    +103         final Evidence springTest2 = new Evidence("Manifest",
    +104                 "Implementation-Title",
    +105                 "org.springframework.core",
    +106                 Evidence.Confidence.HIGH);
    +107 
    +108         final Evidence springTest3 = new Evidence("Manifest",
    +109                 "Bundle-Vendor",
    +110                 "SpringSource",
    +111                 Evidence.Confidence.HIGH);
    +112 
    +113 
    +114         Set<Evidence> evidence = dependency.getProductEvidence().getEvidence();
    +115         if (evidence.contains(springTest1) || evidence.contains(springTest2)) {
    +116             dependency.getProductEvidence().addEvidence("hint analyzer", "product", "springsource_spring_framework", Evidence.Confidence.HIGH);
    +117             dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "SpringSource", Evidence.Confidence.HIGH);
    +118             dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "vmware", Evidence.Confidence.HIGH);
    +119         }
    +120 
    +121         evidence = dependency.getVendorEvidence().getEvidence();
    +122         if (evidence.contains(springTest3)) {
    +123             dependency.getProductEvidence().addEvidence("hint analyzer", "product", "springsource_spring_framework", Evidence.Confidence.HIGH);
    +124             dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "vmware", Evidence.Confidence.HIGH);
    +125         }
    +126         final Iterator<Evidence> itr = dependency.getVendorEvidence().iterator();
    +127         final ArrayList<Evidence> newEntries = new ArrayList<Evidence>();
    +128         while (itr.hasNext()) {
    +129             final Evidence e = itr.next();
    +130             if ("sun".equalsIgnoreCase(e.getValue(false))) {
    +131                 final Evidence newEvidence = new Evidence(e.getSource() + " (hint)", e.getName(), "oracle", e.getConfidence());
    +132                 newEntries.add(newEvidence);
    +133             } else if ("oracle".equalsIgnoreCase(e.getValue(false))) {
    +134                 final Evidence newEvidence = new Evidence(e.getSource() + " (hint)", e.getName(), "sun", e.getConfidence());
    +135                 newEntries.add(newEvidence);
    +136             }
    +137         }
    +138         for (Evidence e : newEntries) {
    +139             dependency.getVendorEvidence().addEvidence(e);
    +140         }
    +141 
    +142 
    +143     }
    +144 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html new file mode 100644 index 000000000..5af8b919b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html @@ -0,0 +1,1135 @@ + + + + +JarAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.File;
    +22  import java.util.Enumeration;
    +23  import java.util.logging.Level;
    +24  import java.util.logging.Logger;
    +25  import javax.xml.bind.JAXBException;
    +26  import javax.xml.parsers.ParserConfigurationException;
    +27  import org.owasp.dependencycheck.Engine;
    +28  import org.owasp.dependencycheck.dependency.Dependency;
    +29  import org.owasp.dependencycheck.dependency.Evidence;
    +30  import org.owasp.dependencycheck.dependency.EvidenceCollection;
    +31  import java.io.IOException;
    +32  import java.io.InputStreamReader;
    +33  import java.io.Reader;
    +34  import java.util.ArrayList;
    +35  import java.util.HashMap;
    +36  import java.util.List;
    +37  import java.util.Map;
    +38  import java.util.Map.Entry;
    +39  import java.util.Properties;
    +40  import java.util.Set;
    +41  import java.util.StringTokenizer;
    +42  import java.util.jar.Attributes;
    +43  import java.util.jar.JarEntry;
    +44  import java.util.jar.JarFile;
    +45  import java.util.jar.Manifest;
    +46  import java.util.regex.Pattern;
    +47  import java.util.zip.ZipEntry;
    +48  import javax.xml.bind.JAXBContext;
    +49  import javax.xml.bind.JAXBElement;
    +50  import javax.xml.bind.Unmarshaller;
    +51  import javax.xml.parsers.SAXParser;
    +52  import javax.xml.parsers.SAXParserFactory;
    +53  import javax.xml.transform.sax.SAXSource;
    +54  import org.jsoup.Jsoup;
    +55  import org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter;
    +56  import org.owasp.dependencycheck.jaxb.pom.generated.License;
    +57  import org.owasp.dependencycheck.jaxb.pom.generated.Model;
    +58  import org.owasp.dependencycheck.jaxb.pom.generated.Organization;
    +59  import org.owasp.dependencycheck.utils.NonClosingStream;
    +60  import org.xml.sax.InputSource;
    +61  import org.xml.sax.SAXException;
    +62  import org.xml.sax.XMLFilter;
    +63  import org.xml.sax.XMLReader;
    +64  
    +65  /**
    +66   *
    +67   * Used to load a JAR file and collect information that can be used to determine
    +68   * the associated CPE.
    +69   *
    +70   * @author Jeremy Long (jeremy.long@owasp.org)
    +71   */
    +72  public class JarAnalyzer extends AbstractAnalyzer implements Analyzer {
    +73  
    +74      //<editor-fold defaultstate="collapsed" desc="Constants and Member Variables">
    +75      /**
    +76       * The system independent newline character.
    +77       */
    +78      private static final String NEWLINE = System.getProperty("line.separator");
    +79      /**
    +80       * A list of values in the manifest to ignore as they only result in false
    +81       * positives.
    +82       */
    +83      private static final Set<String> IGNORE_VALUES = newHashSet(
    +84              "Sun Java System Application Server");
    +85      /**
    +86       * A list of elements in the manifest to ignore.
    +87       */
    +88      private static final Set<String> IGNORE_KEYS = newHashSet(
    +89              "built-by",
    +90              "created-by",
    +91              "builtby",
    +92              "createdby",
    +93              "build-jdk",
    +94              "buildjdk",
    +95              "ant-version",
    +96              "antversion",
    +97              "import-package",
    +98              "export-package",
    +99              "importpackage",
    +100             "exportpackage",
    +101             "sealed",
    +102             "manifest-version",
    +103             "archiver-version",
    +104             "manifestversion",
    +105             "archiverversion",
    +106             "classpath",
    +107             "class-path",
    +108             "tool",
    +109             "bundle-manifestversion",
    +110             "bundlemanifestversion",
    +111             "include-resource");
    +112     /**
    +113      * item in some manifest, should be considered medium confidence.
    +114      */
    +115     private static final String BUNDLE_VERSION = "Bundle-Version"; //: 2.1.2
    +116     /**
    +117      * item in some manifest, should be considered medium confidence.
    +118      */
    +119     private static final String BUNDLE_DESCRIPTION = "Bundle-Description"; //: Apache Struts 2
    +120     /**
    +121      * item in some manifest, should be considered medium confidence.
    +122      */
    +123     private static final String BUNDLE_NAME = "Bundle-Name"; //: Struts 2 Core
    +124     /**
    +125      * item in some manifest, should be considered medium confidence.
    +126      */
    +127     private static final String BUNDLE_VENDOR = "Bundle-Vendor"; //: Apache Software Foundation
    +128     /**
    +129      * A pattern to detect HTML within text.
    +130      */
    +131     private static final Pattern HTML_DETECTION_PATTERN = Pattern.compile("\\<[a-z]+.*/?\\>", Pattern.CASE_INSENSITIVE);
    +132     /**
    +133      * The unmarshaller used to parse the pom.xml from a JAR file.
    +134      */
    +135     private Unmarshaller pomUnmarshaller;
    +136     //</editor-fold>
    +137 
    +138     /**
    +139      * Constructs a new JarAnalyzer.
    +140      */
    +141     public JarAnalyzer() {
    +142         try {
    +143             final JAXBContext jaxbContext = JAXBContext.newInstance("org.owasp.dependencycheck.jaxb.pom.generated");
    +144             pomUnmarshaller = jaxbContext.createUnmarshaller();
    +145         } catch (JAXBException ex) { //guess we will just have a null pointer exception later...
    +146             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.SEVERE, "Unable to load parser. See the log for more details.");
    +147             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +148         }
    +149     }
    +150     //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +151     /**
    +152      * The name of the analyzer.
    +153      */
    +154     private static final String ANALYZER_NAME = "Jar Analyzer";
    +155     /**
    +156      * The phase that this analyzer is intended to run in.
    +157      */
    +158     private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
    +159     /**
    +160      * The set of file extensions supported by this analyzer.
    +161      */
    +162     private static final Set<String> EXTENSIONS = newHashSet("jar", "war");
    +163 
    +164     /**
    +165      * Returns a list of file EXTENSIONS supported by this analyzer.
    +166      *
    +167      * @return a list of file EXTENSIONS supported by this analyzer.
    +168      */
    +169     public Set<String> getSupportedExtensions() {
    +170         return EXTENSIONS;
    +171     }
    +172 
    +173     /**
    +174      * Returns the name of the analyzer.
    +175      *
    +176      * @return the name of the analyzer.
    +177      */
    +178     public String getName() {
    +179         return ANALYZER_NAME;
    +180     }
    +181 
    +182     /**
    +183      * Returns whether or not this analyzer can process the given extension.
    +184      *
    +185      * @param extension the file extension to test for support.
    +186      * @return whether or not the specified file extension is supported by this
    +187      * analyzer.
    +188      */
    +189     public boolean supportsExtension(String extension) {
    +190         return EXTENSIONS.contains(extension);
    +191     }
    +192 
    +193     /**
    +194      * Returns the phase that the analyzer is intended to run in.
    +195      *
    +196      * @return the phase that the analyzer is intended to run in.
    +197      */
    +198     public AnalysisPhase getAnalysisPhase() {
    +199         return ANALYSIS_PHASE;
    +200     }
    +201     //</editor-fold>
    +202 
    +203     /**
    +204      * Loads a specified JAR file and collects information from the manifest and
    +205      * checksums to identify the correct CPE information.
    +206      *
    +207      * @param dependency the dependency to analyze.
    +208      * @param engine the engine that is scanning the dependencies
    +209      * @throws AnalysisException is thrown if there is an error reading the JAR
    +210      * file.
    +211      */
    +212     @Override
    +213     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +214         try {
    +215             final ArrayList<ClassNameInformation> classNames = collectClassNames(dependency);
    +216             final String fileName = dependency.getFileName().toLowerCase();
    +217             if (classNames.isEmpty()
    +218                     && (fileName.endsWith("-sources.jar")
    +219                     || fileName.endsWith("-javadoc.jar")
    +220                     || fileName.endsWith("-src.jar")
    +221                     || fileName.endsWith("-doc.jar"))) {
    +222                 engine.getDependencies().remove(dependency);
    +223             }
    +224             final boolean hasManifest = parseManifest(dependency, classNames);
    +225             final boolean hasPOM = analyzePOM(dependency, classNames);
    +226             final boolean addPackagesAsEvidence = !(hasManifest && hasPOM);
    +227             analyzePackageNames(classNames, dependency, addPackagesAsEvidence);
    +228         } catch (IOException ex) {
    +229             throw new AnalysisException("Exception occurred reading the JAR file.", ex);
    +230         }
    +231     }
    +232 
    +233     /**
    +234      * Attempts to find a pom.xml within the JAR file. If found it extracts
    +235      * information and adds it to the evidence. This will attempt to interpolate
    +236      * the strings contained within the pom.properties if one exists.
    +237      *
    +238      * @param dependency the dependency being analyzed
    +239      * @param classes a collection of class name information
    +240      * @throws AnalysisException is thrown if there is an exception parsing the
    +241      * pom
    +242      * @return whether or not evidence was added to the dependency
    +243      */
    +244     protected boolean analyzePOM(Dependency dependency, ArrayList<ClassNameInformation> classes) throws AnalysisException {
    +245         boolean foundSomething = false;
    +246         final JarFile jar;
    +247         try {
    +248             jar = new JarFile(dependency.getActualFilePath());
    +249         } catch (IOException ex) {
    +250             final String msg = String.format("Unable to read JarFile '%s'.", dependency.getActualFilePath());
    +251             final AnalysisException ax = new AnalysisException(msg, ex);
    +252             dependency.getAnalysisExceptions().add(ax);
    +253             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
    +254             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +255             return false;
    +256         }
    +257         List<String> pomEntries;
    +258         try {
    +259             pomEntries = retrievePomListing(jar);
    +260         } catch (IOException ex) {
    +261             final String msg = String.format("Unable to read Jar file entries in '%s'.", dependency.getActualFilePath());
    +262             final AnalysisException ax = new AnalysisException(msg, ex);
    +263             dependency.getAnalysisExceptions().add(ax);
    +264             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
    +265             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.INFO, msg, ex);
    +266             return false;
    +267         }
    +268         if (pomEntries.isEmpty()) {
    +269             return false;
    +270         }
    +271         if (pomEntries.size() > 1) { //need to sort out which pom we will use
    +272             pomEntries = filterPomEntries(pomEntries, classes);
    +273         }
    +274         for (String path : pomEntries) {
    +275             Properties pomProperties = null;
    +276             try {
    +277                 pomProperties = retrievePomProperties(path, jar);
    +278             } catch (IOException ex) {
    +279                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINEST, "ignore this, failed reading a non-existent pom.properties", ex);
    +280             }
    +281             Model pom = null;
    +282             try {
    +283                 pom = retrievePom(path, jar);
    +284             } catch (JAXBException ex) {
    +285                 final String msg = String.format("Unable to parse POM '%s' in '%s'",
    +286                         path, dependency.getFilePath());
    +287                 final AnalysisException ax = new AnalysisException(msg, ex);
    +288                 dependency.getAnalysisExceptions().add(ax);
    +289                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ax);
    +290             } catch (IOException ex) {
    +291                 final String msg = String.format("Unable to retrieve POM '%s' in '%s'",
    +292                         path, dependency.getFilePath());
    +293                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ex);
    +294             }
    +295             foundSomething = setPomEvidence(dependency, pom, pomProperties, classes) || foundSomething;
    +296         }
    +297         return foundSomething;
    +298     }
    +299 
    +300     /**
    +301      * Given a path to a pom.xml within a JarFile, this method attempts to load
    +302      * a sibling pom.properties if one exists.
    +303      *
    +304      * @param path the path to the pom.xml within the JarFile
    +305      * @param jar the JarFile to load the pom.properties from
    +306      * @return a Properties object or null if no pom.properties was found
    +307      * @throws IOException thrown if there is an exception reading the
    +308      * pom.properties
    +309      */
    +310     @edu.umd.cs.findbugs.annotations.SuppressWarnings(value = "OS_OPEN_STREAM",
    +311             justification = "The reader is closed by closing the zipEntry")
    +312     private Properties retrievePomProperties(String path, final JarFile jar) throws IOException {
    +313         Properties pomProperties = null;
    +314         final String propPath = path.substring(0, path.length() - 7) + "pom.properies";
    +315         final ZipEntry propEntry = jar.getEntry(propPath);
    +316         if (propEntry != null) {
    +317             final Reader reader = new InputStreamReader(jar.getInputStream(propEntry), "UTF-8");
    +318             pomProperties = new Properties();
    +319             pomProperties.load(reader);
    +320         }
    +321         return pomProperties;
    +322     }
    +323 
    +324     /**
    +325      * Searches a JarFile for pom.xml entries and returns a listing of these
    +326      * entries.
    +327      *
    +328      * @param jar the JarFile to search
    +329      * @return a list of pom.xml entries
    +330      * @throws IOException thrown if there is an exception reading a JarEntryf
    +331      */
    +332     private List<String> retrievePomListing(final JarFile jar) throws IOException {
    +333         final List<String> pomEntries = new ArrayList<String>();
    +334         final Enumeration<JarEntry> entries = jar.entries();
    +335         while (entries.hasMoreElements()) {
    +336             final JarEntry entry = entries.nextElement();
    +337             final String entryName = (new File(entry.getName())).getName().toLowerCase();
    +338             if (!entry.isDirectory() && "pom.xml".equals(entryName)) {
    +339                 pomEntries.add(entry.getName());
    +340             }
    +341         }
    +342         return pomEntries;
    +343     }
    +344 
    +345     /**
    +346      * Retrieves the specified POM from a jar file and converts it to a Model.
    +347      *
    +348      * @param path the path to the pom.xml file within the jar file
    +349      * @param jar the jar file to extract the pom from
    +350      * @return returns a
    +351      * {@link org.owasp.dependencycheck.analyzer.pom.generated.Model} object
    +352      * @throws JAXBException is thrown if there is an exception parsing the pom
    +353      * @throws IOException is thrown if there is an exception reading the jar
    +354      */
    +355     private Model retrievePom(String path, JarFile jar) throws JAXBException, IOException {
    +356         final ZipEntry entry = jar.getEntry(path);
    +357         if (entry != null) { //should never be null
    +358             Model m = null;
    +359             try {
    +360                 final XMLFilter filter = new MavenNamespaceFilter();
    +361                 final SAXParserFactory spf = SAXParserFactory.newInstance();
    +362                 final SAXParser sp = spf.newSAXParser();
    +363                 final XMLReader xr = sp.getXMLReader();
    +364                 filter.setParent(xr);
    +365                 final NonClosingStream stream = new NonClosingStream(jar.getInputStream(entry));
    +366                 final InputStreamReader reader = new InputStreamReader(stream, "UTF-8");
    +367                 final InputSource xml = new InputSource(reader);
    +368                 final SAXSource source = new SAXSource(filter, xml);
    +369                 final JAXBElement<Model> el = pomUnmarshaller.unmarshal(source, Model.class);
    +370                 m = el.getValue();
    +371             } catch (ParserConfigurationException ex) {
    +372                 final String msg = String.format("Unable to parse pom '%s' in jar '%s'", path, jar.getName());
    +373                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ex);
    +374             } catch (SAXException ex) {
    +375                 final String msg = String.format("Unable to parse pom '%s' in jar '%s'", path, jar.getName());
    +376                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, msg, ex);
    +377             }
    +378             return m;
    +379         }
    +380         return null;
    +381     }
    +382 
    +383     /**
    +384      * Sets evidence from the pom on the supplied dependency.
    +385      *
    +386      * @param dependency the dependency to set data on
    +387      * @param pom the information from the pom
    +388      * @param pomProperties the pom properties file (null if none exists)
    +389      * @param classes a collection of ClassNameInformation - containing data
    +390      * about the fully qualified class names within the JAR file being analyzed
    +391      * @return true if there was evidence within the pom that we could use;
    +392      * otherwise false
    +393      */
    +394     private boolean setPomEvidence(Dependency dependency, Model pom, Properties pomProperties, ArrayList<ClassNameInformation> classes) {
    +395         boolean foundSomething = false;
    +396         if (pom == null) {
    +397             return foundSomething;
    +398         }
    +399         String groupid = interpolateString(pom.getGroupId(), pomProperties);
    +400         if (groupid != null && !groupid.isEmpty()) {
    +401             if (groupid.startsWith("org.") || groupid.startsWith("com.")) {
    +402                 groupid = groupid.substring(4);
    +403             }
    +404             foundSomething = true;
    +405             dependency.getVendorEvidence().addEvidence("pom", "groupid", groupid, Evidence.Confidence.HIGH);
    +406             dependency.getProductEvidence().addEvidence("pom", "groupid", groupid, Evidence.Confidence.LOW);
    +407             addMatchingValues(classes, groupid, dependency.getVendorEvidence());
    +408             addMatchingValues(classes, groupid, dependency.getProductEvidence());
    +409         }
    +410         String artifactid = interpolateString(pom.getArtifactId(), pomProperties);
    +411         if (artifactid != null && !artifactid.isEmpty()) {
    +412             if (artifactid.startsWith("org.") || artifactid.startsWith("com.")) {
    +413                 artifactid = artifactid.substring(4);
    +414             }
    +415             foundSomething = true;
    +416             dependency.getProductEvidence().addEvidence("pom", "artifactid", artifactid, Evidence.Confidence.HIGH);
    +417             dependency.getVendorEvidence().addEvidence("pom", "artifactid", artifactid, Evidence.Confidence.LOW);
    +418             addMatchingValues(classes, artifactid, dependency.getVendorEvidence());
    +419             addMatchingValues(classes, artifactid, dependency.getProductEvidence());
    +420         }
    +421         //version
    +422         final String version = interpolateString(pom.getVersion(), pomProperties);
    +423         if (version != null && !version.isEmpty()) {
    +424             foundSomething = true;
    +425             dependency.getVersionEvidence().addEvidence("pom", "version", version, Evidence.Confidence.HIGHEST);
    +426         }
    +427         // org name
    +428         final Organization org = pom.getOrganization();
    +429         if (org != null && org.getName() != null) {
    +430             foundSomething = true;
    +431             final String orgName = interpolateString(org.getName(), pomProperties);
    +432             if (orgName != null && !orgName.isEmpty()) {
    +433                 dependency.getVendorEvidence().addEvidence("pom", "organization name", orgName, Evidence.Confidence.HIGH);
    +434                 addMatchingValues(classes, orgName, dependency.getVendorEvidence());
    +435             }
    +436         }
    +437         //pom name
    +438         final String pomName = interpolateString(pom.getName(), pomProperties);
    +439         if (pomName != null && !pomName.isEmpty()) {
    +440             foundSomething = true;
    +441             dependency.getProductEvidence().addEvidence("pom", "name", pomName, Evidence.Confidence.HIGH);
    +442             dependency.getVendorEvidence().addEvidence("pom", "name", pomName, Evidence.Confidence.HIGH);
    +443             addMatchingValues(classes, pomName, dependency.getVendorEvidence());
    +444             addMatchingValues(classes, pomName, dependency.getProductEvidence());
    +445         }
    +446 
    +447         //Description
    +448         if (pom.getDescription() != null) {
    +449             foundSomething = true;
    +450             final String description = interpolateString(pom.getDescription(), pomProperties);
    +451             if (description != null && !description.isEmpty()) {
    +452                 addDescription(dependency, description, "pom", "description");
    +453                 addMatchingValues(classes, description, dependency.getVendorEvidence());
    +454                 addMatchingValues(classes, description, dependency.getProductEvidence());
    +455             }
    +456         }
    +457 
    +458         //license
    +459         if (pom.getLicenses() != null) {
    +460             String license = null;
    +461             for (License lic : pom.getLicenses().getLicense()) {
    +462                 String tmp = null;
    +463                 if (lic.getName() != null) {
    +464                     tmp = interpolateString(lic.getName(), pomProperties);
    +465                 }
    +466                 if (lic.getUrl() != null) {
    +467                     if (tmp == null) {
    +468                         tmp = interpolateString(lic.getUrl(), pomProperties);
    +469                     } else {
    +470                         tmp += ": " + interpolateString(lic.getUrl(), pomProperties);
    +471                     }
    +472                 }
    +473                 if (tmp == null) {
    +474                     continue;
    +475                 }
    +476                 if (HTML_DETECTION_PATTERN.matcher(tmp).find()) {
    +477                     tmp = Jsoup.parse(tmp).text();
    +478                 }
    +479                 if (license == null) {
    +480                     license = tmp;
    +481                 } else {
    +482                     license += "\n" + tmp;
    +483                 }
    +484             }
    +485             if (license != null) {
    +486                 dependency.setLicense(license);
    +487             }
    +488         }
    +489         return foundSomething;
    +490     }
    +491 
    +492     /**
    +493      * Analyzes the path information of the classes contained within the
    +494      * JarAnalyzer to try and determine possible vendor or product names. If any
    +495      * are found they are stored in the packageVendor and packageProduct
    +496      * hashSets.
    +497      *
    +498      * @param classNames a list of class names
    +499      * @param dependency a dependency to analyze
    +500      * @param addPackagesAsEvidence a flag indicating whether or not package
    +501      * names should be added as evidence.
    +502      */
    +503     protected void analyzePackageNames(ArrayList<ClassNameInformation> classNames,
    +504             Dependency dependency, boolean addPackagesAsEvidence) {
    +505         final HashMap<String, Integer> vendorIdentifiers = new HashMap<String, Integer>();
    +506         final HashMap<String, Integer> productIdentifiers = new HashMap<String, Integer>();
    +507         analyzeFullyQualifiedClassNames(classNames, vendorIdentifiers, productIdentifiers);
    +508 
    +509         final int classCount = classNames.size();
    +510         final EvidenceCollection vendor = dependency.getVendorEvidence();
    +511         final EvidenceCollection product = dependency.getProductEvidence();
    +512 
    +513         for (Map.Entry<String, Integer> entry : vendorIdentifiers.entrySet()) {
    +514             final float ratio = entry.getValue() / (float) classCount;
    +515             if (ratio > 0.5) {
    +516                 //TODO remove weighting
    +517                 vendor.addWeighting(entry.getKey());
    +518                 if (addPackagesAsEvidence && entry.getKey().length() > 1) {
    +519                     vendor.addEvidence("jar", "package", entry.getKey(), Evidence.Confidence.LOW);
    +520                 }
    +521             }
    +522         }
    +523         for (Map.Entry<String, Integer> entry : productIdentifiers.entrySet()) {
    +524             final float ratio = entry.getValue() / (float) classCount;
    +525             if (ratio > 0.5) {
    +526                 product.addWeighting(entry.getKey());
    +527                 if (addPackagesAsEvidence && entry.getKey().length() > 1) {
    +528                     product.addEvidence("jar", "package", entry.getKey(), Evidence.Confidence.LOW);
    +529                 }
    +530             }
    +531         }
    +532     }
    +533 
    +534     /**
    +535      * <p>Reads the manifest from the JAR file and collects the entries. Some
    +536      * vendorKey entries are:</p> <ul><li>Implementation Title</li>
    +537      * <li>Implementation Version</li> <li>Implementation Vendor</li>
    +538      * <li>Implementation VendorId</li> <li>Bundle Name</li> <li>Bundle
    +539      * Version</li> <li>Bundle Vendor</li> <li>Bundle Description</li> <li>Main
    +540      * Class</li> </ul>
    +541      * However, all but a handful of specific entries are read in.
    +542      *
    +543      * @param dependency A reference to the dependency
    +544      * @param classInformation a collection of class information
    +545      * @return whether evidence was identified parsing the manifest
    +546      * @throws IOException if there is an issue reading the JAR file
    +547      */
    +548     protected boolean parseManifest(Dependency dependency, ArrayList<ClassNameInformation> classInformation) throws IOException {
    +549         boolean foundSomething = false;
    +550         JarFile jar = null;
    +551         try {
    +552             jar = new JarFile(dependency.getActualFilePath());
    +553 
    +554             final Manifest manifest = jar.getManifest();
    +555             if (manifest == null) {
    +556                 //don't log this for javadoc or sources jar files
    +557                 if (!dependency.getFileName().toLowerCase().endsWith("-sources.jar")
    +558                         && !dependency.getFileName().toLowerCase().endsWith("-javadoc.jar")
    +559                         && !dependency.getFileName().toLowerCase().endsWith("-src.jar")
    +560                         && !dependency.getFileName().toLowerCase().endsWith("-doc.jar")) {
    +561                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.INFO,
    +562                             String.format("Jar file '%s' does not contain a manifest.",
    +563                             dependency.getFileName()));
    +564                 }
    +565                 return false;
    +566             }
    +567             final Attributes atts = manifest.getMainAttributes();
    +568 
    +569             final EvidenceCollection vendorEvidence = dependency.getVendorEvidence();
    +570             final EvidenceCollection productEvidence = dependency.getProductEvidence();
    +571             final EvidenceCollection versionEvidence = dependency.getVersionEvidence();
    +572 
    +573             final String source = "Manifest";
    +574 
    +575             for (Entry<Object, Object> entry : atts.entrySet()) {
    +576                 String key = entry.getKey().toString();
    +577                 String value = atts.getValue(key);
    +578                 if (HTML_DETECTION_PATTERN.matcher(value).find()) {
    +579                     value = Jsoup.parse(value).text();
    +580                 }
    +581                 if (IGNORE_VALUES.contains(value)) {
    +582                     continue;
    +583                 } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_TITLE.toString())) {
    +584                     foundSomething = true;
    +585                     productEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +586                     addMatchingValues(classInformation, value, productEvidence);
    +587                 } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VERSION.toString())) {
    +588                     foundSomething = true;
    +589                     versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +590                 } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR.toString())) {
    +591                     foundSomething = true;
    +592                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +593                     addMatchingValues(classInformation, value, vendorEvidence);
    +594                 } else if (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR_ID.toString())) {
    +595                     foundSomething = true;
    +596                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +597                     addMatchingValues(classInformation, value, vendorEvidence);
    +598                 } else if (key.equalsIgnoreCase(BUNDLE_DESCRIPTION)) {
    +599                     foundSomething = true;
    +600                     addDescription(dependency, value, "manifest", key);
    +601                     //productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +602                     addMatchingValues(classInformation, value, productEvidence);
    +603                 } else if (key.equalsIgnoreCase(BUNDLE_NAME)) {
    +604                     foundSomething = true;
    +605                     productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +606                     addMatchingValues(classInformation, value, productEvidence);
    +607                 } else if (key.equalsIgnoreCase(BUNDLE_VENDOR)) {
    +608                     foundSomething = true;
    +609                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +610                     addMatchingValues(classInformation, value, vendorEvidence);
    +611                 } else if (key.equalsIgnoreCase(BUNDLE_VERSION)) {
    +612                     foundSomething = true;
    +613                     versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +614                 } else if (key.equalsIgnoreCase(Attributes.Name.MAIN_CLASS.toString())) {
    +615                     continue;
    +616                     //skipping main class as if this has important information to add
    +617                     // it will be added during class name analysis...  if other fields
    +618                     // have the information from the class name then they will get added...
    +619 //                    foundSomething = true;
    +620 //                    productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +621 //                    vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +622 //                    addMatchingValues(classInformation, value, vendorEvidence);
    +623 //                    addMatchingValues(classInformation, value, productEvidence);
    +624                 } else {
    +625                     key = key.toLowerCase();
    +626 
    +627                     if (!IGNORE_KEYS.contains(key)
    +628                             && !key.endsWith("jdk")
    +629                             && !key.contains("lastmodified")
    +630                             && !key.endsWith("package")
    +631                             && !key.endsWith("classpath")
    +632                             && !key.endsWith("class-path")
    +633                             && !key.endsWith("-scm") //todo change this to a regex?
    +634                             && !key.startsWith("scm-")
    +635                             && !isImportPackage(key, value)
    +636                             && !isPackage(key, value)) {
    +637 
    +638                         foundSomething = true;
    +639                         if (key.contains("version")) {
    +640                             if (key.contains("specification")) {
    +641                                 versionEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
    +642                             } else {
    +643                                 versionEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +644                             }
    +645 
    +646                         } else if (key.contains("title")) {
    +647                             productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +648                             addMatchingValues(classInformation, value, productEvidence);
    +649                         } else if (key.contains("vendor")) {
    +650                             if (key.contains("specification")) {
    +651                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
    +652                             } else {
    +653                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +654                                 addMatchingValues(classInformation, value, vendorEvidence);
    +655                             }
    +656                         } else if (key.contains("name")) {
    +657                             productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +658                             vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +659                             addMatchingValues(classInformation, value, vendorEvidence);
    +660                             addMatchingValues(classInformation, value, productEvidence);
    +661                         } else if (key.contains("license")) {
    +662                             addLicense(dependency, value);
    +663                         } else {
    +664                             if (key.contains("description")) {
    +665                                 addDescription(dependency, value, "manifest", key);
    +666                             } else {
    +667                                 productEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
    +668                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
    +669                                 addMatchingValues(classInformation, value, vendorEvidence);
    +670                                 addMatchingValues(classInformation, value, productEvidence);
    +671                                 if (value.matches(".*\\d.*")) {
    +672                                     final StringTokenizer tokenizer = new StringTokenizer(value, " ");
    +673                                     while (tokenizer.hasMoreElements()) {
    +674                                         final String s = tokenizer.nextToken();
    +675                                         if (s.matches("^[0-9.]+$")) {
    +676                                             versionEvidence.addEvidence(source, key, s, Evidence.Confidence.LOW);
    +677                                         }
    +678                                     }
    +679                                 }
    +680                             }
    +681                         }
    +682                     }
    +683                 }
    +684             }
    +685         } finally {
    +686             if (jar != null) {
    +687                 jar.close();
    +688             }
    +689         }
    +690         return foundSomething;
    +691     }
    +692 
    +693     /**
    +694      * Adds a description to the given dependency.
    +695      *
    +696      * @param dependency a dependency
    +697      * @param description the description
    +698      * @param source the source of the evidence
    +699      * @param key the "name" of the evidence
    +700      */
    +701     private void addDescription(Dependency dependency, String description, String source, String key) {
    +702         if (dependency.getDescription() == null) {
    +703             dependency.setDescription(description);
    +704         }
    +705         String desc;
    +706         if (HTML_DETECTION_PATTERN.matcher(description).find()) {
    +707             desc = Jsoup.parse(description).text();
    +708         } else {
    +709             desc = description;
    +710         }
    +711         dependency.setDescription(desc);
    +712         if (desc.length() > 100) {
    +713             final int posSuchAs = desc.toLowerCase().indexOf("such as ", 100);
    +714             final int posLike = desc.toLowerCase().indexOf("like ", 100);
    +715             int pos = -1;
    +716             if (posLike > 0 && posSuchAs > 0) {
    +717                 pos = posLike > posSuchAs ? posLike : posSuchAs;
    +718             } else if (posLike > 0) {
    +719                 pos = posLike;
    +720             } else if (posSuchAs > 0) {
    +721                 pos = posSuchAs;
    +722             }
    +723             String descToUse = desc;
    +724             if (pos > 0) {
    +725                 final StringBuilder sb = new StringBuilder(pos + 3);
    +726                 sb.append(desc.substring(0, pos));
    +727                 sb.append("...");
    +728                 descToUse = sb.toString();
    +729             }
    +730             dependency.getProductEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
    +731             dependency.getVendorEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
    +732         } else {
    +733             dependency.getProductEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
    +734             dependency.getVendorEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
    +735         }
    +736     }
    +737 
    +738     /**
    +739      * Adds a license to the given dependency.
    +740      *
    +741      * @param d a dependency
    +742      * @param license the license
    +743      */
    +744     private void addLicense(Dependency d, String license) {
    +745         if (d.getLicense() == null) {
    +746             d.setLicense(license);
    +747         } else if (!d.getLicense().contains(license)) {
    +748             d.setLicense(d.getLicense() + NEWLINE + license);
    +749         }
    +750     }
    +751 
    +752     /**
    +753      * The initialize method does nothing for this Analyzer.
    +754      */
    +755     public void initialize() {
    +756         //do nothing
    +757     }
    +758 
    +759     /**
    +760      * The close method does nothing for this Analyzer.
    +761      */
    +762     public void close() {
    +763         //do nothing
    +764     }
    +765 
    +766     /**
    +767      * <p>A utility function that will interpolate strings based on values given
    +768      * in the properties file. It will also interpolate the strings contained
    +769      * within the properties file so that properties can reference other
    +770      * properties.</p>
    +771      * <p><b>Note:</b> if there is no property found the reference will be
    +772      * removed. In other words, if the interpolated string will be replaced with
    +773      * an empty string.
    +774      * </p>
    +775      * <p>Example:</p>
    +776      * <code>
    +777      * Properties p = new Properties();
    +778      * p.setProperty("key", "value");
    +779      * String s = interpolateString("'${key}' and '${nothing}'", p);
    +780      * System.out.println(s);
    +781      * </code>
    +782      * <p>Will result in:</p>
    +783      * <code>
    +784      * 'value' and ''
    +785      * </code>
    +786      *
    +787      * @param text the string that contains references to properties.
    +788      * @param properties a collection of properties that may be referenced
    +789      * within the text.
    +790      * @return the interpolated text.
    +791      */
    +792     protected String interpolateString(String text, Properties properties) {
    +793         Properties props = properties;
    +794         if (text == null) {
    +795             return text;
    +796         }
    +797         if (props == null) {
    +798             props = new Properties();
    +799         }
    +800 
    +801         final int pos = text.indexOf("${");
    +802         if (pos < 0) {
    +803             return text;
    +804         }
    +805         final int end = text.indexOf("}");
    +806         if (end < pos) {
    +807             return text;
    +808         }
    +809 
    +810         final String propName = text.substring(pos + 2, end);
    +811         String propValue = interpolateString(props.getProperty(propName), props);
    +812         if (propValue == null) {
    +813             propValue = "";
    +814         }
    +815         final StringBuilder sb = new StringBuilder(propValue.length() + text.length());
    +816         sb.append(text.subSequence(0, pos));
    +817         sb.append(propValue);
    +818         sb.append(text.substring(end + 1));
    +819         return interpolateString(sb.toString(), props); //yes yes, this should be a loop...
    +820     }
    +821 
    +822     /**
    +823      * Determines if the key value pair from the manifest is for an "import"
    +824      * type entry for package names.
    +825      *
    +826      * @param key the key from the manifest
    +827      * @param value the value from the manifest
    +828      * @return true or false depending on if it is believed the entry is an
    +829      * "import" entry
    +830      */
    +831     private boolean isImportPackage(String key, String value) {
    +832         final Pattern packageRx = Pattern.compile("^((([a-zA-Z_#\\$0-9]\\.)+)\\s*\\;\\s*)+$");
    +833         if (packageRx.matcher(value).matches()) {
    +834             return (key.contains("import") || key.contains("include"));
    +835         }
    +836         return false;
    +837     }
    +838 
    +839     /**
    +840      * Cycles through an enumeration of JarEntries, contained within the
    +841      * dependency, and returns a list of the class names. This does not include
    +842      * core Java package names (i.e. java.* or javax.*).
    +843      *
    +844      * @param dependency the dependency being analyzed
    +845      * @return an list of fully qualified class names
    +846      */
    +847     private ArrayList<ClassNameInformation> collectClassNames(Dependency dependency) {
    +848         final ArrayList<ClassNameInformation> classNames = new ArrayList<ClassNameInformation>();
    +849         JarFile jar = null;
    +850         try {
    +851             jar = new JarFile(dependency.getActualFilePath());
    +852             final Enumeration entries = jar.entries();
    +853             while (entries.hasMoreElements()) {
    +854                 final JarEntry entry = (JarEntry) entries.nextElement();
    +855                 final String name = entry.getName().toLowerCase();
    +856                 //no longer stripping "|com\\.sun" - there are some com.sun jar files with CVEs.
    +857                 if (name.endsWith(".class") && !name.matches("^javax?\\..*$")) {
    +858                     final ClassNameInformation className = new ClassNameInformation(name.substring(0, name.length() - 6));
    +859                     classNames.add(className);
    +860                 }
    +861             }
    +862         } catch (IOException ex) {
    +863             final String msg = String.format("Unable to open jar file '%s'.", dependency.getFileName());
    +864             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
    +865             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +866         } finally {
    +867             if (jar != null) {
    +868                 try {
    +869                     jar.close();
    +870                 } catch (IOException ex) {
    +871                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINEST, null, ex);
    +872                 }
    +873             }
    +874         }
    +875         return classNames;
    +876     }
    +877 
    +878     /**
    +879      * Cycles through the list of class names and places the package levels 0-3
    +880      * into the provided maps for vendor and product. This is helpful when
    +881      * analyzing vendor/product as many times this is included in the package
    +882      * name.
    +883      *
    +884      * @param classNames a list of class names
    +885      * @param vendor HashMap of possible vendor names from package names (e.g.
    +886      * owasp)
    +887      * @param product HashMap of possible product names from package names (e.g.
    +888      * dependencycheck)
    +889      */
    +890     private void analyzeFullyQualifiedClassNames(ArrayList<ClassNameInformation> classNames,
    +891             HashMap<String, Integer> vendor, HashMap<String, Integer> product) {
    +892         for (ClassNameInformation entry : classNames) {
    +893             final ArrayList<String> list = entry.getPackageStructure();
    +894             addEntry(vendor, list.get(0));
    +895 
    +896             if (list.size() == 2) {
    +897                 addEntry(product, list.get(1));
    +898             }
    +899             if (list.size() == 3) {
    +900                 addEntry(vendor, list.get(1));
    +901                 addEntry(product, list.get(1));
    +902                 addEntry(product, list.get(2));
    +903             }
    +904             if (list.size() >= 4) {
    +905                 addEntry(vendor, list.get(1));
    +906                 addEntry(vendor, list.get(2));
    +907                 addEntry(product, list.get(1));
    +908                 addEntry(product, list.get(2));
    +909                 addEntry(product, list.get(3));
    +910             }
    +911         }
    +912     }
    +913 
    +914     /**
    +915      * Adds an entry to the specified collection and sets the Integer (e.g. the
    +916      * count) to 1. If the entry already exists in the collection then the
    +917      * Integer is incremented by 1.
    +918      *
    +919      * @param collection a collection of strings and their occurrence count
    +920      * @param key the key to add to the collection
    +921      */
    +922     private void addEntry(HashMap<String, Integer> collection, String key) {
    +923         if (collection.containsKey(key)) {
    +924             collection.put(key, collection.get(key) + 1);
    +925         } else {
    +926             collection.put(key, 1);
    +927         }
    +928     }
    +929 
    +930     /**
    +931      * Cycles through the collection of class name information to see if parts
    +932      * of the package names are contained in the provided value. If found, it
    +933      * will be added as the HIGHEST confidence evidence because we have more
    +934      * then one source corroborating the value.
    +935      *
    +936      * @param classes a collection of class name information
    +937      * @param value the value to check to see if it contains a package name
    +938      * @param evidence the evidence collection to add new entries too
    +939      */
    +940     private void addMatchingValues(ArrayList<ClassNameInformation> classes, String value, EvidenceCollection evidence) {
    +941         if (value == null || value.isEmpty()) {
    +942             return;
    +943         }
    +944         final String text = value.toLowerCase();
    +945         for (ClassNameInformation cni : classes) {
    +946             for (String key : cni.getPackageStructure()) {
    +947                 if (text.contains(key)) { //note, package structure elements are already lowercase.
    +948                     evidence.addEvidence("jar", "package name", key, Evidence.Confidence.HIGHEST);
    +949                 }
    +950             }
    +951         }
    +952     }
    +953 
    +954     /**
    +955      * <p><b>This is currently a failed implementation.</b> Part of the issue is
    +956      * I was trying to solve the wrong problem. Instead of multiple POMs being
    +957      * in the JAR to just add information about dependencies - I didn't realize
    +958      * until later that I was looking at an uber-jar (aka fat-jar) that included
    +959      * all of its dependencies.</p>
    +960      * <p>I'm leaving this method in the source tree, entirely commented out
    +961      * until a solution https://github.com/jeremylong/DependencyCheck/issues/11
    +962      * has been implemented.</p>
    +963      * <p>Takes a list of pom entries from a JAR file and attempts to filter it
    +964      * down to the pom related to the jar (rather then the pom entry for a
    +965      * dependency).</p>
    +966      *
    +967      * @param pomEntries a list of pom entries
    +968      * @param classes a list of fully qualified classes from the JAR file
    +969      * @return the list of pom entries that are associated with the jar being
    +970      * analyzed rather then the dependent poms
    +971      */
    +972     private List<String> filterPomEntries(List<String> pomEntries, ArrayList<ClassNameInformation> classes) {
    +973         return pomEntries;
    +974 //        final HashMap<String, Integer> usePoms = new HashMap<String, Integer>();
    +975 //        final ArrayList<String> possiblePoms = new ArrayList<String>();
    +976 //        for (String entry : pomEntries) {
    +977 //            //todo validate that the starts with is correct... or does it start with a ./ or /?
    +978 //            // is it different on different platforms?
    +979 //            if (entry.startsWith("META-INF/maven/")) {
    +980 //                //trim the meta-inf/maven and pom.xml...
    +981 //                final String pomPath = entry.substring(15, entry.length() - 8).toLowerCase();
    +982 //                final String[] parts = pomPath.split("/");
    +983 //                if (parts == null || parts.length != 2) { //misplaced pom?
    +984 //                    //TODO add logging to FINE
    +985 //                    possiblePoms.add(entry);
    +986 //                }
    +987 //                parts[0] = parts[0].replace('.', '/');
    +988 //                parts[1] = parts[1].replace('.', '/');
    +989 //                for (ClassNameInformation cni : classes) {
    +990 //                    final String name = cni.getName();
    +991 //                    if (StringUtils.containsIgnoreCase(name, parts[0])) {
    +992 //                        addEntry(usePoms, entry);
    +993 //                    }
    +994 //                    if (StringUtils.containsIgnoreCase(name, parts[1])) {
    +995 //                        addEntry(usePoms, entry);
    +996 //                    }
    +997 //                }
    +998 //            } else { // we have a JAR file with an incorrect POM layout...
    +999 //                //TODO add logging to FINE
    +1000 //                possiblePoms.add(entry);
    +1001 //            }
    +1002 //        }
    +1003 //        List<String> retValue;
    +1004 //        if (usePoms.isEmpty()) {
    +1005 //            if (possiblePoms.isEmpty()) {
    +1006 //                retValue = pomEntries;
    +1007 //            } else {
    +1008 //                retValue = possiblePoms;
    +1009 //            }
    +1010 //        } else {
    +1011 //            retValue = new ArrayList<String>();
    +1012 //            int maxCount = 0;
    +1013 //            for (Map.Entry<String, Integer> entry : usePoms.entrySet()) {
    +1014 //                final int current = entry.getValue().intValue();
    +1015 //                if (current > maxCount) {
    +1016 //                    maxCount = current;
    +1017 //                    retValue.clear();
    +1018 //                    retValue.add(entry.getKey());
    +1019 //                } else if (current == maxCount) {
    +1020 //                    retValue.add(entry.getKey());
    +1021 //                }
    +1022 //            }
    +1023 //        }
    +1024 //        return retValue;
    +1025     }
    +1026 
    +1027     /**
    +1028      * Simple check to see if the attribute from a manifest is just a package
    +1029      * name.
    +1030      *
    +1031      * @param key the key of the value to check
    +1032      * @param value the value to check
    +1033      * @return true if the value looks like a java package name, otherwise false
    +1034      */
    +1035     private boolean isPackage(String key, String value) {
    +1036 
    +1037         return !key.matches(".*(version|title|vendor|name|license|description).*")
    +1038                 && value.matches("^([a-zA-Z_][a-zA-Z0-9_\\$]*(\\.[a-zA-Z_][a-zA-Z0-9_\\$]*)*)?$");
    +1039     }
    +1040 
    +1041     /**
    +1042      * Stores information about a class name.
    +1043      */
    +1044     protected static class ClassNameInformation {
    +1045 
    +1046         /**
    +1047          * Stores information about a given class name. This class will keep the
    +1048          * fully qualified class name and a list of the important parts of the
    +1049          * package structure. Up to the first four levels of the package
    +1050          * structure are stored, excluding a leading "org" or "com". Example:
    +1051          * <code>ClassNameInformation obj = new ClassNameInformation("org.owasp.dependencycheck.analyzer.JarAnalyzer");
    +1052          * System.out.println(obj.getName());
    +1053          * for (String p : obj.getPackageStructure())
    +1054          *     System.out.println(p);
    +1055          * </code> Would result in:
    +1056          * <code>org.owasp.dependencycheck.analyzer.JarAnalyzer
    +1057          * owasp
    +1058          * dependencycheck
    +1059          * analyzer
    +1060          * jaranalyzer</code>
    +1061          *
    +1062          * @param className a fully qualified class name
    +1063          */
    +1064         ClassNameInformation(String className) {
    +1065             name = className;
    +1066             if (name.contains("/")) {
    +1067                 final String[] tmp = className.toLowerCase().split("/");
    +1068                 int start = 0;
    +1069                 int end = 3;
    +1070                 if ("com".equals(tmp[0]) || "org".equals(tmp[0])) {
    +1071                     start = 1;
    +1072                     end = 4;
    +1073                 }
    +1074                 if (tmp.length <= end) {
    +1075                     end = tmp.length - 1;
    +1076                 }
    +1077                 for (int i = start; i <= end; i++) {
    +1078                     packageStructure.add(tmp[i]);
    +1079                 }
    +1080             } else {
    +1081                 packageStructure.add(name);
    +1082             }
    +1083         }
    +1084         /**
    +1085          * The fully qualified class name.
    +1086          */
    +1087         private String name;
    +1088 
    +1089         /**
    +1090          * Get the value of name
    +1091          *
    +1092          * @return the value of name
    +1093          */
    +1094         public String getName() {
    +1095             return name;
    +1096         }
    +1097 
    +1098         /**
    +1099          * Set the value of name
    +1100          *
    +1101          * @param name new value of name
    +1102          */
    +1103         public void setName(String name) {
    +1104             this.name = name;
    +1105         }
    +1106         /**
    +1107          * Up to the first four levels of the package structure, excluding a
    +1108          * leading "org" or "com".
    +1109          */
    +1110         private ArrayList<String> packageStructure = new ArrayList<String>();
    +1111 
    +1112         /**
    +1113          * Get the value of packageStructure
    +1114          *
    +1115          * @return the value of packageStructure
    +1116          */
    +1117         public ArrayList<String> getPackageStructure() {
    +1118             return packageStructure;
    +1119         }
    +1120     }
    +1121 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html new file mode 100644 index 000000000..1b945fe4c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html @@ -0,0 +1,136 @@ + + + + +JavaScriptAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.dependency.Dependency;
    +23  import java.util.Set;
    +24  import java.util.regex.Pattern;
    +25  
    +26  /**
    +27   *
    +28   * Used to load a JAR file and collect information that can be used to determine
    +29   * the associated CPE.
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class JavaScriptAnalyzer extends AbstractAnalyzer implements Analyzer {
    +34  
    +35      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +36      /**
    +37       * The name of the analyzer.
    +38       */
    +39      private static final String ANALYZER_NAME = "JavaScript Analyzer";
    +40      /**
    +41       * The phase that this analyzer is intended to run in.
    +42       */
    +43      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
    +44      /**
    +45       * The set of file extensions supported by this analyzer.
    +46       */
    +47      private static final Set<String> EXTENSIONS = newHashSet("js");
    +48  
    +49      /**
    +50       * Returns a list of file EXTENSIONS supported by this analyzer.
    +51       *
    +52       * @return a list of file EXTENSIONS supported by this analyzer.
    +53       */
    +54      public Set<String> getSupportedExtensions() {
    +55          return EXTENSIONS;
    +56      }
    +57  
    +58      /**
    +59       * Returns the name of the analyzer.
    +60       *
    +61       * @return the name of the analyzer.
    +62       */
    +63      public String getName() {
    +64          return ANALYZER_NAME;
    +65      }
    +66  
    +67      /**
    +68       * Returns whether or not this analyzer can process the given extension.
    +69       *
    +70       * @param extension the file extension to test for support.
    +71       * @return whether or not the specified file extension is supported by this
    +72       * analyzer.
    +73       */
    +74      public boolean supportsExtension(String extension) {
    +75          return EXTENSIONS.contains(extension);
    +76      }
    +77  
    +78      /**
    +79       * Returns the phase that the analyzer is intended to run in.
    +80       *
    +81       * @return the phase that the analyzer is intended to run in.
    +82       */
    +83      public AnalysisPhase getAnalysisPhase() {
    +84          return ANALYSIS_PHASE;
    +85      }
    +86      //</editor-fold>
    +87  
    +88      /**
    +89       * Loads a specified JAR file and collects information from the manifest and
    +90       * checksums to identify the correct CPE information.
    +91       *
    +92       * @param dependency the dependency to analyze.
    +93       * @param engine the engine that is scanning the dependencies
    +94       * @throws AnalysisException is thrown if there is an error reading the JAR
    +95       * file.
    +96       */
    +97      @Override
    +98      public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +99          final Pattern extractComments = Pattern.compile("(/\\*([^*]|[\\r\\n]|(\\*+([^*/]|[\\r\\n])))*\\*+/)|(//.*)");
    +100 
    +101     }
    +102 
    +103     /**
    +104      * The initialize method does nothing for this Analyzer.
    +105      *
    +106      * @throws Exception thrown if there is an exception
    +107      */
    +108     @Override
    +109     public void initialize() throws Exception {
    +110         //do nothing
    +111     }
    +112 
    +113     /**
    +114      * The close method does nothing for this Analyzer.
    +115      *
    +116      * @throws Exception thrown if there is an exception
    +117      */
    +118     @Override
    +119     public void close() throws Exception {
    +120         //do nothing
    +121     }
    +122 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html new file mode 100644 index 000000000..bac9006b6 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.html @@ -0,0 +1,236 @@ + + + + +NvdCveAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.IOException;
    +22  import java.sql.SQLException;
    +23  import java.util.List;
    +24  import java.util.Set;
    +25  import org.owasp.dependencycheck.Engine;
    +26  import org.owasp.dependencycheck.dependency.Dependency;
    +27  import org.owasp.dependencycheck.dependency.Vulnerability;
    +28  import org.owasp.dependencycheck.dependency.Identifier;
    +29  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +30  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +31  
    +32  /**
    +33   * NvdCveAnalyzer is a utility class that takes a project dependency and
    +34   * attempts to discern if there is an associated CVEs. It uses the the
    +35   * identifiers found by other analyzers to lookup the CVE data.
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class NvdCveAnalyzer implements Analyzer {
    +40  
    +41      /**
    +42       * The maximum number of query results to return.
    +43       */
    +44      static final int MAX_QUERY_RESULTS = 100;
    +45      /**
    +46       * The CVE Index.
    +47       */
    +48      private CveDB cveDB;
    +49  
    +50      /**
    +51       * Opens the data source.
    +52       *
    +53       * @throws SQLException thrown when there is a SQL Exception
    +54       * @throws IOException thrown when there is an IO Exception
    +55       * @throws DatabaseException thrown when there is a database exceptions
    +56       * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +57       * loaded
    +58       */
    +59      public void open() throws SQLException, IOException, DatabaseException, ClassNotFoundException {
    +60          cveDB = new CveDB();
    +61          cveDB.open();
    +62      }
    +63  
    +64      /**
    +65       * Closes the data source.
    +66       */
    +67      public void close() {
    +68          cveDB.close();
    +69          cveDB = null;
    +70      }
    +71  
    +72      /**
    +73       * Returns the status of the data source - is the database open.
    +74       *
    +75       * @return true or false.
    +76       */
    +77      public boolean isOpen() {
    +78          return (cveDB != null);
    +79      }
    +80  
    +81      /**
    +82       * Ensures that the CVE Database is closed.
    +83       *
    +84       * @throws Throwable when a throwable is thrown.
    +85       */
    +86      @Override
    +87      protected void finalize() throws Throwable {
    +88          super.finalize();
    +89          if (isOpen()) {
    +90              close();
    +91          }
    +92      }
    +93  
    +94      /**
    +95       * Analyzes a dependency and attempts to determine if there are any CPE
    +96       * identifiers for this dependency.
    +97       *
    +98       * @param dependency The Dependency to analyze
    +99       * @param engine The analysis engine
    +100      * @throws AnalysisException is thrown if there is an issue analyzing the
    +101      * dependency
    +102      */
    +103     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +104         for (Identifier id : dependency.getIdentifiers()) {
    +105             if ("cpe".equals(id.getType())) {
    +106                 try {
    +107                     final String value = id.getValue();
    +108                     final List<Vulnerability> vulns = cveDB.getVulnerabilities(value);
    +109                     dependency.getVulnerabilities().addAll(vulns);
    +110 //TODO - remove this comment block after additional testing is completed
    +111 //note - valid match functionality has been moved into the CveDB class.
    +112 ////                    for (Vulnerability v : vulns) {
    +113 ////                        if (isValidMatch(dependency, v)) {
    +114 ////                            dependency.addVulnerability(v);
    +115 ////                        }
    +116 ////                    }
    +117                 } catch (DatabaseException ex) {
    +118                     throw new AnalysisException(ex);
    +119                 }
    +120             }
    +121         }
    +122     }
    +123 
    +124     /**
    +125      * Returns true because this analyzer supports all dependency types.
    +126      *
    +127      * @return true.
    +128      */
    +129     public Set<String> getSupportedExtensions() {
    +130         return null;
    +131     }
    +132 
    +133     /**
    +134      * Returns the name of this analyzer.
    +135      *
    +136      * @return the name of this analyzer.
    +137      */
    +138     public String getName() {
    +139         return "NVD CVE Analyzer";
    +140     }
    +141 
    +142     /**
    +143      * Returns true because this analyzer supports all dependency types.
    +144      *
    +145      * @param extension the file extension of the dependency being analyzed.
    +146      * @return true.
    +147      */
    +148     public boolean supportsExtension(String extension) {
    +149         return true;
    +150     }
    +151 
    +152     /**
    +153      * Returns the analysis phase that this analyzer should run in.
    +154      *
    +155      * @return the analysis phase that this analyzer should run in.
    +156      */
    +157     public AnalysisPhase getAnalysisPhase() {
    +158         return AnalysisPhase.FINDING_ANALYSIS;
    +159     }
    +160 
    +161     /**
    +162      * Opens the NVD CVE Lucene Index.
    +163      *
    +164      * @throws Exception is thrown if there is an issue opening the index.
    +165      */
    +166     public void initialize() throws Exception {
    +167         this.open();
    +168     }
    +169 //TODO - remove this comment block after additional testing is completed
    +170 // The following check has been moved into the CveDB class.
    +171 ////    /**
    +172 ////     * <p>Determines if this is a valid vulnerability match for the given
    +173 ////     * dependency. Specifically, this is concerned with ensuring the version
    +174 ////     * numbers are correct.</p>
    +175 ////     * <p>Currently, this is focused on the issues with the versions for Struts
    +176 ////     * 1 and Struts 2. In the future this will due better matching on more
    +177 ////     * version numbers.</p>
    +178 ////     *
    +179 ////     * @param dependency the dependency
    +180 ////     * @param v the vulnerability
    +181 ////     * @return returns true if the vulnerability is for the given dependency
    +182 ////     */
    +183 ////    private boolean isValidMatch(final Dependency dependency, final Vulnerability v) {
    +184 ////        //right now I only know of the issue with Struts1/2
    +185 ////        // start with fixing this problem.
    +186 ////
    +187 ////        //TODO extend this solution to do better version matching for the vulnerable software.
    +188 ////        boolean struts1 = false;
    +189 ////        boolean struts2 = false;
    +190 ////        for (Identifier i : dependency.getIdentifiers()) {
    +191 ////            if (i.getValue().startsWith("cpe:/a:apache:struts:")) {
    +192 ////                final char version = i.getValue().charAt(21);
    +193 ////                if (version == '1') {
    +194 ////                    struts1 = true;
    +195 ////                }
    +196 ////                if (version == '2') {
    +197 ////                    struts2 = true;
    +198 ////                }
    +199 ////            }
    +200 ////        }
    +201 ////        if (!struts1 && !struts2) {
    +202 ////            return true; //we are not looking at struts, so return true.
    +203 ////        }
    +204 ////        if (struts1 && struts2) {
    +205 ////            return true; //there is a mismatch here, but we can't solve it here so we return valid.
    +206 ////        }
    +207 ////        if (struts1) {
    +208 ////            boolean hasStruts1Vuln = false;
    +209 ////            boolean hasStruts2PreviousVersion = false;
    +210 ////            for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
    +211 ////                //TODO FIX THIS
    +212 ////                //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2';
    +213 ////                //hasStruts1Vuln |= vs.getName().charAt(21) == '1';
    +214 ////            }
    +215 ////            if (!hasStruts1Vuln && hasStruts2PreviousVersion) {
    +216 ////                return false;
    +217 ////            }
    +218 ////        }
    +219 ////
    +220 ////        return true;
    +221 ////    }
    +222 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..49c889c37 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,90 @@ + + + + +VulnerabilitySuppressionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.dependency.Dependency;
    +23  import org.owasp.dependencycheck.suppression.SuppressionRule;
    +24  
    +25  /**
    +26   * The suppression analyzer processes an externally defined XML document that
    +27   * complies with the suppressions.xsd schema. Any identified Vulnerability
    +28   * entries within the dependencies that match will be removed.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class VulnerabilitySuppressionAnalyzer extends AbstractSuppressionAnalyzer {
    +33  
    +34      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +35      /**
    +36       * The name of the analyzer.
    +37       */
    +38      private static final String ANALYZER_NAME = "Vulnerability Suppression Analyzer";
    +39      /**
    +40       * The phase that this analyzer is intended to run in.
    +41       */
    +42      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_FINDING_ANALYSIS;
    +43  
    +44      /**
    +45       * Returns the name of the analyzer.
    +46       *
    +47       * @return the name of the analyzer.
    +48       */
    +49      @Override
    +50      public String getName() {
    +51          return ANALYZER_NAME;
    +52      }
    +53  
    +54      /**
    +55       * Returns the phase that the analyzer is intended to run in.
    +56       *
    +57       * @return the phase that the analyzer is intended to run in.
    +58       */
    +59      @Override
    +60      public AnalysisPhase getAnalysisPhase() {
    +61          return ANALYSIS_PHASE;
    +62      }
    +63      //</editor-fold>
    +64  
    +65      @Override
    +66      public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
    +67  
    +68          if (getRules() == null || getRules().size() <= 0) {
    +69              return;
    +70          }
    +71  
    +72          for (final SuppressionRule rule : getRules()) {
    +73              rule.process(dependency);
    +74          }
    +75      }
    +76  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html new file mode 100644 index 000000000..154a8bb5c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html @@ -0,0 +1,84 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.analyzer + + + + +

    + org.owasp.dependencycheck.analyzer +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html new file mode 100644 index 000000000..a5c9eab87 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html @@ -0,0 +1,167 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.analyzer + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.analyzer

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractAnalyzer +
    + AbstractSuppressionAnalyzer +
    + AnalysisException +
    + AnalysisPhase +
    + Analyzer +
    + AnalyzerService +
    + ArchiveAnalyzer +
    + ArchiveExtractionException +
    + CPEAnalyzer +
    + ClassNameInformation +
    + CpeSuppressionAnalyzer +
    + DependencyBundlingAnalyzer +
    + FalsePositiveAnalyzer +
    + FileNameAnalyzer +
    + HintAnalyzer +
    + IdentifierConfidence +
    + IdentifierMatch +
    + JarAnalyzer +
    + JavaScriptAnalyzer +
    + NvdCveAnalyzer +
    + VulnerabilitySuppressionAnalyzer +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectoryLockException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectoryLockException.html new file mode 100644 index 000000000..d9a20b0e9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectoryLockException.html @@ -0,0 +1,81 @@ + + + + +DirectoryLockException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.concurrency;
    +20  
    +21  /**
    +22   * If thrown, indicates that a problem occurred when locking a directory.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class DirectoryLockException extends Exception {
    +27  
    +28      /**
    +29       * Default serial version UID.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Constructs a new Directory Lock Exception.
    +35       */
    +36      public DirectoryLockException() {
    +37          super();
    +38      }
    +39  
    +40      /**
    +41       * Constructs a new Directory Lock Exception.
    +42       *
    +43       * @param msg the message describing the exception
    +44       */
    +45      public DirectoryLockException(String msg) {
    +46          super(msg);
    +47      }
    +48  
    +49      /**
    +50       * Constructs a new Directory Lock Exception.
    +51       *
    +52       * @param ex the cause of the exception
    +53       */
    +54      public DirectoryLockException(Throwable ex) {
    +55          super(ex);
    +56      }
    +57  
    +58      /**
    +59       * Constructs a new Directory Lock Exception.
    +60       *
    +61       * @param msg the message describing the exception
    +62       * @param ex the cause of the exception
    +63       */
    +64      public DirectoryLockException(String msg, Throwable ex) {
    +65          super(msg, ex);
    +66      }
    +67  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html new file mode 100644 index 000000000..8dfddb5b3 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html @@ -0,0 +1,281 @@ + + + + +DirectorySpinLock xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.concurrency;
    +20  
    +21  import java.io.Closeable;
    +22  import java.io.File;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.IOException;
    +25  import java.io.RandomAccessFile;
    +26  import java.nio.channels.AsynchronousCloseException;
    +27  import java.nio.channels.ClosedChannelException;
    +28  import java.nio.channels.FileChannel;
    +29  import java.nio.channels.FileLock;
    +30  import java.nio.channels.FileLockInterruptionException;
    +31  import java.nio.channels.NonWritableChannelException;
    +32  import java.nio.channels.OverlappingFileLockException;
    +33  import java.util.logging.Level;
    +34  import java.util.logging.Logger;
    +35  
    +36  /**
    +37   * Implements a spin lock on a given directory. If the lock cannot be obtained,
    +38   * the process will "spin" waiting for an opportunity to obtain the lock
    +39   * requested.
    +40   *
    +41   * @author Jeremy Long (jeremy.long@owasp.org)
    +42   */
    +43  public class DirectorySpinLock implements Closeable /*, AutoCloseable*/ {
    +44  
    +45      /**
    +46       * The name of the lock file.
    +47       */
    +48      public static final String LOCK_NAME = "data.lock";
    +49      /**
    +50       * The maximum wait period used when attempting to obtain a lock.
    +51       */
    +52      public static final int MAX_SPIN = 100;
    +53      /**
    +54       * The file channel used to perform the lock.
    +55       */
    +56      private FileChannel channel = null;
    +57      /**
    +58       * The file used to perform the lock.
    +59       */
    +60      private File lockFile = null;
    +61      /**
    +62       * The lock object.
    +63       */
    +64      private FileLock lock = null;
    +65      /**
    +66       * The maximum number of seconds that the spin lock will wait while trying
    +67       * to obtain a lock.
    +68       */
    +69      private long maxWait = MAX_SPIN;
    +70  
    +71      /**
    +72       * Get the maximum wait time, in seconds, that the spin lock will wait while
    +73       * trying to obtain a lock.
    +74       *
    +75       * @return the number of seconds the spin lock will wait
    +76       */
    +77      public long getMaxWait() {
    +78          return maxWait / 2; //sleep is for 500, so / 2
    +79      }
    +80  
    +81      /**
    +82       * Set the maximum wait time, in seconds, that the spin lock will wait while
    +83       * trying to obtain a lock.
    +84       *
    +85       * @param maxWait the number of seconds the spin lock will wait
    +86       */
    +87      public void setMaxWait(long maxWait) {
    +88          this.maxWait = maxWait * 2; //sleep is for 500, so * 2
    +89      }
    +90  
    +91      /**
    +92       * Constructs a new spin lock on the given directory.
    +93       *
    +94       * @param directory the directory to monitor/lock
    +95       * @throws InvalidDirectoryException thrown if there is an issue with the
    +96       * directory provided
    +97       * @throws DirectoryLockException thrown there is an issue obtaining a
    +98       * handle to the lock file
    +99       */
    +100     public DirectorySpinLock(File directory) throws InvalidDirectoryException, DirectoryLockException {
    +101         checkDirectory(directory);
    +102         lockFile = new File(directory, LOCK_NAME);
    +103         RandomAccessFile file = null;
    +104         try {
    +105             file = new RandomAccessFile(lockFile, "rw");
    +106         } catch (FileNotFoundException ex) {
    +107             throw new DirectoryLockException("Lock file not found", ex);
    +108         }
    +109         channel = file.getChannel();
    +110     }
    +111 
    +112     /**
    +113      * Attempts to obtain an exclusive lock; an exception is thrown if the lock
    +114      * could not be obtained. This method may block for a few seconds if a lock
    +115      * cannot be obtained.
    +116      *
    +117      * @throws DirectoryLockException thrown if there is an exception obtaining
    +118      * the lock
    +119      */
    +120     public void obtainSharedLock() throws DirectoryLockException {
    +121         obtainLock(true);
    +122     }
    +123 
    +124     /**
    +125      * Attempts to obtain an exclusive lock; an exception is thrown if the lock
    +126      * could not be obtained. This method may block for a few seconds if a lock
    +127      * cannot be obtained.
    +128      *
    +129      * @throws DirectoryLockException thrown if there is an exception obtaining
    +130      * the lock
    +131      */
    +132     public void obtainExclusiveLock() throws DirectoryLockException {
    +133         obtainLock(false);
    +134     }
    +135 
    +136     /**
    +137      * Attempts to obtain a lock; an exception is thrown if the lock could not
    +138      * be obtained. This method may block for a few seconds if a lock cannot be
    +139      * obtained.
    +140      *
    +141      * @param shared true if the lock is shared, otherwise false
    +142      * @param maxWait the maximum time to wait, in seconds, while trying to
    +143      * obtain the lock
    +144      * @throws DirectoryLockException thrown if there is an exception obtaining
    +145      * the lock
    +146      */
    +147     protected void obtainLock(boolean shared, long maxWait) throws DirectoryLockException {
    +148         setMaxWait(maxWait);
    +149         obtainLock(shared);
    +150     }
    +151 
    +152     /**
    +153      * Attempts to obtain a lock; an exception is thrown if the lock could not
    +154      * be obtained. This method may block for a few seconds if a lock cannot be
    +155      * obtained.
    +156      *
    +157      * @param shared true if the lock is shared, otherwise false
    +158      * @throws DirectoryLockException thrown if there is an exception obtaining
    +159      * the lock
    +160      */
    +161     protected void obtainLock(boolean shared) throws DirectoryLockException {
    +162         if (lock != null) {
    +163             release();
    +164         }
    +165         if (channel == null) {
    +166             throw new DirectoryLockException("Unable to create lock, no file channel exists");
    +167         }
    +168         int count = 0;
    +169         Exception lastException = null;
    +170         while (lock == null && count++ < maxWait) {
    +171             try {
    +172                 lock = channel.lock(0, Long.MAX_VALUE, shared);
    +173             } catch (AsynchronousCloseException ex) {
    +174                 lastException = ex;
    +175             } catch (ClosedChannelException ex) {
    +176                 lastException = ex;
    +177             } catch (FileLockInterruptionException ex) {
    +178                 lastException = ex;
    +179             } catch (OverlappingFileLockException ex) {
    +180                 lastException = ex;
    +181             } catch (NonWritableChannelException ex) {
    +182                 lastException = ex;
    +183             } catch (IOException ex) {
    +184                 lastException = ex;
    +185             }
    +186             try {
    +187                 Thread.sleep(500);
    +188             } catch (InterruptedException ex) {
    +189                 Thread.currentThread().interrupt();
    +190             }
    +191         }
    +192         if (lock == null) {
    +193             if (lastException == null) {
    +194                 throw new DirectoryLockException("Unable to obtain lock");
    +195             } else {
    +196                 throw new DirectoryLockException("Unable to obtain lock", lastException);
    +197             }
    +198         }
    +199     }
    +200 
    +201     /**
    +202      * Performs a few simple rudimentary checks on the specified directory.
    +203      * Specifically, does the file exist and is it a directory.
    +204      *
    +205      * @param directory the File object to inspect
    +206      * @throws InvalidDirectoryException thrown if the directory is null or is
    +207      * not a directory
    +208      */
    +209     private void checkDirectory(File directory) throws InvalidDirectoryException {
    +210         if (directory == null) {
    +211             throw new InvalidDirectoryException("Unable to obtain lock on a null File");
    +212         }
    +213         if (!directory.isDirectory()) {
    +214             final String msg = String.format("File, '%s', does not exist or is not a directory", directory.getAbsolutePath());
    +215             throw new InvalidDirectoryException(msg);
    +216         }
    +217     }
    +218 
    +219     /**
    +220      * Releases any locks and closes the underlying channel.
    +221      *
    +222      * @throws IOException if an IO Exception occurs
    +223      */
    +224     @Override
    +225     public void close() throws IOException {
    +226         release();
    +227 // TODO uncomment this once support for 1.6 is dropped.
    +228 //        if (lock != null) {
    +229 //            try {
    +230 //                lock.close();
    +231 //            } catch (IOException ex) {
    +232 //                Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to close file lock due to IO Exception", ex);
    +233 //            }
    +234 //        }
    +235         if (channel != null) {
    +236             try {
    +237                 channel.close();
    +238             } catch (IOException ex) {
    +239                 Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to close the channel for the file lock", ex);
    +240             }
    +241         }
    +242         if (lockFile != null) {
    +243             if (lockFile.exists()) {
    +244                 /* yes, this delete could fail which is totally fine. The other
    +245                  * thread holding the lock while delete it.
    +246                  */
    +247                 lockFile.delete();
    +248             }
    +249         }
    +250     }
    +251 
    +252     /**
    +253      * Releases the lock. Any exceptions that are thrown by the underlying lock
    +254      * during the release are ignored.
    +255      */
    +256     public void release() {
    +257         if (lock != null) {
    +258             try {
    +259                 lock.release();
    +260             } catch (ClosedChannelException ex) {
    +261                 Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Uable to release file lock", ex);
    +262             } catch (IOException ex) {
    +263                 Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to release file lock due to IO Exception", ex);
    +264             }
    +265         }
    +266     }
    +267 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html new file mode 100644 index 000000000..3a9c3f076 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html @@ -0,0 +1,81 @@ + + + + +InvalidDirectoryException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.concurrency;
    +20  
    +21  /**
    +22   * If thrown, indicates that there is a problem with a directory.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class InvalidDirectoryException extends Exception {
    +27  
    +28      /**
    +29       * Default serial version UID.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Constructs a new Invalid Directory Exception.
    +35       */
    +36      public InvalidDirectoryException() {
    +37          super();
    +38      }
    +39  
    +40      /**
    +41       * Constructs a new Invalid Directory Exception.
    +42       *
    +43       * @param msg the message describing the exception
    +44       */
    +45      public InvalidDirectoryException(String msg) {
    +46          super(msg);
    +47      }
    +48  
    +49      /**
    +50       * Constructs a new Invalid Directory Exception.
    +51       *
    +52       * @param ex the cause of the exception
    +53       */
    +54      public InvalidDirectoryException(Throwable ex) {
    +55          super(ex);
    +56      }
    +57  
    +58      /**
    +59       * Constructs a new Invalid Directory Exception.
    +60       *
    +61       * @param msg the message describing the exception
    +62       * @param ex the cause of the exception
    +63       */
    +64      public InvalidDirectoryException(String msg, Throwable ex) {
    +65          super(msg, ex);
    +66      }
    +67  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html new file mode 100644 index 000000000..c9c3a8274 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html @@ -0,0 +1,30 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.concurrency + + + + +

    + org.owasp.dependencycheck.concurrency +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html new file mode 100644 index 000000000..c95666689 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html @@ -0,0 +1,77 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.concurrency + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.concurrency

    + + + + + + + + + + + + + + + + + + +
    Class Summary
    + DirectoryLockException +
    + DirectorySpinLock +
    + InvalidDirectoryException +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html new file mode 100644 index 000000000..cea0fa299 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html @@ -0,0 +1,259 @@ + + + + +BaseDB xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data;
    +20  
    +21  import java.io.BufferedReader;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.io.InputStream;
    +25  import java.io.InputStreamReader;
    +26  import java.sql.Connection;
    +27  import java.sql.DriverManager;
    +28  import java.sql.PreparedStatement;
    +29  import java.sql.ResultSet;
    +30  import java.sql.SQLException;
    +31  import java.sql.Statement;
    +32  import java.util.logging.Level;
    +33  import java.util.logging.Logger;
    +34  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +35  import static org.owasp.dependencycheck.data.nvdcve.CveDB.DB_SCHEMA_VERSION;
    +36  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +37  import org.owasp.dependencycheck.utils.Settings;
    +38  
    +39  /**
    +40   *
    +41   * @author Jeremy Long (jeremy.long@owasp.org)
    +42   */
    +43  public class BaseDB {
    +44  
    +45      /**
    +46       * Resource location for SQL file used to create the database schema.
    +47       */
    +48      public static final String DB_STRUCTURE_RESOURCE = "data/initialize.sql";
    +49      /**
    +50       * The version of the current DB Schema.
    +51       */
    +52      public static final String DB_SCHEMA_VERSION = "2.7";
    +53      /**
    +54       * Database connection
    +55       */
    +56      private Connection conn;
    +57  
    +58      /**
    +59       * Returns the database connection.
    +60       *
    +61       * @return the database connection
    +62       */
    +63      protected Connection getConnection() {
    +64          return conn;
    +65      }
    +66  
    +67      /**
    +68       * Opens the database connection. If the database does not exist, it will
    +69       * create a new one.
    +70       *
    +71       * @throws IOException thrown if there is an IO Exception
    +72       * @throws SQLException thrown if there is a SQL Exception
    +73       * @throws DatabaseException thrown if there is an error initializing a new
    +74       * database
    +75       * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +76       * loaded
    +77       */
    +78      @edu.umd.cs.findbugs.annotations.SuppressWarnings(
    +79              value = "DMI_EMPTY_DB_PASSWORD",
    +80              justification = "Yes, I know... Blank password.")
    +81      public void open() throws IOException, SQLException, DatabaseException, ClassNotFoundException {
    +82          final String fileName = CveDB.getDataDirectory().getCanonicalPath();
    +83          final File f = new File(fileName, "cve." + DB_SCHEMA_VERSION);
    +84          final File check = new File(f.getAbsolutePath() + ".h2.db");
    +85          final boolean createTables = !check.exists();
    +86          final String connStr = String.format("jdbc:h2:file:%s;AUTO_SERVER=TRUE", f.getAbsolutePath());
    +87          Class.forName("org.h2.Driver");
    +88          conn = DriverManager.getConnection(connStr, "sa", "");
    +89          if (createTables) {
    +90              createTables();
    +91          }
    +92      }
    +93  
    +94      /**
    +95       * Closes the DB4O database. Close should be called on this object when it
    +96       * is done being used.
    +97       */
    +98      public void close() {
    +99          if (conn != null) {
    +100             try {
    +101                 conn.close();
    +102             } catch (SQLException ex) {
    +103                 final String msg = "There was an error attempting to close the CveDB, see the log for more details.";
    +104                 Logger.getLogger(BaseDB.class.getName()).log(Level.SEVERE, msg, ex);
    +105                 Logger.getLogger(BaseDB.class.getName()).log(Level.FINE, null, ex);
    +106             }
    +107             conn = null;
    +108         }
    +109     }
    +110 
    +111     /**
    +112      * Commits all completed transactions.
    +113      *
    +114      * @throws SQLException thrown if a SQL Exception occurs
    +115      */
    +116     public void commit() throws SQLException {
    +117         if (conn != null) {
    +118             conn.commit();
    +119         }
    +120     }
    +121 
    +122     /**
    +123      * Cleans up the object and ensures that "close" has been called.
    +124      *
    +125      * @throws Throwable thrown if there is a problem
    +126      */
    +127     @Override
    +128     protected void finalize() throws Throwable {
    +129         close();
    +130         super.finalize(); //not necessary if extending Object.
    +131     }
    +132 
    +133     /**
    +134      * Creates the database structure (tables and indexes) to store the CVE data
    +135      *
    +136      * @throws SQLException thrown if there is a sql exception
    +137      * @throws DatabaseException thrown if there is a database exception
    +138      */
    +139     private void createTables() throws SQLException, DatabaseException {
    +140         InputStream is;
    +141         InputStreamReader reader;
    +142         BufferedReader in = null;
    +143         try {
    +144             is = this.getClass().getClassLoader().getResourceAsStream(DB_STRUCTURE_RESOURCE);
    +145             reader = new InputStreamReader(is, "UTF-8");
    +146             in = new BufferedReader(reader);
    +147             final StringBuilder sb = new StringBuilder(2110);
    +148             String tmp;
    +149             while ((tmp = in.readLine()) != null) {
    +150                 sb.append(tmp);
    +151             }
    +152             Statement statement = null;
    +153             try {
    +154                 statement = conn.createStatement();
    +155                 statement.execute(sb.toString());
    +156             } finally {
    +157                 closeStatement(statement);
    +158             }
    +159         } catch (IOException ex) {
    +160             throw new DatabaseException("Unable to create database schema", ex);
    +161         } finally {
    +162             if (in != null) {
    +163                 try {
    +164                     in.close();
    +165                 } catch (IOException ex) {
    +166                     Logger.getLogger(CveDB.class
    +167                             .getName()).log(Level.FINEST, null, ex);
    +168                 }
    +169             }
    +170         }
    +171     }
    +172 
    +173     /**
    +174      * Retrieves the directory that the JAR file exists in so that we can ensure
    +175      * we always use a common data directory.
    +176      *
    +177      * @return the data directory for this index.
    +178      * @throws IOException is thrown if an IOException occurs of course...
    +179      */
    +180     public static File getDataDirectory() throws IOException {
    +181         final File path = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
    +182         if (!path.exists()) {
    +183             if (!path.mkdirs()) {
    +184                 throw new IOException("Unable to create NVD CVE Data directory");
    +185             }
    +186         }
    +187         return path;
    +188     }
    +189 
    +190     /**
    +191      * Returns the generated integer primary key for a newly inserted row.
    +192      *
    +193      * @param statement a prepared statement that just executed an insert
    +194      * @return a primary key
    +195      * @throws DatabaseException thrown if there is an exception obtaining the
    +196      * key
    +197      */
    +198     protected int getGeneratedKey(PreparedStatement statement) throws DatabaseException {
    +199         ResultSet rs = null;
    +200         int id = 0;
    +201         try {
    +202             rs = statement.getGeneratedKeys();
    +203             rs.next();
    +204             id = rs.getInt(1);
    +205         } catch (SQLException ex) {
    +206             throw new DatabaseException("Unable to get primary key for inserted row");
    +207         } finally {
    +208             closeResultSet(rs);
    +209         }
    +210         return id;
    +211     }
    +212 
    +213     /**
    +214      * Closes the given statement object ignoring any exceptions that occur.
    +215      *
    +216      * @param statement a Statement object
    +217      */
    +218     public void closeStatement(Statement statement) {
    +219         if (statement != null) {
    +220             try {
    +221                 statement.close();
    +222             } catch (SQLException ex) {
    +223                 Logger.getLogger(CveDB.class
    +224                         .getName()).log(Level.FINEST, statement.toString(), ex);
    +225             }
    +226         }
    +227     }
    +228 
    +229     /**
    +230      * Closes the result set capturing and ignoring any SQLExceptions that
    +231      * occur.
    +232      *
    +233      * @param rs a ResultSet to close
    +234      */
    +235     public void closeResultSet(ResultSet rs) {
    +236         if (rs != null) {
    +237             try {
    +238                 rs.close();
    +239             } catch (SQLException ex) {
    +240                 Logger.getLogger(CveDB.class
    +241                         .getName()).log(Level.FINEST, rs.toString(), ex);
    +242             }
    +243         }
    +244     }
    +245 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html new file mode 100644 index 000000000..3a81522d7 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html @@ -0,0 +1,52 @@ + + + + +CachedWebDataSource xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data;
    +20  
    +21  /**
    +22   * Defines an Index who's data is retrieved from the Internet. This data can be
    +23   * downloaded and the index updated.
    +24   *
    +25   * @author Jeremy Long (jeremy.long@owasp.org)
    +26   */
    +27  public interface CachedWebDataSource {
    +28  
    +29      /**
    +30       * Determines if an update to the current index is needed, if it is the new
    +31       * data is downloaded from the Internet and imported into the current Lucene
    +32       * Index.
    +33       *
    +34       * @throws UpdateException is thrown if there is an exception updating the
    +35       * index.
    +36       */
    +37      void update() throws UpdateException;
    +38  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/NoDataException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/NoDataException.html new file mode 100644 index 000000000..477914a5f --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/NoDataException.html @@ -0,0 +1,83 @@ + + + + +NoDataException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when the data needed does not exist to perform analysis.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class NoDataException extends IOException {
    +29  
    +30      /**
    +31       * The serial version uid.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new NoDataException.
    +37       */
    +38      public NoDataException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new NoDataException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public NoDataException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new NoDataException.
    +53       *
    +54       * @param ex the cause of the exception.
    +55       */
    +56      public NoDataException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new NoDataException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the exception.
    +65       */
    +66      public NoDataException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html new file mode 100644 index 000000000..7f52e9024 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html @@ -0,0 +1,83 @@ + + + + +UpdateException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when an error occurs reading a setting.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class UpdateException extends IOException {
    +29  
    +30      /**
    +31       * The serial version uid.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new UpdateException.
    +37       */
    +38      public UpdateException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new UpdateException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public UpdateException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new UpdateException.
    +53       *
    +54       * @param ex the cause of the update exception.
    +55       */
    +56      public UpdateException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new UpdateException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the update exception.
    +65       */
    +66      public UpdateException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html new file mode 100644 index 000000000..d3349faf4 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html @@ -0,0 +1,81 @@ + + + + +UpdateService xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data;
    +20  
    +21  import java.util.Iterator;
    +22  import java.util.ServiceLoader;
    +23  
    +24  /**
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public final class UpdateService {
    +29  
    +30      /**
    +31       * the singleton reference to the service.
    +32       */
    +33      private static UpdateService service;
    +34      /**
    +35       * the service loader for CachedWebDataSource.
    +36       */
    +37      private final ServiceLoader<CachedWebDataSource> loader;
    +38  
    +39      /**
    +40       * Creates a new instance of UpdateService
    +41       */
    +42      private UpdateService() {
    +43          loader = ServiceLoader.load(CachedWebDataSource.class);
    +44      }
    +45  
    +46      /**
    +47       * Retrieve the singleton instance of UpdateService.
    +48       *
    +49       * @return a singleton UpdateService.
    +50       */
    +51      public static synchronized UpdateService getInstance() {
    +52          if (service == null) {
    +53              service = new UpdateService();
    +54          }
    +55          return service;
    +56      }
    +57  
    +58      /**
    +59       * Returns an Iterator for all instances of the CachedWebDataSource
    +60       * interface.
    +61       *
    +62       * @return an iterator of CachedWebDataSource.
    +63       */
    +64      public Iterator<CachedWebDataSource> getDataSources() {
    +65          return loader.iterator();
    +66      }
    +67  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html new file mode 100644 index 000000000..e862e1305 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html @@ -0,0 +1,342 @@ + + + + +CpeMemoryIndex xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  import java.io.IOException;
    +22  import java.sql.ResultSet;
    +23  import java.sql.SQLException;
    +24  import java.util.HashMap;
    +25  import java.util.Map;
    +26  import java.util.logging.Level;
    +27  import java.util.logging.Logger;
    +28  import org.apache.lucene.analysis.Analyzer;
    +29  import org.apache.lucene.analysis.core.KeywordAnalyzer;
    +30  import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
    +31  import org.apache.lucene.document.Document;
    +32  import org.apache.lucene.document.Field;
    +33  import org.apache.lucene.document.TextField;
    +34  import org.apache.lucene.index.CorruptIndexException;
    +35  import org.apache.lucene.index.DirectoryReader;
    +36  import org.apache.lucene.index.IndexReader;
    +37  import org.apache.lucene.index.IndexWriter;
    +38  import org.apache.lucene.index.IndexWriterConfig;
    +39  import org.apache.lucene.queryparser.classic.ParseException;
    +40  import org.apache.lucene.queryparser.classic.QueryParser;
    +41  import org.apache.lucene.search.IndexSearcher;
    +42  import org.apache.lucene.search.Query;
    +43  import org.apache.lucene.search.TopDocs;
    +44  import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
    +45  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +46  import org.apache.lucene.store.RAMDirectory;
    +47  import org.owasp.dependencycheck.data.lucene.LuceneUtils;
    +48  import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
    +49  
    +50  /**
    +51   * An in memory lucene index that contains the vendor/product combinations from
    +52   * the CPE (application) identifiers within the NVD CVE data.
    +53   *
    +54   * @author Jeremy Long (jeremy.long@owasp.org)
    +55   */
    +56  public final class CpeMemoryIndex {
    +57  
    +58      /**
    +59       * singleton instance.
    +60       */
    +61      private static CpeMemoryIndex instance = new CpeMemoryIndex();
    +62  
    +63      /**
    +64       * private constructor for singleton.
    +65       */
    +66      private CpeMemoryIndex() {
    +67      }
    +68  
    +69      /**
    +70       * Gets the singleton instance of the CpeMemoryIndex.
    +71       *
    +72       * @return the instance of the CpeMemoryIndex
    +73       */
    +74      public static CpeMemoryIndex getInstance() {
    +75          return instance;
    +76      }
    +77      /**
    +78       * The in memory Lucene index.
    +79       */
    +80      private RAMDirectory index;
    +81      /**
    +82       * The Lucene IndexReader.
    +83       */
    +84      private IndexReader indexReader;
    +85      /**
    +86       * The Lucene IndexSearcher.
    +87       */
    +88      private IndexSearcher indexSearcher;
    +89      /**
    +90       * The Lucene Analyzer used for Searching.
    +91       */
    +92      private Analyzer searchingAnalyzer;
    +93      /**
    +94       * The Lucene QueryParser used for Searching.
    +95       */
    +96      private QueryParser queryParser;
    +97      /**
    +98       * The search field analyzer for the product field.
    +99       */
    +100     private SearchFieldAnalyzer productSearchFieldAnalyzer;
    +101     /**
    +102      * The search field analyzer for the vendor field.
    +103      */
    +104     private SearchFieldAnalyzer vendorSearchFieldAnalyzer;
    +105 
    +106     /**
    +107      * Creates and loads data into an in memory index.
    +108      *
    +109      * @param cve the data source to retrieve the cpe data
    +110      * @throws IndexException thrown if there is an error creating the index
    +111      */
    +112     public void open(CveDB cve) throws IndexException {
    +113         if (!openState) {
    +114             index = new RAMDirectory();
    +115             buildIndex(cve);
    +116             try {
    +117                 indexReader = DirectoryReader.open(index);
    +118             } catch (IOException ex) {
    +119                 throw new IndexException(ex);
    +120             }
    +121             indexSearcher = new IndexSearcher(indexReader);
    +122             searchingAnalyzer = createSearchingAnalyzer();
    +123             queryParser = new QueryParser(LuceneUtils.CURRENT_VERSION, Fields.DOCUMENT_KEY, searchingAnalyzer);
    +124             openState = true;
    +125         }
    +126     }
    +127     /**
    +128      * A flag indicating whether or not the index is open.
    +129      */
    +130     private boolean openState = false;
    +131 
    +132     /**
    +133      * returns whether or not the index is open.
    +134      *
    +135      * @return whether or not the index is open
    +136      */
    +137     public boolean isOpen() {
    +138         return openState;
    +139     }
    +140 
    +141     /**
    +142      * Creates the indexing analyzer for the CPE Index.
    +143      *
    +144      * @return the CPE Analyzer.
    +145      */
    +146     @SuppressWarnings("unchecked")
    +147     private Analyzer createIndexingAnalyzer() {
    +148         final Map fieldAnalyzers = new HashMap();
    +149         fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
    +150         return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
    +151     }
    +152 
    +153     /**
    +154      * Creates an Analyzer for searching the CPE Index.
    +155      *
    +156      * @return the CPE Analyzer.
    +157      */
    +158     @SuppressWarnings("unchecked")
    +159     private Analyzer createSearchingAnalyzer() {
    +160         final Map fieldAnalyzers = new HashMap();
    +161         fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
    +162         productSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +163         vendorSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +164         fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);
    +165         fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);
    +166 
    +167         return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
    +168     }
    +169 
    +170     /**
    +171      * Saves a CPE IndexEntry into the Lucene index.
    +172      *
    +173      * @param vendor the vendor to index
    +174      * @param product the product to index
    +175      * @param indexWriter the index writer to write the entry into
    +176      * @throws CorruptIndexException is thrown if the index is corrupt
    +177      * @throws IOException is thrown if an IOException occurs
    +178      */
    +179     public void saveEntry(String vendor, String product, IndexWriter indexWriter) throws CorruptIndexException, IOException {
    +180         final Document doc = new Document();
    +181         final Field v = new TextField(Fields.VENDOR, vendor, Field.Store.YES);
    +182         final Field p = new TextField(Fields.PRODUCT, product, Field.Store.YES);
    +183         doc.add(v);
    +184         doc.add(p);
    +185         indexWriter.addDocument(doc);
    +186     }
    +187 
    +188     /**
    +189      * Closes the CPE Index.
    +190      */
    +191     public void close() {
    +192         if (searchingAnalyzer != null) {
    +193             searchingAnalyzer.close();
    +194             searchingAnalyzer = null;
    +195         }
    +196         if (indexReader != null) {
    +197             try {
    +198                 indexReader.close();
    +199             } catch (IOException ex) {
    +200                 Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINEST, null, ex);
    +201             }
    +202             indexReader = null;
    +203         }
    +204         queryParser = null;
    +205         indexSearcher = null;
    +206         if (index != null) {
    +207             index.close();
    +208             index = null;
    +209         }
    +210         openState = false;
    +211     }
    +212 
    +213     /**
    +214      * Builds the lucene index based off of the data within the CveDB.
    +215      *
    +216      * @param cve the data base containing the CPE data
    +217      * @throws IndexException thrown if there is an issue creating the index
    +218      */
    +219     private void buildIndex(CveDB cve) throws IndexException {
    +220         Analyzer analyzer = null;
    +221         IndexWriter indexWriter = null;
    +222         try {
    +223             analyzer = createIndexingAnalyzer();
    +224             final IndexWriterConfig conf = new IndexWriterConfig(LuceneUtils.CURRENT_VERSION, analyzer);
    +225             indexWriter = new IndexWriter(index, conf);
    +226             final ResultSet rs = cve.getVendorProductList();
    +227             if (rs == null) {
    +228                 throw new IndexException("No data exists");
    +229             }
    +230             try {
    +231                 while (rs.next()) {
    +232                     saveEntry(rs.getString(1), rs.getString(2), indexWriter);
    +233                 }
    +234             } catch (SQLException ex) {
    +235                 Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINE, null, ex);
    +236                 throw new IndexException("Error reading CPE data", ex);
    +237             }
    +238         } catch (CorruptIndexException ex) {
    +239             throw new IndexException("Unable to close an in-memory index", ex);
    +240         } catch (IOException ex) {
    +241             throw new IndexException("Unable to close an in-memory index", ex);
    +242         } finally {
    +243             if (indexWriter != null) {
    +244                 try {
    +245                     try {
    +246                         indexWriter.commit();
    +247                     } finally {
    +248                         indexWriter.close(true);
    +249                     }
    +250                 } catch (CorruptIndexException ex) {
    +251                     throw new IndexException("Unable to close an in-memory index", ex);
    +252                 } catch (IOException ex) {
    +253                     throw new IndexException("Unable to close an in-memory index", ex);
    +254                 }
    +255                 if (analyzer != null) {
    +256                     analyzer.close();
    +257                 }
    +258             }
    +259         }
    +260     }
    +261 
    +262     /**
    +263      * Resets the searching analyzers
    +264      */
    +265     private void resetSearchingAnalyzer() {
    +266         if (productSearchFieldAnalyzer != null) {
    +267             productSearchFieldAnalyzer.clear();
    +268         }
    +269         if (vendorSearchFieldAnalyzer != null) {
    +270             vendorSearchFieldAnalyzer.clear();
    +271         }
    +272     }
    +273 
    +274     /**
    +275      * Searches the index using the given search string.
    +276      *
    +277      * @param searchString the query text
    +278      * @param maxQueryResults the maximum number of documents to return
    +279      * @return the TopDocs found by the search
    +280      * @throws ParseException thrown when the searchString is invalid
    +281      * @throws IOException is thrown if there is an issue with the underlying
    +282      * Index
    +283      */
    +284     public TopDocs search(String searchString, int maxQueryResults) throws ParseException, IOException {
    +285         if (searchString == null || searchString.trim().isEmpty()) {
    +286             throw new ParseException("Query is null or empty");
    +287         }
    +288         final Query query = queryParser.parse(searchString);
    +289         return indexSearcher.search(query, maxQueryResults);
    +290     }
    +291 
    +292     /**
    +293      * Searches the index using the given query.
    +294      *
    +295      * @param query the query used to search the index
    +296      * @param maxQueryResults the max number of results to return
    +297      * @return the TopDocs found be the query
    +298      * @throws CorruptIndexException thrown if the Index is corrupt
    +299      * @throws IOException thrown if there is an IOException
    +300      */
    +301     public TopDocs search(Query query, int maxQueryResults) throws CorruptIndexException, IOException {
    +302         resetSearchingAnalyzer();
    +303         return indexSearcher.search(query, maxQueryResults);
    +304     }
    +305 
    +306     /**
    +307      * Retrieves a document from the Index.
    +308      *
    +309      * @param documentId the id of the document to retrieve
    +310      * @return the Document
    +311      * @throws IOException thrown if there is an IOException
    +312      */
    +313     public Document getDocument(int documentId) throws IOException {
    +314         return indexSearcher.doc(documentId);
    +315     }
    +316 
    +317     /**
    +318      * Returns the number of CPE entries stored in the index.
    +319      *
    +320      * @return the number of CPE entries stored in the index
    +321      */
    +322     public int numDocs() {
    +323         if (indexReader == null) {
    +324             return -1;
    +325         }
    +326         return indexReader.numDocs();
    +327     }
    +328 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html new file mode 100644 index 000000000..41979727c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html @@ -0,0 +1,58 @@ + + + + +Fields xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  /**
    +22   * Fields is a collection of field names used within the Lucene index for CPE
    +23   * entries.
    +24   *
    +25   * @author Jeremy Long (jeremy.long@owasp.org)
    +26   */
    +27  public abstract class Fields {
    +28  
    +29      /**
    +30       * The key for the name document id.
    +31       */
    +32      public static final String DOCUMENT_KEY = "id";
    +33      /**
    +34       * The key for the vendor field.
    +35       */
    +36      public static final String VENDOR = "vendor";
    +37      /**
    +38       * The key for the product field.
    +39       */
    +40      public static final String PRODUCT = "product";
    +41      /**
    +42       * The key for the version field.
    +43       */
    +44  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html new file mode 100644 index 000000000..4a0a8fd56 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html @@ -0,0 +1,203 @@ + + + + +IndexEntry xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  import java.io.Serializable;
    +22  import java.io.UnsupportedEncodingException;
    +23  import java.net.URLDecoder;
    +24  
    +25  /**
    +26   * A CPE entry containing the name, vendor, product, and version.
    +27   *
    +28   * @author Jeremy Long (jeremy.long@owasp.org)
    +29   */
    +30  public class IndexEntry implements Serializable {
    +31  
    +32      /**
    +33       * the serial version uid.
    +34       */
    +35      static final long serialVersionUID = 8011924485946326934L;
    +36      /**
    +37       * The vendor name.
    +38       */
    +39      private String vendor;
    +40      /**
    +41       * The documentId.
    +42       */
    +43      private String documentId;
    +44  
    +45      /**
    +46       * Get the value of documentId.
    +47       *
    +48       * @return the value of documentId
    +49       */
    +50      public String getDocumentId() {
    +51          if (documentId == null && vendor != null && product != null) {
    +52              documentId = vendor + ":" + product;
    +53          }
    +54          return documentId;
    +55      }
    +56  
    +57      /**
    +58       * Set the value of documentId.
    +59       *
    +60       * @param documentId new value of documentId
    +61       */
    +62      public void setDocumentId(String documentId) {
    +63          this.documentId = documentId;
    +64      }
    +65  
    +66      /**
    +67       * Get the value of vendor.
    +68       *
    +69       * @return the value of vendor
    +70       */
    +71      public String getVendor() {
    +72          return vendor;
    +73      }
    +74  
    +75      /**
    +76       * Set the value of vendor.
    +77       *
    +78       * @param vendor new value of vendor
    +79       */
    +80      public void setVendor(String vendor) {
    +81          this.vendor = vendor;
    +82      }
    +83      /**
    +84       * The product name.
    +85       */
    +86      private String product;
    +87  
    +88      /**
    +89       * Get the value of product.
    +90       *
    +91       * @return the value of product
    +92       */
    +93      public String getProduct() {
    +94          return product;
    +95      }
    +96  
    +97      /**
    +98       * Set the value of product.
    +99       *
    +100      * @param product new value of product
    +101      */
    +102     public void setProduct(String product) {
    +103         this.product = product;
    +104     }
    +105     /**
    +106      * The search score.
    +107      */
    +108     private float searchScore;
    +109 
    +110     /**
    +111      * Get the value of searchScore.
    +112      *
    +113      * @return the value of searchScore
    +114      */
    +115     public float getSearchScore() {
    +116         return searchScore;
    +117     }
    +118 
    +119     /**
    +120      * Set the value of searchScore.
    +121      *
    +122      * @param searchScore new value of searchScore
    +123      */
    +124     public void setSearchScore(float searchScore) {
    +125         this.searchScore = searchScore;
    +126     }
    +127 
    +128     /**
    +129      * <p>Parses a name attribute value, from the cpe.xml, into its
    +130      * corresponding parts: vendor, product.</p>
    +131      * <p>Example:</p>
    +132      * <code>nbsp;nbsp;nbsp;cpe:/a:apache:struts:1.1:rc2</code>
    +133      *
    +134      * <p>Results in:</p> <ul> <li>Vendor: apache</li> <li>Product: struts</li>
    +135      * </ul>
    +136      * <p>If it is necessary to parse the CPE into more parts (i.e. to include
    +137      * version and revision) then you should use the
    +138      * {@link org.owasp.dependencycheck.dependency.VulnerableSoftware#parseName VulnerableSoftware.parseName()}.
    +139      *
    +140      * @param cpeName the cpe name
    +141      * @throws UnsupportedEncodingException should never be thrown...
    +142      */
    +143     public void parseName(String cpeName) throws UnsupportedEncodingException {
    +144         if (cpeName != null && cpeName.length() > 7) {
    +145             final String[] data = cpeName.substring(7).split(":");
    +146             if (data.length >= 1) {
    +147                 vendor = URLDecoder.decode(data[0].replace("+", "%2B"), "UTF-8");
    +148                 if (data.length >= 2) {
    +149                     product = URLDecoder.decode(data[1].replace("+", "%2B"), "UTF-8");
    +150                 }
    +151             }
    +152         }
    +153     }
    +154 
    +155     @Override
    +156     public int hashCode() {
    +157         int hash = 7;
    +158         hash = 97 * hash + (this.getDocumentId() != null ? this.getDocumentId().hashCode() : 0);
    +159         return hash;
    +160     }
    +161 
    +162     @Override
    +163     public boolean equals(Object obj) {
    +164         if (obj == null) {
    +165             return false;
    +166         }
    +167         if (getClass() != obj.getClass()) {
    +168             return false;
    +169         }
    +170         final IndexEntry other = (IndexEntry) obj;
    +171         if ((this.vendor == null) ? (other.vendor != null) : !this.vendor.equals(other.vendor)) {
    +172             return false;
    +173         }
    +174         if ((this.product == null) ? (other.product != null) : !this.product.equals(other.product)) {
    +175             return false;
    +176         }
    +177         return true;
    +178     }
    +179 
    +180     /**
    +181      * Standard implementation of toString showing vendor and product.
    +182      *
    +183      * @return the string representation of the object
    +184      */
    +185     @Override
    +186     public String toString() {
    +187         return "IndexEntry{" + "vendor=" + vendor + ", product=" + product + '}';
    +188     }
    +189 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html new file mode 100644 index 000000000..1fb492ecc --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html @@ -0,0 +1,81 @@ + + + + +IndexException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  /**
    +22   * An exception thrown when the there is an issue using the in-memory CPE Index.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class IndexException extends Exception {
    +27  
    +28      /**
    +29       * The serial version UID for serialization.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Creates a new IndexException.
    +35       */
    +36      public IndexException() {
    +37          super();
    +38      }
    +39  
    +40      /**
    +41       * Creates a new IndexException.
    +42       *
    +43       * @param msg a message for the exception.
    +44       */
    +45      public IndexException(String msg) {
    +46          super(msg);
    +47      }
    +48  
    +49      /**
    +50       * Creates a new IndexException.
    +51       *
    +52       * @param ex the cause of the failure.
    +53       */
    +54      public IndexException(Throwable ex) {
    +55          super(ex);
    +56      }
    +57  
    +58      /**
    +59       * Creates a new IndexException.
    +60       *
    +61       * @param msg a message for the exception.
    +62       * @param ex the cause of the failure.
    +63       */
    +64      public IndexException(String msg, Throwable ex) {
    +65          super(msg, ex);
    +66      }
    +67  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html new file mode 100644 index 000000000..583f01bc9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -0,0 +1,33 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cpe + + + + +

    + org.owasp.dependencycheck.data.cpe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html new file mode 100644 index 000000000..a7ef081e7 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -0,0 +1,82 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cpe + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + CpeMemoryIndex +
    + Fields +
    + IndexEntry +
    + IndexException +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html new file mode 100644 index 000000000..36b8612ba --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html @@ -0,0 +1,101 @@ + + + + +CweDB xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cwe;
    +20  
    +21  import java.io.IOException;
    +22  import java.io.InputStream;
    +23  import java.io.ObjectInputStream;
    +24  import java.util.HashMap;
    +25  import java.util.logging.Level;
    +26  import java.util.logging.Logger;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public final class CweDB {
    +33  
    +34      /**
    +35       * Empty private constructor as this is a utility class.
    +36       */
    +37      private CweDB() {
    +38          //empty
    +39      }
    +40      /**
    +41       * A HashMap of the CWE data.
    +42       */
    +43      private static final HashMap<String, String> CWE = loadData();
    +44  
    +45      /**
    +46       * Loads a HashMap containing the CWE data from a resource found in the jar.
    +47       *
    +48       * @return a HashMap of CWE data
    +49       */
    +50      private static HashMap<String, String> loadData() {
    +51          ObjectInputStream oin = null;
    +52          try {
    +53              final String filePath = "data/cwe.hashmap.serialized";
    +54              final InputStream input = CweDB.class.getClassLoader().getResourceAsStream(filePath);
    +55              oin = new ObjectInputStream(input);
    +56              return (HashMap<String, String>) oin.readObject();
    +57          } catch (ClassNotFoundException ex) {
    +58              Logger.getLogger(CweDB.class.getName()).log(Level.WARNING, "Unable to load CWE data. This should not be an issue.");
    +59              Logger.getLogger(CweDB.class.getName()).log(Level.FINE, null, ex);
    +60          } catch (IOException ex) {
    +61              Logger.getLogger(CweDB.class.getName()).log(Level.WARNING, "Unable to load CWE data due to an IO Error. This should not be an issue.");
    +62              Logger.getLogger(CweDB.class.getName()).log(Level.FINE, null, ex);
    +63          } finally {
    +64              if (oin != null) {
    +65                  try {
    +66                      oin.close();
    +67                  } catch (IOException ex) {
    +68                      Logger.getLogger(CweDB.class.getName()).log(Level.FINEST, null, ex);
    +69                  }
    +70              }
    +71          }
    +72          return null;
    +73      }
    +74  
    +75      /**
    +76       * <p>Returns the full CWE name from the CWE ID.</p>
    +77       *
    +78       * @param cweId the CWE ID
    +79       * @return the full name of the CWE
    +80       */
    +81      public static String getCweName(String cweId) {
    +82          if (cweId != null) {
    +83              return CWE.get(cweId);
    +84          }
    +85          return null;
    +86      }
    +87  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html new file mode 100644 index 000000000..828cae139 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html @@ -0,0 +1,70 @@ + + + + +CweHandler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cwe;
    +20  
    +21  import java.util.HashMap;
    +22  import org.xml.sax.Attributes;
    +23  import org.xml.sax.SAXException;
    +24  import org.xml.sax.helpers.DefaultHandler;
    +25  
    +26  /**
    +27   * A SAX Handler that will parse the CWE XML.
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public class CweHandler extends DefaultHandler {
    +32  
    +33      /**
    +34       * a HashMap containing the CWE data.
    +35       */
    +36      private final HashMap<String, String> cwe = new HashMap<String, String>();
    +37  
    +38      /**
    +39       * Returns the HashMap of CWE entries (CWE-ID, Full CWE Name).
    +40       *
    +41       * @return a HashMap of CWE entries <String, String>
    +42       */
    +43      public HashMap<String, String> getCwe() {
    +44          return cwe;
    +45      }
    +46  
    +47      @Override
    +48      public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    +49  
    +50          if ("Weakness".equals(qName) || "Category".equals(qName)) {
    +51              final String id = "CWE-" + attributes.getValue("ID");
    +52              final String name = attributes.getValue("Name");
    +53              cwe.put(id, name);
    +54          }
    +55      }
    +56  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html new file mode 100644 index 000000000..20b0ecf3b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -0,0 +1,27 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cwe + + + + +

    + org.owasp.dependencycheck.data.cwe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html new file mode 100644 index 000000000..740eb5364 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -0,0 +1,72 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.cwe + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.cwe

    + + + + + + + + + + + + + + + +
    Class Summary
    + CweDB +
    + CweHandler +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html new file mode 100644 index 000000000..472d3ec77 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html @@ -0,0 +1,99 @@ + + + + +AbstractTokenizingFilter xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.util.LinkedList;
    +22  import org.apache.lucene.analysis.TokenFilter;
    +23  import org.apache.lucene.analysis.TokenStream;
    +24  import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
    +25  
    +26  /**
    +27   * An abstract tokenizing filter that can be used as the base for a tokenizing
    +28   * filter.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public abstract class AbstractTokenizingFilter extends TokenFilter {
    +33  
    +34      /**
    +35       * The char term attribute.
    +36       */
    +37      private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
    +38  
    +39      /**
    +40       * Gets the CharTermAttribute.
    +41       *
    +42       * @return the CharTermAttribute
    +43       */
    +44      protected CharTermAttribute getTermAtt() {
    +45          return termAtt;
    +46      }
    +47      /**
    +48       * A collection of tokens to add to the stream.
    +49       */
    +50      private final LinkedList<String> tokens;
    +51  
    +52      /**
    +53       * Gets the list of tokens.
    +54       *
    +55       * @return the list of tokens
    +56       */
    +57      protected LinkedList<String> getTokens() {
    +58          return tokens;
    +59      }
    +60  
    +61      /**
    +62       * Constructs a new AbstractTokenizingFilter.
    +63       *
    +64       * @param stream the TokenStream that this filter will process
    +65       */
    +66      public AbstractTokenizingFilter(TokenStream stream) {
    +67          super(stream);
    +68          tokens = new LinkedList<String>();
    +69      }
    +70  
    +71      /**
    +72       * Adds a term, if one exists, from the tokens collection.
    +73       *
    +74       * @return whether or not a new term was added
    +75       */
    +76      protected boolean addTerm() {
    +77          final boolean termAdded = tokens.size() > 0;
    +78          if (termAdded) {
    +79              final String term = tokens.pop();
    +80              clearAttributes();
    +81              termAtt.append(term);
    +82          }
    +83          return termAdded;
    +84      }
    +85  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html new file mode 100644 index 000000000..5603b1892 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html @@ -0,0 +1,78 @@ + + + + +AlphaNumericTokenizer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.Reader;
    +22  import org.apache.lucene.analysis.util.CharTokenizer;
    +23  import org.apache.lucene.util.Version;
    +24  
    +25  /**
    +26   * Tokenizes the input breaking it into tokens when non-alpha/numeric characters
    +27   * are found.
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public class AlphaNumericTokenizer extends CharTokenizer {
    +32  
    +33      /**
    +34       * Constructs a new AlphaNumericTokenizer.
    +35       *
    +36       * @param matchVersion the lucene version
    +37       * @param in the Reader
    +38       */
    +39      public AlphaNumericTokenizer(Version matchVersion, Reader in) {
    +40          super(matchVersion, in);
    +41      }
    +42  
    +43      /**
    +44       * Constructs a new AlphaNumericTokenizer.
    +45       *
    +46       * @param matchVersion the lucene version
    +47       * @param factory the AttributeFactory
    +48       * @param in the Reader
    +49       */
    +50      public AlphaNumericTokenizer(Version matchVersion, AttributeFactory factory, Reader in) {
    +51          super(matchVersion, factory, in);
    +52      }
    +53  
    +54      /**
    +55       * Determines if the char passed in is part of a token.
    +56       *
    +57       * @param c the char being analyzed
    +58       * @return true if the char is a letter or digit, otherwise false
    +59       */
    +60      @Override
    +61      protected boolean isTokenChar(int c) {
    +62          return Character.isLetter(c) || Character.isDigit(c);
    +63      }
    +64  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html new file mode 100644 index 000000000..85f5d5495 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html @@ -0,0 +1,64 @@ + + + + +DependencySimilarity xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import org.apache.lucene.search.similarities.DefaultSimilarity;
    +22  
    +23  /**
    +24   *
    +25   * @author Jeremy Long (jeremy.long@owasp.org)
    +26   */
    +27  public class DependencySimilarity extends DefaultSimilarity {
    +28  
    +29      /**
    +30       * the serial version uid.
    +31       */
    +32      private static final long serialVersionUID = 1L;
    +33  
    +34      /**
    +35       * <p>Override the default idf implementation so that frequency within all
    +36       * document is ignored.</p>
    +37       *
    +38       * See <a
    +39       * href="http://www.lucenetutorial.com/advanced-topics/scoring.html">this
    +40       * article</a> for more details.
    +41       *
    +42       * @param docFreq - the number of documents which contain the term
    +43       * @param numDocs - the total number of documents in the collection
    +44       * @return 1
    +45       */
    +46      @Override
    +47      public float idf(long docFreq, long numDocs) {
    +48          return 1;
    +49      }
    +50  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html new file mode 100644 index 000000000..38f4d3690 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html @@ -0,0 +1,95 @@ + + + + +FieldAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.Reader;
    +22  import org.apache.lucene.analysis.Analyzer;
    +23  import org.apache.lucene.analysis.TokenStream;
    +24  import org.apache.lucene.analysis.Tokenizer;
    +25  import org.apache.lucene.analysis.core.LowerCaseFilter;
    +26  import org.apache.lucene.analysis.core.StopAnalyzer;
    +27  import org.apache.lucene.analysis.core.StopFilter;
    +28  import org.apache.lucene.analysis.miscellaneous.WordDelimiterFilter;
    +29  import org.apache.lucene.util.Version;
    +30  
    +31  /**
    +32   * <p>A Lucene Analyzer that utilizes the WhitespaceTokenizer,
    +33   * WordDelimiterFilter, LowerCaseFilter, and StopFilter. The intended purpose of
    +34   * this Analyzer is to index the CPE fields vendor and product.</p>
    +35   *
    +36   * @author Jeremy Long (jeremy.long@owasp.org)
    +37   */
    +38  public class FieldAnalyzer extends Analyzer {
    +39  
    +40      /**
    +41       * The Lucene Version used.
    +42       */
    +43      private final Version version;
    +44  
    +45      /**
    +46       * Creates a new FieldAnalyzer.
    +47       *
    +48       * @param version the Lucene version
    +49       */
    +50      public FieldAnalyzer(Version version) {
    +51          this.version = version;
    +52      }
    +53  
    +54      /**
    +55       * Creates the TokenStreamComponents
    +56       *
    +57       * @param fieldName the field name being analyzed
    +58       * @param reader the reader containing the input
    +59       * @return the TokenStreamComponents
    +60       */
    +61      @Override
    +62      protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
    +63          final Tokenizer source = new AlphaNumericTokenizer(version, reader);
    +64  
    +65          TokenStream stream = source;
    +66  
    +67          stream = new WordDelimiterFilter(stream,
    +68                  WordDelimiterFilter.CATENATE_WORDS
    +69                  | WordDelimiterFilter.GENERATE_WORD_PARTS
    +70                  | WordDelimiterFilter.GENERATE_NUMBER_PARTS
    +71                  | WordDelimiterFilter.PRESERVE_ORIGINAL
    +72                  | WordDelimiterFilter.SPLIT_ON_CASE_CHANGE
    +73                  | WordDelimiterFilter.SPLIT_ON_NUMERICS
    +74                  | WordDelimiterFilter.STEM_ENGLISH_POSSESSIVE, null);
    +75  
    +76          stream = new LowerCaseFilter(version, stream);
    +77          stream = new StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
    +78  
    +79          return new TokenStreamComponents(source, stream);
    +80      }
    +81  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html new file mode 100644 index 000000000..5dd92a588 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html @@ -0,0 +1,125 @@ + + + + +LuceneUtils xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import org.apache.lucene.util.Version;
    +22  
    +23  /**
    +24   * <p>Lucene utils is a set of utilize written to make constructing Lucene
    +25   * queries simpler.</p>
    +26   *
    +27   * @author Jeremy Long (jeremy.long@owasp.org)
    +28   */
    +29  public final class LuceneUtils {
    +30  
    +31      /**
    +32       * The current version of Lucene being used. Declaring this one place so an
    +33       * upgrade doesn't require hunting through the code base.
    +34       */
    +35      public static final Version CURRENT_VERSION = Version.LUCENE_45;
    +36  
    +37      /**
    +38       * Private constructor as this is a utility class.
    +39       */
    +40      private LuceneUtils() {
    +41      }
    +42  
    +43      /**
    +44       * Appends the text to the supplied StringBuilder escaping Lucene control
    +45       * characters in the process.
    +46       *
    +47       * @param buf a StringBuilder to append the escaped text to
    +48       * @param text the data to be escaped
    +49       */
    +50      @SuppressWarnings("fallthrough")
    +51      @edu.umd.cs.findbugs.annotations.SuppressWarnings(
    +52              value = "SF_SWITCH_NO_DEFAULT",
    +53              justification = "The switch below does have a default.")
    +54      public static void appendEscapedLuceneQuery(StringBuilder buf,
    +55              final CharSequence text) {
    +56  
    +57          if (text == null || buf == null) {
    +58              return;
    +59          }
    +60  
    +61          for (int i = 0; i < text.length(); i++) {
    +62              final char c = text.charAt(i);
    +63              switch (c) {
    +64                  case '+':
    +65                  case '-':
    +66                  case '&':
    +67                  case '|':
    +68                  case '!':
    +69                  case '(':
    +70                  case ')':
    +71                  case '{':
    +72                  case '}':
    +73                  case '[':
    +74                  case ']':
    +75                  case '^':
    +76                  case '"':
    +77                  case '~':
    +78                  case '*':
    +79                  case '?':
    +80                  case ':':
    +81                  case '\\': //it is supposed to fall through here
    +82                      buf.append('\\');
    +83                  default:
    +84                      buf.append(c);
    +85                      break;
    +86              }
    +87          }
    +88      }
    +89  
    +90      /**
    +91       * Escapes the text passed in so that it is treated as data instead of
    +92       * control characters.
    +93       *
    +94       * @param text data to be escaped
    +95       * @return the escaped text.
    +96       */
    +97      public static String escapeLuceneQuery(final CharSequence text) {
    +98  
    +99          if (text == null) {
    +100             return null;
    +101         }
    +102 
    +103         int size = text.length();
    +104         size = size >> 1;
    +105         final StringBuilder buf = new StringBuilder(size);
    +106 
    +107         appendEscapedLuceneQuery(buf, text);
    +108 
    +109         return buf.toString();
    +110     }
    +111 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html new file mode 100644 index 000000000..2afcccd25 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html @@ -0,0 +1,112 @@ + + + + +SearchFieldAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.Reader;
    +22  import org.apache.lucene.analysis.Analyzer;
    +23  import org.apache.lucene.analysis.TokenStream;
    +24  import org.apache.lucene.analysis.Tokenizer;
    +25  import org.apache.lucene.analysis.core.LowerCaseFilter;
    +26  import org.apache.lucene.analysis.core.StopAnalyzer;
    +27  import org.apache.lucene.analysis.core.StopFilter;
    +28  import org.apache.lucene.analysis.miscellaneous.WordDelimiterFilter;
    +29  import org.apache.lucene.util.Version;
    +30  
    +31  /**
    +32   * A Lucene field analyzer used to analyzer queries against the CPE data.
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class SearchFieldAnalyzer extends Analyzer {
    +37  
    +38      /**
    +39       * The Lucene Version used.
    +40       */
    +41      private final Version version;
    +42      /**
    +43       * A local reference to the TokenPairConcatenatingFilter so that we can
    +44       * clear any left over state if this analyzer is re-used.
    +45       */
    +46      private TokenPairConcatenatingFilter concatenatingFilter;
    +47  
    +48      /**
    +49       * Constructs a new SearchFieldAnalyzer.
    +50       *
    +51       * @param version the Lucene version
    +52       */
    +53      public SearchFieldAnalyzer(Version version) {
    +54          this.version = version;
    +55      }
    +56  
    +57      /**
    +58       * Creates a the TokenStreamComponents used to analyze the stream.
    +59       *
    +60       * @param fieldName the field that this lucene analyzer will process
    +61       * @param reader a reader containing the tokens
    +62       * @return the token stream filter chain
    +63       */
    +64      @Override
    +65      protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
    +66          final Tokenizer source = new AlphaNumericTokenizer(version, reader);
    +67  
    +68          TokenStream stream = source;
    +69  
    +70          stream = new WordDelimiterFilter(stream,
    +71                  WordDelimiterFilter.GENERATE_WORD_PARTS
    +72                  | WordDelimiterFilter.GENERATE_NUMBER_PARTS
    +73                  | WordDelimiterFilter.PRESERVE_ORIGINAL
    +74                  | WordDelimiterFilter.SPLIT_ON_CASE_CHANGE
    +75                  | WordDelimiterFilter.SPLIT_ON_NUMERICS
    +76                  | WordDelimiterFilter.STEM_ENGLISH_POSSESSIVE, null);
    +77  
    +78          stream = new LowerCaseFilter(version, stream);
    +79          stream = new UrlTokenizingFilter(stream);
    +80          concatenatingFilter = new TokenPairConcatenatingFilter(stream);
    +81          stream = concatenatingFilter;
    +82          stream = new StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
    +83  
    +84          return new TokenStreamComponents(source, stream);
    +85      }
    +86  
    +87      /**
    +88       * <p>Resets the analyzer and clears any internal state data that may have
    +89       * been left-over from previous uses of the analyzer.</p>
    +90       * <p><b>If this analyzer is re-used this method must be called between
    +91       * uses.</b></p>
    +92       */
    +93      public void clear() {
    +94          if (concatenatingFilter != null) {
    +95              concatenatingFilter.clear();
    +96          }
    +97      }
    +98  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html new file mode 100644 index 000000000..661e5dd3a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html @@ -0,0 +1,88 @@ + + + + +SearchVersionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.Reader;
    +22  import org.apache.lucene.analysis.Analyzer;
    +23  import org.apache.lucene.analysis.TokenStream;
    +24  import org.apache.lucene.analysis.Tokenizer;
    +25  import org.apache.lucene.analysis.core.LowerCaseFilter;
    +26  import org.apache.lucene.analysis.core.WhitespaceTokenizer;
    +27  import org.apache.lucene.util.Version;
    +28  
    +29  /**
    +30   * SearchVersionAnalyzer is a Lucene Analyzer used to analyze version
    +31   * information.
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   * @deprecated version information is no longer stored in lucene
    +35   */
    +36  @Deprecated
    +37  public class SearchVersionAnalyzer extends Analyzer {
    +38      //TODO consider implementing payloads/custom attributes...
    +39      // use custom attributes for major, minor, x, x, x, rcx
    +40      // these can then be used to weight the score for searches on the version.
    +41      // see http://lucene.apache.org/core/3_6_1/api/core/org/apache/lucene/analysis/package-summary.html#package_description
    +42      // look at this article to implement
    +43      // http://www.codewrecks.com/blog/index.php/2012/08/25/index-your-blog-using-tags-and-lucene-net/
    +44  
    +45      /**
    +46       * The Lucene Version used.
    +47       */
    +48      private final Version version;
    +49  
    +50      /**
    +51       * Creates a new SearchVersionAnalyzer.
    +52       *
    +53       * @param version the Lucene version
    +54       */
    +55      public SearchVersionAnalyzer(Version version) {
    +56          this.version = version;
    +57      }
    +58  
    +59      /**
    +60       * Creates the TokenStreamComponents
    +61       *
    +62       * @param fieldName the field name being analyzed
    +63       * @param reader the reader containing the input
    +64       * @return the TokenStreamComponents
    +65       */
    +66      @Override
    +67      protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
    +68          final Tokenizer source = new WhitespaceTokenizer(version, reader);
    +69          TokenStream stream = source;
    +70          stream = new LowerCaseFilter(version, stream);
    +71          stream = new VersionTokenizingFilter(stream);
    +72          return new TokenStreamComponents(source, stream);
    +73      }
    +74  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..620348b41 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html @@ -0,0 +1,139 @@ + + + + +TokenPairConcatenatingFilter xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.IOException;
    +22  import java.util.LinkedList;
    +23  import org.apache.lucene.analysis.TokenFilter;
    +24  import org.apache.lucene.analysis.TokenStream;
    +25  import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
    +26  
    +27  /**
    +28   * <p>Takes a TokenStream and adds additional tokens by concatenating pairs of
    +29   * words.</p>
    +30   * <p><b>Example:</b> "Spring Framework Core" -> "Spring SpringFramework
    +31   * Framework FrameworkCore Core".</p>
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public final class TokenPairConcatenatingFilter extends TokenFilter {
    +36  
    +37      /**
    +38       * The char term attribute.
    +39       */
    +40      private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
    +41      /**
    +42       * The previous word parsed.
    +43       */
    +44      private String previousWord;
    +45      /**
    +46       * A list of words parsed.
    +47       */
    +48      private final LinkedList<String> words;
    +49  
    +50      /**
    +51       * Returns the previous word. This is needed in the test cases.
    +52       *
    +53       * @return te previous word
    +54       */
    +55      protected String getPreviousWord() {
    +56          return previousWord;
    +57      }
    +58  
    +59      /**
    +60       * Returns the words list. This is needed in the test cases.
    +61       *
    +62       * @return the words list
    +63       */
    +64      protected LinkedList<String> getWords() {
    +65          return words;
    +66      }
    +67  
    +68      /**
    +69       * Constructs a new TokenPairConcatenatingFilter.
    +70       *
    +71       * @param stream the TokenStream that this filter will process
    +72       */
    +73      public TokenPairConcatenatingFilter(TokenStream stream) {
    +74          super(stream);
    +75          words = new LinkedList<String>();
    +76      }
    +77  
    +78      /**
    +79       * Increments the underlying TokenStream and sets CharTermAttributes to
    +80       * construct an expanded set of tokens by concatenating tokens with the
    +81       * previous token.
    +82       *
    +83       * @return whether or not we have hit the end of the TokenStream
    +84       * @throws IOException is thrown when an IOException occurs
    +85       */
    +86      @Override
    +87      public boolean incrementToken() throws IOException {
    +88  
    +89          //collect all the terms into the words collection
    +90          while (input.incrementToken()) {
    +91              final String word = new String(termAtt.buffer(), 0, termAtt.length());
    +92              words.add(word);
    +93          }
    +94  
    +95          //if we have a previousTerm - write it out as its own token concatenated
    +96          // with the current word (if one is available).
    +97          if (previousWord != null && words.size() > 0) {
    +98              final String word = words.getFirst();
    +99              clearAttributes();
    +100             termAtt.append(previousWord).append(word);
    +101             previousWord = null;
    +102             return true;
    +103         }
    +104         //if we have words, write it out as a single token
    +105         if (words.size() > 0) {
    +106             final String word = words.removeFirst();
    +107             clearAttributes();
    +108             termAtt.append(word);
    +109             previousWord = word;
    +110             return true;
    +111         }
    +112         return false;
    +113     }
    +114 
    +115     /**
    +116      * <p>Resets the Filter and clears any internal state data that may have
    +117      * been left-over from previous uses of the Filter.</p>
    +118      * <p><b>If this Filter is re-used this method must be called between
    +119      * uses.</b></p>
    +120      */
    +121     public void clear() {
    +122         previousWord = null;
    +123         words.clear();
    +124     }
    +125 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html new file mode 100644 index 000000000..e29f6febc --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html @@ -0,0 +1,99 @@ + + + + +UrlTokenizingFilter xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.IOException;
    +22  import java.net.MalformedURLException;
    +23  import java.util.LinkedList;
    +24  import java.util.List;
    +25  import java.util.logging.Level;
    +26  import java.util.logging.Logger;
    +27  import org.apache.lucene.analysis.TokenStream;
    +28  import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
    +29  import org.owasp.dependencycheck.utils.UrlStringUtils;
    +30  
    +31  /**
    +32   * <p>Takes a TokenStream and splits or adds tokens to correctly index version
    +33   * numbers.</p>
    +34   * <p><b>Example:</b> "3.0.0.RELEASE" -> "3 3.0 3.0.0 RELEASE
    +35   * 3.0.0.RELEASE".</p>
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public final class UrlTokenizingFilter extends AbstractTokenizingFilter {
    +40  
    +41      /**
    +42       * Constructs a new VersionTokenizingFilter.
    +43       *
    +44       * @param stream the TokenStream that this filter will process
    +45       */
    +46      public UrlTokenizingFilter(TokenStream stream) {
    +47          super(stream);
    +48      }
    +49  
    +50      /**
    +51       * Increments the underlying TokenStream and sets CharTermAttributes to
    +52       * construct an expanded set of tokens by concatenating tokens with the
    +53       * previous token.
    +54       *
    +55       * @return whether or not we have hit the end of the TokenStream
    +56       * @throws IOException is thrown when an IOException occurs
    +57       */
    +58      @Override
    +59      public boolean incrementToken() throws IOException {
    +60          final LinkedList<String> tokens = getTokens();
    +61          final CharTermAttribute termAtt = getTermAtt();
    +62          if (tokens.size() == 0 && input.incrementToken()) {
    +63              final String text = new String(termAtt.buffer(), 0, termAtt.length());
    +64              if (UrlStringUtils.containsUrl(text)) {
    +65                  final String[] parts = text.split("\\s");
    +66                  for (String part : parts) {
    +67                      if (UrlStringUtils.isUrl(part)) {
    +68                          try {
    +69                              final List<String> data = UrlStringUtils.extractImportantUrlData(part);
    +70                              tokens.addAll(data);
    +71                          } catch (MalformedURLException ex) {
    +72                              Logger.getLogger(UrlTokenizingFilter.class.getName()).log(Level.INFO, "error parsing " + part, ex);
    +73                              tokens.add(part);
    +74                          }
    +75                      } else {
    +76                          tokens.add(part);
    +77                      }
    +78                  }
    +79              } else {
    +80                  tokens.add(text);
    +81              }
    +82          }
    +83          return addTerm();
    +84      }
    +85  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html new file mode 100644 index 000000000..29268df85 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html @@ -0,0 +1,86 @@ + + + + +VersionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.Reader;
    +22  import org.apache.lucene.analysis.Analyzer;
    +23  import org.apache.lucene.analysis.TokenStream;
    +24  import org.apache.lucene.analysis.Tokenizer;
    +25  import org.apache.lucene.analysis.core.LowerCaseFilter;
    +26  import org.apache.lucene.analysis.core.WhitespaceTokenizer;
    +27  import org.apache.lucene.util.Version;
    +28  
    +29  /**
    +30   * VersionAnalyzer is a Lucene Analyzer used to analyze version information.
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   * @deprecated version information is no longer stored in lucene
    +34   */
    +35  @Deprecated
    +36  public class VersionAnalyzer extends Analyzer {
    +37      //TODO consider implementing payloads/custom attributes...
    +38      // use custom attributes for major, minor, x, x, x, rcx
    +39      // these can then be used to weight the score for searches on the version.
    +40      // see http://lucene.apache.org/core/3_6_1/api/core/org/apache/lucene/analysis/package-summary.html#package_description
    +41      // look at this article to implement
    +42      // http://www.codewrecks.com/blog/index.php/2012/08/25/index-your-blog-using-tags-and-lucene-net/
    +43  
    +44      /**
    +45       * The Lucene Version used.
    +46       */
    +47      private final Version version;
    +48  
    +49      /**
    +50       * Creates a new VersionAnalyzer.
    +51       *
    +52       * @param version the Lucene version
    +53       */
    +54      public VersionAnalyzer(Version version) {
    +55          this.version = version;
    +56      }
    +57  
    +58      /**
    +59       * Creates the TokenStreamComponents
    +60       *
    +61       * @param fieldName the field name being analyzed
    +62       * @param reader the reader containing the input
    +63       * @return the TokenStreamComponents
    +64       */
    +65      @Override
    +66      protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
    +67          final Tokenizer source = new WhitespaceTokenizer(version, reader);
    +68          TokenStream stream = source;
    +69          stream = new LowerCaseFilter(version, stream);
    +70          return new TokenStreamComponents(source, stream);
    +71      }
    +72  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html new file mode 100644 index 000000000..fd0bbc08f --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html @@ -0,0 +1,114 @@ + + + + +VersionTokenizingFilter xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.lucene;
    +20  
    +21  import java.io.IOException;
    +22  import java.util.LinkedList;
    +23  import org.apache.lucene.analysis.TokenStream;
    +24  import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
    +25  
    +26  /**
    +27   * <p>Takes a TokenStream and splits or adds tokens to correctly index version
    +28   * numbers.</p>
    +29   * <p><b>Example:</b> "3.0.0.RELEASE" -> "3 3.0 3.0.0 RELEASE
    +30   * 3.0.0.RELEASE".</p>
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   * @deprecated version information is no longer stored in lucene
    +34   */
    +35  @Deprecated
    +36  public final class VersionTokenizingFilter extends AbstractTokenizingFilter {
    +37  
    +38      /**
    +39       * Constructs a new VersionTokenizingFilter.
    +40       *
    +41       * @param stream the TokenStream that this filter will process
    +42       */
    +43      public VersionTokenizingFilter(TokenStream stream) {
    +44          super(stream);
    +45      }
    +46  
    +47      /**
    +48       * Increments the underlying TokenStream and sets CharTermAttributes to
    +49       * construct an expanded set of tokens by concatenating tokens with the
    +50       * previous token.
    +51       *
    +52       * @return whether or not we have hit the end of the TokenStream
    +53       * @throws IOException is thrown when an IOException occurs
    +54       */
    +55      @Override
    +56      public boolean incrementToken() throws IOException {
    +57          final LinkedList<String> tokens = getTokens();
    +58          final CharTermAttribute termAtt = getTermAtt();
    +59          if (tokens.size() == 0 && input.incrementToken()) {
    +60              final String version = new String(termAtt.buffer(), 0, termAtt.length());
    +61              final String[] toAnalyze = version.split("[_-]");
    +62              //ensure we analyze the whole string as one too
    +63              analyzeVersion(version);
    +64              for (String str : toAnalyze) {
    +65                  analyzeVersion(str);
    +66              }
    +67          }
    +68          return addTerm();
    +69      }
    +70  
    +71      /**
    +72       * <p>Analyzes the version and adds several copies of the version as
    +73       * different tokens. For example, the version 1.2.7 would create the tokens
    +74       * 1 1.2 1.2.7. This is useful in discovering the correct version -
    +75       * sometimes a maintenance or build number will throw off the version
    +76       * identification.</p>
    +77       *
    +78       * <p>expected&nbsp;format:&nbps;major.minor[.maintenance[.build]]</p>
    +79       *
    +80       * @param version the version to analyze
    +81       */
    +82      private void analyzeVersion(String version) {
    +83          //todo should we also be splitting on dash or underscore? we would need
    +84          //  to incorporate the dash or underscore back in...
    +85          final LinkedList<String> tokens = getTokens();
    +86          final String[] versionParts = version.split("\\.");
    +87          String dottedVersion = null;
    +88          for (String current : versionParts) {
    +89              if (!current.matches("^/d+$")) {
    +90                  tokens.add(current);
    +91              }
    +92              if (dottedVersion == null) {
    +93                  dottedVersion = current;
    +94              } else {
    +95                  dottedVersion = dottedVersion + "." + current;
    +96              }
    +97              tokens.add(dottedVersion);
    +98          }
    +99      }
    +100 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html new file mode 100644 index 000000000..0685099bf --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -0,0 +1,54 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.lucene + + + + +

    + org.owasp.dependencycheck.data.lucene +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html new file mode 100644 index 000000000..9afd31c7c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -0,0 +1,117 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.lucene + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.lucene

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractTokenizingFilter +
    + AlphaNumericTokenizer +
    + DependencySimilarity +
    + FieldAnalyzer +
    + LuceneUtils +
    + SearchFieldAnalyzer +
    + SearchVersionAnalyzer +
    + TokenPairConcatenatingFilter +
    + UrlTokenizingFilter +
    + VersionAnalyzer +
    + VersionTokenizingFilter +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html new file mode 100644 index 000000000..50cfc05eb --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html @@ -0,0 +1,66 @@ + + + + +CorruptDatabaseException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  /**
    +22   * An exception used to indicate the db4o database is corrupt. This could be due
    +23   * to invalid data or a complete failure of the db.
    +24   *
    +25   * @author Jeremy Long (jeremy.long@owasp.org)
    +26   */
    +27  class CorruptDatabaseException extends DatabaseException {
    +28  
    +29      /**
    +30       * the serial version uid.
    +31       */
    +32      private static final long serialVersionUID = 1L;
    +33  
    +34      /**
    +35       * Creates an CorruptDatabaseException
    +36       *
    +37       * @param msg the exception message
    +38       */
    +39      public CorruptDatabaseException(String msg) {
    +40          super(msg);
    +41      }
    +42  
    +43      /**
    +44       * Creates an CorruptDatabaseException
    +45       *
    +46       * @param msg the exception message
    +47       * @param ex the cause of the exception
    +48       */
    +49      public CorruptDatabaseException(String msg, Exception ex) {
    +50          super(msg, ex);
    +51      }
    +52  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html new file mode 100644 index 000000000..dfcdbdd1a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html @@ -0,0 +1,564 @@ + + + + +CveDB xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import java.io.UnsupportedEncodingException;
    +22  import java.sql.PreparedStatement;
    +23  import java.sql.ResultSet;
    +24  import java.sql.SQLException;
    +25  import java.sql.Statement;
    +26  import java.util.ArrayList;
    +27  import java.util.HashSet;
    +28  import java.util.List;
    +29  import java.util.Set;
    +30  import java.util.logging.Level;
    +31  import java.util.logging.Logger;
    +32  import org.owasp.dependencycheck.data.BaseDB;
    +33  import org.owasp.dependencycheck.data.cwe.CweDB;
    +34  import org.owasp.dependencycheck.dependency.Reference;
    +35  import org.owasp.dependencycheck.dependency.Vulnerability;
    +36  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +37  import org.owasp.dependencycheck.utils.DependencyVersion;
    +38  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +39  
    +40  /**
    +41   * The database holding information about the NVD CVE data.
    +42   *
    +43   * @author Jeremy Long (jeremy.long@owasp.org)
    +44   */
    +45  public class CveDB extends BaseDB {
    +46  
    +47      //<editor-fold defaultstate="collapsed" desc="Constants to create, maintain, and retrieve data from the CVE Database">
    +48      /**
    +49       * SQL Statement to delete references by vulnerability ID.
    +50       */
    +51      private static final String DELETE_REFERENCE = "DELETE FROM reference WHERE cveid = ?";
    +52      /**
    +53       * SQL Statement to delete software by vulnerability ID.
    +54       */
    +55      private static final String DELETE_SOFTWARE = "DELETE FROM software WHERE cveid = ?";
    +56      /**
    +57       * SQL Statement to delete a vulnerability by CVE.
    +58       */
    +59      private static final String DELETE_VULNERABILITY = "DELETE FROM vulnerability WHERE id = ?";
    +60      /**
    +61       * SQL Statement to cleanup orphan entries. Yes, the db schema could be a
    +62       * little tighter, but what we have works well to keep the data file size
    +63       * down a bit.
    +64       */
    +65      private static final String CLEANUP_ORPHANS = "DELETE FROM CpeEntry WHERE id not in (SELECT CPEEntryId FROM Software); ";
    +66      /**
    +67       * SQL Statement to insert a new reference.
    +68       */
    +69      private static final String INSERT_REFERENCE = "INSERT INTO reference (cveid, name, url, source) VALUES (?, ?, ?, ?)";
    +70      /**
    +71       * SQL Statement to insert a new software.
    +72       */
    +73      private static final String INSERT_SOFTWARE = "INSERT INTO software (cveid, cpeEntryId, previousVersion) VALUES (?, ?, ?)";
    +74      /**
    +75       * SQL Statement to insert a new cpe.
    +76       */
    +77      private static final String INSERT_CPE = "INSERT INTO cpeEntry (cpe, vendor, product) VALUES (?, ?, ?)";
    +78      /**
    +79       * SQL Statement to get a CPEProductID.
    +80       */
    +81      private static final String SELECT_CPE_ID = "SELECT id FROM cpeEntry WHERE cpe = ?";
    +82      /**
    +83       * SQL Statement to insert a new vulnerability.
    +84       */
    +85      private static final String INSERT_VULNERABILITY = "INSERT INTO vulnerability (cve, description, cwe, cvssScore, cvssAccessVector, "
    +86              + "cvssAccessComplexity, cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact) "
    +87              + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    +88      /**
    +89       * SQL Statement to update a vulnerability.
    +90       */
    +91      private static final String UPDATE_VULNERABILITY = "UPDATE vulnerability SET description=?, cwe=?, cvssScore=?, cvssAccessVector=?, "
    +92              + "cvssAccessComplexity=?, cvssAuthentication=?, cvssConfidentialityImpact=?, cvssIntegrityImpact=?, cvssAvailabilityImpact=? "
    +93              + "WHERE id=?";
    +94      /**
    +95       * SQL Statement to find CVE entries based on CPE data.
    +96       */
    +97      private static final String SELECT_CVE_FROM_SOFTWARE = "SELECT cve, cpe, previousVersion "
    +98              + "FROM software INNER JOIN vulnerability ON vulnerability.id = software.cveId "
    +99              + "INNER JOIN cpeEntry ON cpeEntry.id = software.cpeEntryId "
    +100             + "WHERE vendor = ? AND product = ?";
    +101     //unfortunately, the version info is too complicated to do in a select. Need to filter this afterwards
    +102     //        + " AND (version = '-' OR previousVersion IS NOT NULL OR version=?)";
    +103     //
    +104     /**
    +105      * SQL Statement to find the CPE entry based on the vendor and product.
    +106      */
    +107     private static final String SELECT_CPE_ENTRIES = "SELECT cpe FROM cpeEntry WHERE vendor = ? AND product = ?";
    +108     /**
    +109      * SQL Statement to select references by CVEID.
    +110      */
    +111     private static final String SELECT_REFERENCE = "SELECT source, name, url FROM reference WHERE cveid = ?";
    +112     /**
    +113      * SQL Statement to select vendor and product for lucene index.
    +114      */
    +115     private static final String SELECT_VENDOR_PRODUCT_LIST = "SELECT vendor, product FROM cpeEntry GROUP BY vendor, product";
    +116     /**
    +117      * SQL Statement to select software by CVEID.
    +118      */
    +119     private static final String SELECT_SOFTWARE = "SELECT cpe, previousVersion "
    +120             + "FROM software INNER JOIN cpeEntry ON software.cpeEntryId = cpeEntry.id WHERE cveid = ?";
    +121 //    public static final String SELECT_SOFTWARE = "SELECT part, vendor, product, version, revision, previousVersion "
    +122 //            + "FROM software INNER JOIN cpeProduct ON cpeProduct.id = software.cpeProductId LEFT JOIN cpeVersion ON "
    +123 //            + "software.cpeVersionId = cpeVersion.id LEFT JOIN Version ON cpeVersion.versionId = version.id WHERE cveid = ?";
    +124     /**
    +125      * SQL Statement to select a vulnerability by CVEID.
    +126      */
    +127     private static final String SELECT_VULNERABILITY = "SELECT id, description, cwe, cvssScore, cvssAccessVector, cvssAccessComplexity, "
    +128             + "cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact FROM vulnerability WHERE cve = ?";
    +129     /**
    +130      * SQL Statement to select a vulnerability's primary key.
    +131      */
    +132     private static final String SELECT_VULNERABILITY_ID = "SELECT id FROM vulnerability WHERE cve = ?";
    +133     //</editor-fold>
    +134 
    +135     /**
    +136      * Searches the CPE entries in the database and retrieves all entries for a
    +137      * given vendor and product combination. The returned list will include all
    +138      * versions of the product that are registered in the NVD CVE data.
    +139      *
    +140      * @param vendor the identified vendor name of the dependency being analyzed
    +141      * @param product the identified name of the product of the dependency being
    +142      * analyzed
    +143      * @return a set of vulnerable software
    +144      */
    +145     public Set<VulnerableSoftware> getCPEs(String vendor, String product) {
    +146         final Set<VulnerableSoftware> cpe = new HashSet<VulnerableSoftware>();
    +147         ResultSet rs = null;
    +148         PreparedStatement ps = null;
    +149         try {
    +150             ps = getConnection().prepareStatement(SELECT_CPE_ENTRIES);
    +151             ps.setString(1, vendor);
    +152             ps.setString(2, product);
    +153             rs = ps.executeQuery();
    +154 
    +155             while (rs.next()) {
    +156                 final VulnerableSoftware vs = new VulnerableSoftware();
    +157                 vs.setCpe(rs.getString(1));
    +158                 cpe.add(vs);
    +159             }
    +160         } catch (SQLException ex) {
    +161             Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
    +162         } finally {
    +163             closeResultSet(rs);
    +164             closeStatement(ps);
    +165         }
    +166         return cpe;
    +167     }
    +168 
    +169     /**
    +170      * Returns the entire list of vendor/product combinations.
    +171      *
    +172      * @return the entire list of vendor/product combinations.
    +173      */
    +174     public ResultSet getVendorProductList() {
    +175         ResultSet rs = null;
    +176         try {
    +177             final PreparedStatement ps = getConnection().prepareStatement(SELECT_VENDOR_PRODUCT_LIST);
    +178             rs = ps.executeQuery();
    +179         } catch (SQLException ex) {
    +180             Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
    +181         } // can't close the statement in the PS as the resultset is returned, closing PS would close the resultset
    +182         return rs;
    +183     }
    +184 
    +185     /**
    +186      * Retrieves the vulnerabilities associated with the specified CPE.
    +187      *
    +188      * @param cpeStr the CPE name
    +189      * @return a list of Vulnerabilities
    +190      * @throws DatabaseException thrown if there is an exception retrieving data
    +191      */
    +192     public List<Vulnerability> getVulnerabilities(String cpeStr) throws DatabaseException {
    +193         ResultSet rs = null;
    +194         final VulnerableSoftware cpe = new VulnerableSoftware();
    +195         try {
    +196             cpe.parseName(cpeStr);
    +197         } catch (UnsupportedEncodingException ex) {
    +198             Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
    +199         }
    +200         final DependencyVersion detectedVersion = parseDependencyVersion(cpe);
    +201         final List<Vulnerability> vulnerabilities = new ArrayList<Vulnerability>();
    +202 
    +203         PreparedStatement ps;
    +204         final HashSet<String> cveEntries = new HashSet<String>();
    +205         try {
    +206             ps = getConnection().prepareStatement(SELECT_CVE_FROM_SOFTWARE);
    +207             ps.setString(1, cpe.getVendor());
    +208             ps.setString(2, cpe.getProduct());
    +209             rs = ps.executeQuery();
    +210             while (rs.next()) {
    +211                 final String cveId = rs.getString(1);
    +212                 final String cpeId = rs.getString(2);
    +213                 final String previous = rs.getString(3);
    +214                 if (!cveEntries.contains(cveId) && isAffected(cpe.getVendor(), cpe.getProduct(), detectedVersion, cpeId, previous)) {
    +215                     cveEntries.add(cveId);
    +216                 }
    +217             }
    +218             closeResultSet(rs);
    +219             closeStatement(ps);
    +220             for (String cve : cveEntries) {
    +221                 final Vulnerability v = getVulnerability(cve);
    +222                 vulnerabilities.add(v);
    +223             }
    +224 
    +225         } catch (SQLException ex) {
    +226             throw new DatabaseException("Exception retrieving vulnerability for " + cpeStr, ex);
    +227         } finally {
    +228             closeResultSet(rs);
    +229         }
    +230         return vulnerabilities;
    +231     }
    +232 
    +233     /**
    +234      * Gets a vulnerability for the provided CVE.
    +235      *
    +236      * @param cve the CVE to lookup
    +237      * @return a vulnerability object
    +238      * @throws DatabaseException if an exception occurs
    +239      */
    +240     private Vulnerability getVulnerability(String cve) throws DatabaseException {
    +241         PreparedStatement psV = null;
    +242         PreparedStatement psR = null;
    +243         PreparedStatement psS = null;
    +244         ResultSet rsV = null;
    +245         ResultSet rsR = null;
    +246         ResultSet rsS = null;
    +247         Vulnerability vuln = null;
    +248         try {
    +249             psV = getConnection().prepareStatement(SELECT_VULNERABILITY);
    +250             psV.setString(1, cve);
    +251             rsV = psV.executeQuery();
    +252             if (rsV.next()) {
    +253                 vuln = new Vulnerability();
    +254                 vuln.setName(cve);
    +255                 vuln.setDescription(rsV.getString(2));
    +256                 String cwe = rsV.getString(3);
    +257                 if (cwe != null) {
    +258                     final String name = CweDB.getCweName(cwe);
    +259                     if (name != null) {
    +260                         cwe += " " + name;
    +261                     }
    +262                 }
    +263                 final int cveId = rsV.getInt(1);
    +264                 vuln.setCwe(cwe);
    +265                 vuln.setCvssScore(rsV.getFloat(4));
    +266                 vuln.setCvssAccessVector(rsV.getString(5));
    +267                 vuln.setCvssAccessComplexity(rsV.getString(6));
    +268                 vuln.setCvssAuthentication(rsV.getString(7));
    +269                 vuln.setCvssConfidentialityImpact(rsV.getString(8));
    +270                 vuln.setCvssIntegrityImpact(rsV.getString(9));
    +271                 vuln.setCvssAvailabilityImpact(rsV.getString(10));
    +272 
    +273                 psR = getConnection().prepareStatement(SELECT_REFERENCE);
    +274                 psR.setInt(1, cveId);
    +275                 rsR = psR.executeQuery();
    +276                 while (rsR.next()) {
    +277                     vuln.addReference(rsR.getString(1), rsR.getString(2), rsR.getString(3));
    +278                 }
    +279                 psS = getConnection().prepareStatement(SELECT_SOFTWARE);
    +280                 psS.setInt(1, cveId);
    +281                 rsS = psS.executeQuery();
    +282                 while (rsS.next()) {
    +283                     final String cpe = rsS.getString(1);
    +284                     final String prevVersion = rsS.getString(2);
    +285                     if (prevVersion == null) {
    +286                         vuln.addVulnerableSoftware(cpe);
    +287                     } else {
    +288                         vuln.addVulnerableSoftware(cpe, prevVersion);
    +289                     }
    +290                 }
    +291             }
    +292         } catch (SQLException ex) {
    +293             throw new DatabaseException("Error retrieving " + cve, ex);
    +294         } finally {
    +295             closeResultSet(rsV);
    +296             closeResultSet(rsR);
    +297             closeResultSet(rsS);
    +298             closeStatement(psV);
    +299             closeStatement(psR);
    +300             closeStatement(psS);
    +301         }
    +302         return vuln;
    +303     }
    +304 
    +305     /**
    +306      * Updates the vulnerability within the database. If the vulnerability does
    +307      * not exist it will be added.
    +308      *
    +309      * @param vuln the vulnerability to add to the database
    +310      * @throws DatabaseException is thrown if the database
    +311      */
    +312     public void updateVulnerability(Vulnerability vuln) throws DatabaseException {
    +313         PreparedStatement selectVulnerabilityId = null;
    +314         PreparedStatement deleteVulnerability = null;
    +315         PreparedStatement deleteReferences = null;
    +316         PreparedStatement deleteSoftware = null;
    +317         PreparedStatement updateVulnerability = null;
    +318         PreparedStatement insertVulnerability = null;
    +319         PreparedStatement insertReference = null;
    +320         PreparedStatement selectCpeId = null;
    +321         PreparedStatement insertCpe = null;
    +322         PreparedStatement insertSoftware = null;
    +323 
    +324         try {
    +325             selectVulnerabilityId = getConnection().prepareStatement(SELECT_VULNERABILITY_ID);
    +326             deleteVulnerability = getConnection().prepareStatement(DELETE_VULNERABILITY);
    +327             deleteReferences = getConnection().prepareStatement(DELETE_REFERENCE);
    +328             deleteSoftware = getConnection().prepareStatement(DELETE_SOFTWARE);
    +329             updateVulnerability = getConnection().prepareStatement(UPDATE_VULNERABILITY);
    +330             insertVulnerability = getConnection().prepareStatement(INSERT_VULNERABILITY, Statement.RETURN_GENERATED_KEYS);
    +331             insertReference = getConnection().prepareStatement(INSERT_REFERENCE);
    +332             selectCpeId = getConnection().prepareStatement(SELECT_CPE_ID);
    +333             insertCpe = getConnection().prepareStatement(INSERT_CPE, Statement.RETURN_GENERATED_KEYS);
    +334             insertSoftware = getConnection().prepareStatement(INSERT_SOFTWARE);
    +335             int vulnerabilityId = 0;
    +336             selectVulnerabilityId.setString(1, vuln.getName());
    +337             ResultSet rs = selectVulnerabilityId.executeQuery();
    +338             if (rs.next()) {
    +339                 vulnerabilityId = rs.getInt(1);
    +340                 // first delete any existing vulnerability info. We don't know what was updated. yes, slower but atm easier.
    +341                 deleteReferences.setInt(1, vulnerabilityId);
    +342                 deleteReferences.execute();
    +343                 deleteSoftware.setInt(1, vulnerabilityId);
    +344                 deleteSoftware.execute();
    +345             }
    +346             closeResultSet(rs);
    +347             rs = null;
    +348             if (vulnerabilityId != 0) {
    +349                 if (vuln.getDescription().contains("** REJECT **")) {
    +350                     deleteVulnerability.setInt(1, vulnerabilityId);
    +351                     deleteVulnerability.executeUpdate();
    +352                 } else {
    +353                     updateVulnerability.setString(1, vuln.getDescription());
    +354                     updateVulnerability.setString(2, vuln.getCwe());
    +355                     updateVulnerability.setFloat(3, vuln.getCvssScore());
    +356                     updateVulnerability.setString(4, vuln.getCvssAccessVector());
    +357                     updateVulnerability.setString(5, vuln.getCvssAccessComplexity());
    +358                     updateVulnerability.setString(6, vuln.getCvssAuthentication());
    +359                     updateVulnerability.setString(7, vuln.getCvssConfidentialityImpact());
    +360                     updateVulnerability.setString(8, vuln.getCvssIntegrityImpact());
    +361                     updateVulnerability.setString(9, vuln.getCvssAvailabilityImpact());
    +362                     updateVulnerability.setInt(10, vulnerabilityId);
    +363                     updateVulnerability.executeUpdate();
    +364                 }
    +365             } else {
    +366                 insertVulnerability.setString(1, vuln.getName());
    +367                 insertVulnerability.setString(2, vuln.getDescription());
    +368                 insertVulnerability.setString(3, vuln.getCwe());
    +369                 insertVulnerability.setFloat(4, vuln.getCvssScore());
    +370                 insertVulnerability.setString(5, vuln.getCvssAccessVector());
    +371                 insertVulnerability.setString(6, vuln.getCvssAccessComplexity());
    +372                 insertVulnerability.setString(7, vuln.getCvssAuthentication());
    +373                 insertVulnerability.setString(8, vuln.getCvssConfidentialityImpact());
    +374                 insertVulnerability.setString(9, vuln.getCvssIntegrityImpact());
    +375                 insertVulnerability.setString(10, vuln.getCvssAvailabilityImpact());
    +376                 insertVulnerability.execute();
    +377                 try {
    +378                     rs = insertVulnerability.getGeneratedKeys();
    +379                     rs.next();
    +380                     vulnerabilityId = rs.getInt(1);
    +381                 } catch (SQLException ex) {
    +382                     final String msg = String.format("Unable to retrieve id for new vulnerability for '%s'", vuln.getName());
    +383                     throw new DatabaseException(msg, ex);
    +384                 } finally {
    +385                     closeResultSet(rs);
    +386                     rs = null;
    +387                 }
    +388             }
    +389             insertReference.setInt(1, vulnerabilityId);
    +390             for (Reference r : vuln.getReferences()) {
    +391                 insertReference.setString(2, r.getName());
    +392                 insertReference.setString(3, r.getUrl());
    +393                 insertReference.setString(4, r.getSource());
    +394                 insertReference.execute();
    +395             }
    +396             for (VulnerableSoftware s : vuln.getVulnerableSoftware()) {
    +397                 int cpeProductId = 0;
    +398                 selectCpeId.setString(1, s.getName());
    +399                 try {
    +400                     rs = selectCpeId.executeQuery();
    +401                     if (rs.next()) {
    +402                         cpeProductId = rs.getInt(1);
    +403                     }
    +404                 } catch (SQLException ex) {
    +405                     throw new DatabaseException("Unable to get primary key for new cpe: " + s.getName(), ex);
    +406                 } finally {
    +407                     closeResultSet(rs);
    +408                     rs = null;
    +409                 }
    +410 
    +411                 if (cpeProductId == 0) {
    +412                     insertCpe.setString(1, s.getName());
    +413                     insertCpe.setString(2, s.getVendor());
    +414                     insertCpe.setString(3, s.getProduct());
    +415                     insertCpe.executeUpdate();
    +416                     cpeProductId = getGeneratedKey(insertCpe);
    +417                 }
    +418                 if (cpeProductId == 0) {
    +419                     throw new DatabaseException("Unable to retrieve cpeProductId - no data returned");
    +420                 }
    +421 
    +422                 insertSoftware.setInt(1, vulnerabilityId);
    +423                 insertSoftware.setInt(2, cpeProductId);
    +424                 if (s.getPreviousVersion() == null) {
    +425                     insertSoftware.setNull(3, java.sql.Types.VARCHAR);
    +426                 } else {
    +427                     insertSoftware.setString(3, s.getPreviousVersion());
    +428                 }
    +429                 insertSoftware.execute();
    +430             }
    +431 
    +432         } catch (SQLException ex) {
    +433             final String msg = String.format("Error updating '%s'", vuln.getName());
    +434             Logger.getLogger(CveDB.class.getName()).log(Level.FINE, null, ex);
    +435             throw new DatabaseException(msg, ex);
    +436         } finally {
    +437             closeStatement(selectVulnerabilityId);
    +438             closeStatement(deleteReferences);
    +439             closeStatement(deleteSoftware);
    +440             closeStatement(updateVulnerability);
    +441             closeStatement(deleteVulnerability);
    +442             closeStatement(insertVulnerability);
    +443             closeStatement(insertReference);
    +444             closeStatement(selectCpeId);
    +445             closeStatement(insertCpe);
    +446             closeStatement(insertSoftware);
    +447         }
    +448     }
    +449 
    +450     /**
    +451      * It is possible that orphaned rows may be generated during database
    +452      * updates. This should be called after all updates have been completed to
    +453      * ensure orphan entries are removed.
    +454      */
    +455     public void cleanupDatabase() {
    +456         PreparedStatement ps = null;
    +457         try {
    +458             ps = getConnection().prepareStatement(CLEANUP_ORPHANS);
    +459             if (ps != null) {
    +460                 ps.executeUpdate();
    +461             }
    +462         } catch (SQLException ex) {
    +463             Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
    +464         } finally {
    +465             closeStatement(ps);
    +466         }
    +467     }
    +468 
    +469     /**
    +470      * Determines if the given identifiedVersion is affected by the given cpeId
    +471      * and previous version flag. A non-null, non-empty string passed to the
    +472      * previous version argument indicates that all previous versions are
    +473      * affected.
    +474      *
    +475      * @param vendor the vendor of the dependency being analyzed
    +476      * @param product the product name of the dependency being analyzed
    +477      * @param identifiedVersion the identified version of the dependency being
    +478      * analyzed
    +479      * @param cpeId the cpe identifier of software that has a known
    +480      * vulnerability
    +481      * @param previous a flag indicating if previous versions of the product are
    +482      * vulnerable
    +483      * @return true if the identified version is affected, otherwise false
    +484      */
    +485     private boolean isAffected(String vendor, String product, DependencyVersion identifiedVersion, String cpeId, String previous) {
    +486         boolean affected = false;
    +487         final boolean isStruts = "apache".equals(vendor) && "struts".equals(product);
    +488         final DependencyVersion v = parseDependencyVersion(cpeId);
    +489         final boolean prevAffected = previous == null ? false : !previous.isEmpty();
    +490         if (identifiedVersion == null || "-".equals(identifiedVersion.toString())) {
    +491             if (v == null || "-".equals(v.toString())) {
    +492                 affected = true;
    +493             }
    +494         } else if (identifiedVersion.equals(v) || (prevAffected && identifiedVersion.compareTo(v) < 0)) {
    +495             if (isStruts) { //struts 2 vulns don't affect struts 1
    +496                 if (identifiedVersion.getVersionParts().get(0).equals(v.getVersionParts().get(0))) {
    +497                     affected = true;
    +498                 }
    +499             } else {
    +500                 affected = true;
    +501             }
    +502         }
    +503         /*
    +504          * TODO consider utilizing the matchThreeVersion method to get additional results. However, this
    +505          *      might also introduce false positives.
    +506          */
    +507         return affected;
    +508     }
    +509 
    +510     /**
    +511      * Parses the version (including revision) from a CPE identifier. If no
    +512      * version is identified then a '-' is returned.
    +513      *
    +514      * @param cpeStr a cpe identifier
    +515      * @return a dependency version
    +516      */
    +517     private DependencyVersion parseDependencyVersion(String cpeStr) {
    +518         final VulnerableSoftware cpe = new VulnerableSoftware();
    +519         try {
    +520             cpe.parseName(cpeStr);
    +521         } catch (UnsupportedEncodingException ex) {
    +522             //never going to happen.
    +523             Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
    +524         }
    +525         return parseDependencyVersion(cpe);
    +526     }
    +527 
    +528     /**
    +529      * Takes a CPE and parses out the version number. If no version is
    +530      * identified then a '-' is returned.
    +531      *
    +532      * @param cpe a cpe object
    +533      * @return a dependency version
    +534      */
    +535     private DependencyVersion parseDependencyVersion(VulnerableSoftware cpe) {
    +536         DependencyVersion cpeVersion;
    +537         if (cpe.getVersion() != null && cpe.getVersion().length() > 0) {
    +538             String versionText;
    +539             if (cpe.getRevision() != null && cpe.getRevision().length() > 0) {
    +540                 versionText = String.format("%s.%s", cpe.getVersion(), cpe.getRevision());
    +541             } else {
    +542                 versionText = cpe.getVersion();
    +543             }
    +544             cpeVersion = DependencyVersionUtil.parseVersion(versionText);
    +545         } else {
    +546             cpeVersion = new DependencyVersion("-");
    +547         }
    +548         return cpeVersion;
    +549     }
    +550 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html new file mode 100644 index 000000000..d0e7448bb --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html @@ -0,0 +1,74 @@ + + + + +DatabaseException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  /**
    +22   * An exception thrown if an operation against the database fails.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class DatabaseException extends Exception {
    +27  
    +28      /**
    +29       * the serial version uid.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Creates an DatabaseException.
    +35       *
    +36       * @param msg the exception message
    +37       */
    +38      public DatabaseException(String msg) {
    +39          super(msg);
    +40      }
    +41  
    +42      /**
    +43       * Creates an DatabaseException.
    +44       *
    +45       * @param ex the cause of the exception
    +46       */
    +47      public DatabaseException(Throwable ex) {
    +48          super(ex);
    +49      }
    +50  
    +51      /**
    +52       * Creates an DatabaseException.
    +53       *
    +54       * @param msg the exception message
    +55       * @param ex the cause of the exception
    +56       */
    +57      public DatabaseException(String msg, Throwable ex) {
    +58          super(msg, ex);
    +59      }
    +60  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html new file mode 100644 index 000000000..7e2944d0f --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html @@ -0,0 +1,66 @@ + + + + +InvalidDataException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  /**
    +22   * An InvalidDataDataException is a generic exception used when trying to load
    +23   * the nvd cve meta data.
    +24   *
    +25   * @author Jeremy Long (jeremy.long@owasp.org)
    +26   */
    +27  public class InvalidDataException extends Exception {
    +28  
    +29      /**
    +30       * the serial version uid.
    +31       */
    +32      private static final long serialVersionUID = 1L;
    +33  
    +34      /**
    +35       * Creates an InvalidDataException.
    +36       *
    +37       * @param msg the exception message
    +38       */
    +39      public InvalidDataException(String msg) {
    +40          super(msg);
    +41      }
    +42  
    +43      /**
    +44       * Creates an InvalidDataException.
    +45       *
    +46       * @param msg the exception message
    +47       * @param ex the cause of the exception
    +48       */
    +49      public InvalidDataException(String msg, Exception ex) {
    +50          super(msg, ex);
    +51      }
    +52  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html new file mode 100644 index 000000000..abac7b725 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html @@ -0,0 +1,261 @@ + + + + +NvdCve12Handler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.HashMap;
    +23  import java.util.List;
    +24  import java.util.Map;
    +25  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +26  import org.xml.sax.Attributes;
    +27  import org.xml.sax.SAXException;
    +28  import org.xml.sax.SAXNotSupportedException;
    +29  import org.xml.sax.helpers.DefaultHandler;
    +30  
    +31  /**
    +32   * A SAX Handler that will parse the NVD CVE XML (schema version 1.2). This
    +33   * parses the xml and retrieves a listing of CPEs that have previous versions
    +34   * specified. The previous version information is not in the 2.0 version of the
    +35   * schema and is useful to ensure accurate identification (or at least
    +36   * complete).
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public class NvdCve12Handler extends DefaultHandler {
    +41  
    +42      /**
    +43       * the supported schema version.
    +44       */
    +45      private static final String CURRENT_SCHEMA_VERSION = "1.2";
    +46      /**
    +47       * the current vulnerability.
    +48       */
    +49      private String vulnerability;
    +50      /**
    +51       * a list of vulnerable software.
    +52       */
    +53      private List<VulnerableSoftware> software;
    +54      /**
    +55       * the vendor name.
    +56       */
    +57      private String vendor;
    +58      /**
    +59       * the product name.
    +60       */
    +61      private String product;
    +62      /**
    +63       * if the nvd cve should be skipped because it was rejected.
    +64       */
    +65      private boolean skip = false;
    +66      /**
    +67       * flag indicating if there is a previous version.
    +68       */
    +69      private boolean hasPreviousVersion = false;
    +70      /**
    +71       * The current element.
    +72       */
    +73      private final Element current = new Element();
    +74      /**
    +75       * a map of vulnerabilities.
    +76       */
    +77      private Map<String, List<VulnerableSoftware>> vulnerabilities;
    +78  
    +79      /**
    +80       * Get the value of vulnerabilities.
    +81       *
    +82       * @return the value of vulnerabilities
    +83       */
    +84      public Map<String, List<VulnerableSoftware>> getVulnerabilities() {
    +85          return vulnerabilities;
    +86      }
    +87  
    +88      @Override
    +89      public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    +90          current.setNode(qName);
    +91          if (current.isEntryNode()) {
    +92              vendor = null;
    +93              product = null;
    +94              hasPreviousVersion = false;
    +95              final String reject = attributes.getValue("reject");
    +96              skip = "1".equals(reject);
    +97              if (!skip) {
    +98                  vulnerability = attributes.getValue("name");
    +99                  software = new ArrayList<VulnerableSoftware>();
    +100             } else {
    +101                 vulnerability = null;
    +102                 software = null;
    +103             }
    +104         } else if (!skip && current.isProdNode()) {
    +105 
    +106             vendor = attributes.getValue("vendor");
    +107             product = attributes.getValue("name");
    +108         } else if (!skip && current.isVersNode()) {
    +109             final String prev = attributes.getValue("prev");
    +110             if (prev != null && "1".equals(prev)) {
    +111                 hasPreviousVersion = true;
    +112                 final String edition = attributes.getValue("edition");
    +113                 final String num = attributes.getValue("num");
    +114 
    +115                 /*yes yes, this may not actually be an "a" - it could be an OS, etc. but for our
    +116                  purposes this is good enough as we won't use this if we don't find a corresponding "a"
    +117                  in the nvd cve 2.0. */
    +118                 String cpe = "cpe:/a:" + vendor + ":" + product;
    +119                 if (num != null) {
    +120                     cpe += ":" + num;
    +121                 }
    +122                 if (edition != null) {
    +123                     cpe += ":" + edition;
    +124                 }
    +125                 final VulnerableSoftware vs = new VulnerableSoftware();
    +126                 vs.setCpe(cpe);
    +127                 vs.setPreviousVersion(prev);
    +128                 software.add(vs);
    +129             }
    +130         } else if (current.isNVDNode()) {
    +131             final String nvdVer = attributes.getValue("nvd_xml_version");
    +132             if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
    +133                 throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
    +134             }
    +135             vulnerabilities = new HashMap<String, List<VulnerableSoftware>>();
    +136         }
    +137     }
    +138 
    +139     @Override
    +140     public void endElement(String uri, String localName, String qName) throws SAXException {
    +141         current.setNode(qName);
    +142         if (current.isEntryNode()) {
    +143             if (!skip && hasPreviousVersion) {
    +144                 vulnerabilities.put(vulnerability, software);
    +145             }
    +146             vulnerability = null;
    +147             software = null;
    +148         }
    +149     }
    +150 
    +151     // <editor-fold defaultstate="collapsed" desc="The Element Class that maintains state information about the current node">
    +152     /**
    +153      * A simple class to maintain information about the current element while
    +154      * parsing the NVD CVE XML.
    +155      */
    +156     protected static class Element {
    +157 
    +158         /**
    +159          * A node type in the NVD CVE Schema 1.2.
    +160          */
    +161         public static final String NVD = "nvd";
    +162         /**
    +163          * A node type in the NVD CVE Schema 1.2.
    +164          */
    +165         public static final String ENTRY = "entry";
    +166         /**
    +167          * A node type in the NVD CVE Schema 1.2.
    +168          */
    +169         public static final String VULN_SOFTWARE = "vuln_soft";
    +170         /**
    +171          * A node type in the NVD CVE Schema 1.2.
    +172          */
    +173         public static final String PROD = "prod";
    +174         /**
    +175          * A node type in the NVD CVE Schema 1.2.
    +176          */
    +177         public static final String VERS = "vers";
    +178         /**
    +179          * The name of the current node.
    +180          */
    +181         private String node;
    +182 
    +183         /**
    +184          * Gets the value of node.
    +185          *
    +186          * @return the value of node
    +187          */
    +188         public String getNode() {
    +189             return this.node;
    +190         }
    +191 
    +192         /**
    +193          * Sets the value of node.
    +194          *
    +195          * @param node new value of node
    +196          */
    +197         public void setNode(String node) {
    +198             this.node = node;
    +199         }
    +200 
    +201         /**
    +202          * Checks if the handler is at the NVD node.
    +203          *
    +204          * @return true or false
    +205          */
    +206         public boolean isNVDNode() {
    +207             return NVD.equals(node);
    +208         }
    +209 
    +210         /**
    +211          * Checks if the handler is at the ENTRY node.
    +212          *
    +213          * @return true or false
    +214          */
    +215         public boolean isEntryNode() {
    +216             return ENTRY.equals(node);
    +217         }
    +218 
    +219         /**
    +220          * Checks if the handler is at the VULN_SOFTWARE node.
    +221          *
    +222          * @return true or false
    +223          */
    +224         public boolean isVulnSoftwareNode() {
    +225             return VULN_SOFTWARE.equals(node);
    +226         }
    +227 
    +228         /**
    +229          * Checks if the handler is at the PROD node.
    +230          *
    +231          * @return true or false
    +232          */
    +233         public boolean isProdNode() {
    +234             return PROD.equals(node);
    +235         }
    +236 
    +237         /**
    +238          * Checks if the handler is at the VERS node.
    +239          *
    +240          * @return true or false
    +241          */
    +242         public boolean isVersNode() {
    +243             return VERS.equals(node);
    +244         }
    +245     }
    +246     // </editor-fold>
    +247 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html new file mode 100644 index 000000000..32d04081a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html @@ -0,0 +1,508 @@ + + + + +NvdCve20Handler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve;
    +20  
    +21  import java.io.IOException;
    +22  import java.util.List;
    +23  import java.util.Map;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.apache.lucene.index.CorruptIndexException;
    +27  import org.owasp.dependencycheck.dependency.Reference;
    +28  import org.owasp.dependencycheck.dependency.Vulnerability;
    +29  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +30  import org.xml.sax.Attributes;
    +31  import org.xml.sax.SAXException;
    +32  import org.xml.sax.SAXNotSupportedException;
    +33  import org.xml.sax.helpers.DefaultHandler;
    +34  
    +35  /**
    +36   * A SAX Handler that will parse the NVD CVE XML (schema version 2.0).
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public class NvdCve20Handler extends DefaultHandler {
    +41  
    +42      /**
    +43       * the current supported schema version.
    +44       */
    +45      private static final String CURRENT_SCHEMA_VERSION = "2.0";
    +46      /**
    +47       * the current element.
    +48       */
    +49      private final Element current = new Element();
    +50      /**
    +51       * the text of the node.
    +52       */
    +53      private StringBuilder nodeText;
    +54      /**
    +55       * the vulnerability.
    +56       */
    +57      private Vulnerability vulnerability;
    +58      /**
    +59       * a reference for the cve.
    +60       */
    +61      private Reference reference;
    +62      /**
    +63       * flag indicating whether the application has a cpe.
    +64       */
    +65      private boolean hasApplicationCpe = false;
    +66      /**
    +67       * The total number of entries parsed.
    +68       */
    +69      private int totalNumberOfEntries;
    +70  
    +71      /**
    +72       * Get the value of totalNumberOfEntries.
    +73       *
    +74       * @return the value of totalNumberOfEntries
    +75       */
    +76      public int getTotalNumberOfEntries() {
    +77          return totalNumberOfEntries;
    +78      }
    +79      /**
    +80       * The total number of application entries parsed.
    +81       */
    +82      private int totalNumberOfApplicationEntries;
    +83  
    +84      /**
    +85       * Get the value of totalNumberOfApplicationEntries.
    +86       *
    +87       * @return the value of totalNumberOfApplicationEntries
    +88       */
    +89      public int getTotalNumberOfApplicationEntries() {
    +90          return totalNumberOfApplicationEntries;
    +91      }
    +92  
    +93      @Override
    +94      public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    +95          current.setNode(qName);
    +96          if (current.isEntryNode()) {
    +97              hasApplicationCpe = false;
    +98              vulnerability = new Vulnerability();
    +99              vulnerability.setName(attributes.getValue("id"));
    +100         } else if (current.isVulnProductNode()) {
    +101             nodeText = new StringBuilder(100);
    +102         } else if (current.isVulnReferencesNode()) {
    +103             final String lang = attributes.getValue("xml:lang");
    +104             if ("en".equals(lang)) {
    +105                 reference = new Reference();
    +106             } else {
    +107                 reference = null;
    +108             }
    +109         } else if (reference != null && current.isVulnReferenceNode()) {
    +110             reference.setUrl(attributes.getValue("href"));
    +111             nodeText = new StringBuilder(130);
    +112         } else if (reference != null && current.isVulnSourceNode()) {
    +113             nodeText = new StringBuilder(30);
    +114         } else if (current.isVulnSummaryNode()) {
    +115             nodeText = new StringBuilder(500);
    +116         } else if (current.isNVDNode()) {
    +117             final String nvdVer = attributes.getValue("nvd_xml_version");
    +118             if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
    +119                 throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
    +120             }
    +121         } else if (current.isVulnCWENode()) {
    +122             vulnerability.setCwe(attributes.getValue("id"));
    +123         } else if (current.isCVSSScoreNode()) {
    +124             nodeText = new StringBuilder(5);
    +125         } else if (current.isCVSSAccessVectorNode()) {
    +126             nodeText = new StringBuilder(20);
    +127         } else if (current.isCVSSAccessComplexityNode()) {
    +128             nodeText = new StringBuilder(20);
    +129         } else if (current.isCVSSAuthenticationNode()) {
    +130             nodeText = new StringBuilder(20);
    +131         } else if (current.isCVSSAvailabilityImpactNode()) {
    +132             nodeText = new StringBuilder(20);
    +133         } else if (current.isCVSSConfidentialityImpactNode()) {
    +134             nodeText = new StringBuilder(20);
    +135         } else if (current.isCVSSIntegrityImpactNode()) {
    +136             nodeText = new StringBuilder(20);
    +137         }
    +138     }
    +139 
    +140     @Override
    +141     public void characters(char[] ch, int start, int length) throws SAXException {
    +142         if (nodeText != null) {
    +143             nodeText.append(ch, start, length);
    +144         }
    +145     }
    +146 
    +147     @Override
    +148     public void endElement(String uri, String localName, String qName) throws SAXException {
    +149         current.setNode(qName);
    +150         if (current.isEntryNode()) {
    +151             totalNumberOfEntries += 1;
    +152             if (hasApplicationCpe) {
    +153                 totalNumberOfApplicationEntries += 1;
    +154                 try {
    +155                     saveEntry(vulnerability);
    +156                 } catch (DatabaseException ex) {
    +157                     throw new SAXException(ex);
    +158                 } catch (CorruptIndexException ex) {
    +159                     throw new SAXException(ex);
    +160                 } catch (IOException ex) {
    +161                     throw new SAXException(ex);
    +162                 }
    +163             }
    +164             vulnerability = null;
    +165         } else if (current.isCVSSScoreNode()) {
    +166             try {
    +167                 final float score = Float.parseFloat(nodeText.toString());
    +168                 vulnerability.setCvssScore(score);
    +169             } catch (NumberFormatException ex) {
    +170                 Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.SEVERE, "Error parsing CVSS Score.");
    +171                 Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.FINE, null, ex);
    +172             }
    +173             nodeText = null;
    +174         } else if (current.isCVSSAccessVectorNode()) {
    +175             vulnerability.setCvssAccessVector(nodeText.toString());
    +176             nodeText = null;
    +177         } else if (current.isCVSSAccessComplexityNode()) {
    +178             vulnerability.setCvssAccessComplexity(nodeText.toString());
    +179             nodeText = null;
    +180         } else if (current.isCVSSAuthenticationNode()) {
    +181             vulnerability.setCvssAuthentication(nodeText.toString());
    +182             nodeText = null;
    +183         } else if (current.isCVSSAvailabilityImpactNode()) {
    +184             vulnerability.setCvssAvailabilityImpact(nodeText.toString());
    +185             nodeText = null;
    +186         } else if (current.isCVSSConfidentialityImpactNode()) {
    +187             vulnerability.setCvssConfidentialityImpact(nodeText.toString());
    +188             nodeText = null;
    +189         } else if (current.isCVSSIntegrityImpactNode()) {
    +190             vulnerability.setCvssIntegrityImpact(nodeText.toString());
    +191             nodeText = null;
    +192         } else if (current.isVulnProductNode()) {
    +193             final String cpe = nodeText.toString();
    +194             if (cpe.startsWith("cpe:/a:")) {
    +195                 hasApplicationCpe = true;
    +196                 vulnerability.addVulnerableSoftware(cpe);
    +197             }
    +198             nodeText = null;
    +199         } else if (reference != null && current.isVulnReferencesNode()) {
    +200             vulnerability.addReference(reference);
    +201             reference = null;
    +202         } else if (reference != null && current.isVulnReferenceNode()) {
    +203             reference.setName(nodeText.toString());
    +204             nodeText = null;
    +205         } else if (reference != null && current.isVulnSourceNode()) {
    +206             reference.setSource(nodeText.toString());
    +207             nodeText = null;
    +208         } else if (current.isVulnSummaryNode()) {
    +209             vulnerability.setDescription(nodeText.toString());
    +210             if (nodeText.indexOf("** REJECT **") >= 0) {
    +211                 hasApplicationCpe = true; //ensure we process this to delete the vuln
    +212             }
    +213             nodeText = null;
    +214         }
    +215     }
    +216     /**
    +217      * the cve database.
    +218      */
    +219     private CveDB cveDB;
    +220 
    +221     /**
    +222      * Sets the cveDB.
    +223      *
    +224      * @param db a reference to the CveDB
    +225      */
    +226     public void setCveDB(CveDB db) {
    +227         cveDB = db;
    +228     }
    +229     /**
    +230      * A list of CVE entries and associated VulnerableSoftware entries that
    +231      * contain previous entries.
    +232      */
    +233     private Map<String, List<VulnerableSoftware>> prevVersionVulnMap;
    +234 
    +235     /**
    +236      * Sets the prevVersionVulnMap.
    +237      *
    +238      * @param map the map of vulnerable software with previous versions being
    +239      * vulnerable
    +240      */
    +241     public void setPrevVersionVulnMap(Map<String, List<VulnerableSoftware>> map) {
    +242         prevVersionVulnMap = map;
    +243     }
    +244 
    +245     /**
    +246      * Saves a vulnerability to the CVE Database.
    +247      *
    +248      * @param vuln the vulnerability to store in the database
    +249      * @throws DatabaseException thrown if there is an error writing to the
    +250      * database
    +251      * @throws CorruptIndexException is thrown if the CPE Index is corrupt
    +252      * @throws IOException thrown if there is an IOException with the CPE Index
    +253      */
    +254     private void saveEntry(Vulnerability vuln) throws DatabaseException, CorruptIndexException, IOException {
    +255         if (cveDB == null) {
    +256             return;
    +257         }
    +258         final String cveName = vuln.getName();
    +259         if (prevVersionVulnMap.containsKey(cveName)) {
    +260             final List<VulnerableSoftware> vulnSoftware = prevVersionVulnMap.get(cveName);
    +261             for (VulnerableSoftware vs : vulnSoftware) {
    +262                 vuln.updateVulnerableSoftware(vs);
    +263             }
    +264         }
    +265         cveDB.updateVulnerability(vuln);
    +266     }
    +267 
    +268     // <editor-fold defaultstate="collapsed" desc="The Element Class that maintains state information about the current node">
    +269     /**
    +270      * A simple class to maintain information about the current element while
    +271      * parsing the NVD CVE XML.
    +272      */
    +273     protected static class Element {
    +274 
    +275         /**
    +276          * A node type in the NVD CVE Schema 2.0
    +277          */
    +278         public static final String NVD = "nvd";
    +279         /**
    +280          * A node type in the NVD CVE Schema 2.0
    +281          */
    +282         public static final String ENTRY = "entry";
    +283         /**
    +284          * A node type in the NVD CVE Schema 2.0
    +285          */
    +286         public static final String VULN_PRODUCT = "vuln:product";
    +287         /**
    +288          * A node type in the NVD CVE Schema 2.0
    +289          */
    +290         public static final String VULN_REFERENCES = "vuln:references";
    +291         /**
    +292          * A node type in the NVD CVE Schema 2.0
    +293          */
    +294         public static final String VULN_SOURCE = "vuln:source";
    +295         /**
    +296          * A node type in the NVD CVE Schema 2.0
    +297          */
    +298         public static final String VULN_REFERENCE = "vuln:reference";
    +299         /**
    +300          * A node type in the NVD CVE Schema 2.0
    +301          */
    +302         public static final String VULN_SUMMARY = "vuln:summary";
    +303         /**
    +304          * A node type in the NVD CVE Schema 2.0
    +305          */
    +306         public static final String VULN_CWE = "vuln:cwe";
    +307         /**
    +308          * A node type in the NVD CVE Schema 2.0
    +309          */
    +310         public static final String CVSS_SCORE = "cvss:score";
    +311         /**
    +312          * A node type in the NVD CVE Schema 2.0
    +313          */
    +314         public static final String CVSS_ACCESS_VECTOR = "cvss:access-vector";
    +315         /**
    +316          * A node type in the NVD CVE Schema 2.0
    +317          */
    +318         public static final String CVSS_ACCESS_COMPLEXITY = "cvss:access-complexity";
    +319         /**
    +320          * A node type in the NVD CVE Schema 2.0
    +321          */
    +322         public static final String CVSS_AUTHENTICATION = "cvss:authentication";
    +323         /**
    +324          * A node type in the NVD CVE Schema 2.0
    +325          */
    +326         public static final String CVSS_CONFIDENTIALITY_IMPACT = "cvss:confidentiality-impact";
    +327         /**
    +328          * A node type in the NVD CVE Schema 2.0
    +329          */
    +330         public static final String CVSS_INTEGRITY_IMPACT = "cvss:integrity-impact";
    +331         /**
    +332          * A node type in the NVD CVE Schema 2.0
    +333          */
    +334         public static final String CVSS_AVAILABILITY_IMPACT = "cvss:availability-impact";
    +335         /**
    +336          * The current node.
    +337          */
    +338         private String node;
    +339 
    +340         /**
    +341          * Gets the value of node.
    +342          *
    +343          * @return the value of node
    +344          */
    +345         public String getNode() {
    +346             return this.node;
    +347         }
    +348 
    +349         /**
    +350          * Sets the value of node.
    +351          *
    +352          * @param node new value of node
    +353          */
    +354         public void setNode(String node) {
    +355             this.node = node;
    +356         }
    +357 
    +358         /**
    +359          * Checks if the handler is at the NVD node.
    +360          *
    +361          * @return true or false
    +362          */
    +363         public boolean isNVDNode() {
    +364             return NVD.equals(node);
    +365         }
    +366 
    +367         /**
    +368          * Checks if the handler is at the ENTRY node.
    +369          *
    +370          * @return true or false
    +371          */
    +372         public boolean isEntryNode() {
    +373             return ENTRY.equals(node);
    +374         }
    +375 
    +376         /**
    +377          * Checks if the handler is at the VULN_PRODUCT node.
    +378          *
    +379          * @return true or false
    +380          */
    +381         public boolean isVulnProductNode() {
    +382             return VULN_PRODUCT.equals(node);
    +383         }
    +384 
    +385         /**
    +386          * Checks if the handler is at the REFERENCES node.
    +387          *
    +388          * @return true or false
    +389          */
    +390         public boolean isVulnReferencesNode() {
    +391             return VULN_REFERENCES.equals(node);
    +392         }
    +393 
    +394         /**
    +395          * Checks if the handler is at the REFERENCE node.
    +396          *
    +397          * @return true or false
    +398          */
    +399         public boolean isVulnReferenceNode() {
    +400             return VULN_REFERENCE.equals(node);
    +401         }
    +402 
    +403         /**
    +404          * Checks if the handler is at the VULN_SOURCE node.
    +405          *
    +406          * @return true or false
    +407          */
    +408         public boolean isVulnSourceNode() {
    +409             return VULN_SOURCE.equals(node);
    +410         }
    +411 
    +412         /**
    +413          * Checks if the handler is at the VULN_SUMMARY node.
    +414          *
    +415          * @return true or false
    +416          */
    +417         public boolean isVulnSummaryNode() {
    +418             return VULN_SUMMARY.equals(node);
    +419         }
    +420 
    +421         /**
    +422          * Checks if the handler is at the VULN_CWE node.
    +423          *
    +424          * @return true or false
    +425          */
    +426         public boolean isVulnCWENode() {
    +427             return VULN_CWE.equals(node);
    +428         }
    +429 
    +430         /**
    +431          * Checks if the handler is at the CVSS_SCORE node.
    +432          *
    +433          * @return true or false
    +434          */
    +435         public boolean isCVSSScoreNode() {
    +436             return CVSS_SCORE.equals(node);
    +437         }
    +438 
    +439         /**
    +440          * Checks if the handler is at the CVSS_ACCESS_VECTOR node.
    +441          *
    +442          * @return true or false
    +443          */
    +444         public boolean isCVSSAccessVectorNode() {
    +445             return CVSS_ACCESS_VECTOR.equals(node);
    +446         }
    +447 
    +448         /**
    +449          * Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node.
    +450          *
    +451          * @return true or false
    +452          */
    +453         public boolean isCVSSAccessComplexityNode() {
    +454             return CVSS_ACCESS_COMPLEXITY.equals(node);
    +455         }
    +456 
    +457         /**
    +458          * Checks if the handler is at the CVSS_AUTHENTICATION node.
    +459          *
    +460          * @return true or false
    +461          */
    +462         public boolean isCVSSAuthenticationNode() {
    +463             return CVSS_AUTHENTICATION.equals(node);
    +464         }
    +465 
    +466         /**
    +467          * Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node.
    +468          *
    +469          * @return true or false
    +470          */
    +471         public boolean isCVSSConfidentialityImpactNode() {
    +472             return CVSS_CONFIDENTIALITY_IMPACT.equals(node);
    +473         }
    +474 
    +475         /**
    +476          * Checks if the handler is at the CVSS_INTEGRITY_IMPACT node.
    +477          *
    +478          * @return true or false
    +479          */
    +480         public boolean isCVSSIntegrityImpactNode() {
    +481             return CVSS_INTEGRITY_IMPACT.equals(node);
    +482         }
    +483 
    +484         /**
    +485          * Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node.
    +486          *
    +487          * @return true or false
    +488          */
    +489         public boolean isCVSSAvailabilityImpactNode() {
    +490             return CVSS_AVAILABILITY_IMPACT.equals(node);
    +491         }
    +492     }
    +493     // </editor-fold>
    +494 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html new file mode 100644 index 000000000..fc2f12d02 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -0,0 +1,42 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.nvdcve + + + + +

    + org.owasp.dependencycheck.data.nvdcve +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html new file mode 100644 index 000000000..64da64f07 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -0,0 +1,97 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.nvdcve + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.nvdcve

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + CorruptDatabaseException +
    + CveDB +
    + DatabaseException +
    + Element +
    + InvalidDataException +
    + NvdCve12Handler +
    + NvdCve20Handler +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html new file mode 100644 index 000000000..a13fe1f29 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html @@ -0,0 +1,36 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data + + + + +

    + org.owasp.dependencycheck.data +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html new file mode 100644 index 000000000..8d05170dd --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html @@ -0,0 +1,87 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + BaseDB +
    + CachedWebDataSource +
    + NoDataException +
    + UpdateException +
    + UpdateService +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html new file mode 100644 index 000000000..c82014e86 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html @@ -0,0 +1,274 @@ + + + + +AbstractUpdateTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.net.MalformedURLException;
    +24  import java.sql.SQLException;
    +25  import java.util.List;
    +26  import java.util.Map;
    +27  import java.util.logging.Level;
    +28  import java.util.logging.Logger;
    +29  import javax.xml.parsers.ParserConfigurationException;
    +30  import javax.xml.parsers.SAXParser;
    +31  import javax.xml.parsers.SAXParserFactory;
    +32  import org.owasp.dependencycheck.data.UpdateException;
    +33  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +34  import org.owasp.dependencycheck.utils.FileUtils;
    +35  import org.owasp.dependencycheck.utils.Settings;
    +36  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +37  import org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler;
    +38  import org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler;
    +39  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +40  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +41  import org.xml.sax.SAXException;
    +42  
    +43  /**
    +44   * Class responsible for updating the CPE and NVDCVE data stores.
    +45   *
    +46   * @author Jeremy Long (jeremy.long@owasp.org)
    +47   */
    +48  public abstract class AbstractUpdateTask implements UpdateTask {
    +49  
    +50      /**
    +51       * Initializes the AbstractUpdateTask.
    +52       *
    +53       * @param properties information about the data store
    +54       * @throws MalformedURLException thrown if the configuration contains a
    +55       * malformed url
    +56       * @throws DownloadFailedException thrown if the timestamp on a file cannot
    +57       * be checked
    +58       * @throws UpdateException thrown if the update fails
    +59       */
    +60      public AbstractUpdateTask(DataStoreMetaInfo properties) throws MalformedURLException, DownloadFailedException, UpdateException {
    +61          this.properties = properties;
    +62          this.updateable = updatesNeeded();
    +63      }
    +64      /**
    +65       * A collection of updateable NVD CVE items.
    +66       */
    +67      private Updateable updateable;
    +68      /**
    +69       * Utility to read and write meta-data about the data.
    +70       */
    +71      private DataStoreMetaInfo properties = null;
    +72  
    +73      /**
    +74       * Returns the data store properties.
    +75       *
    +76       * @return the data store properties
    +77       */
    +78      protected DataStoreMetaInfo getProperties() {
    +79          return properties;
    +80      }
    +81      /**
    +82       * Reference to the Cve Database.
    +83       */
    +84      private CveDB cveDB = null;
    +85  
    +86      /**
    +87       * Returns the CveDB.
    +88       *
    +89       * @return the CveDB
    +90       */
    +91      protected CveDB getCveDB() {
    +92          return cveDB;
    +93      }
    +94  
    +95      /**
    +96       * Gets whether or not an update is needed.
    +97       *
    +98       * @return true or false depending on whether an update is needed
    +99       */
    +100     public boolean isUpdateNeeded() {
    +101         return updateable.isUpdateNeeded();
    +102     }
    +103 
    +104     /**
    +105      * Gets the updateable NVD CVE Entries.
    +106      *
    +107      * @return an Updateable object containing the NVD CVE entries
    +108      */
    +109     protected Updateable getUpdateable() {
    +110         return updateable;
    +111     }
    +112 
    +113     /**
    +114      * Determines if the index needs to be updated.
    +115      *
    +116      * @return a collection of updateable resources.
    +117      * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
    +118      * data is incorrect.
    +119      * @throws DownloadFailedException is thrown if there is an error.
    +120      * downloading the NVD CVE download data file.
    +121      * @throws UpdateException Is thrown if there is an issue with the last
    +122      * updated properties file.
    +123      */
    +124     protected abstract Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException;
    +125 
    +126     /**
    +127      * <p>Updates the data store to the latest version.</p>
    +128      *
    +129      * @throws UpdateException is thrown if there is an error updating the
    +130      * database
    +131      */
    +132     public abstract void update() throws UpdateException;
    +133     /**
    +134      * A flag indicating whether or not the current data store should be
    +135      * deleted.
    +136      */
    +137     private boolean deleteAndRecreate = false;
    +138 
    +139     /**
    +140      * Get the value of deleteAndRecreate.
    +141      *
    +142      * @return the value of deleteAndRecreate
    +143      */
    +144     public boolean shouldDeleteAndRecreate() {
    +145         return deleteAndRecreate;
    +146     }
    +147 
    +148     /**
    +149      * Set the value of deleteAndRecreate.
    +150      *
    +151      * @param deleteAndRecreate new value of deleteAndRecreate
    +152      */
    +153     protected void setDeleteAndRecreate(boolean deleteAndRecreate) {
    +154         this.deleteAndRecreate = deleteAndRecreate;
    +155     }
    +156 
    +157     /**
    +158      * Deletes the existing data directories.
    +159      *
    +160      * @throws IOException thrown if the directory cannot be deleted
    +161      */
    +162     protected void deleteExistingData() throws IOException {
    +163         File data = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
    +164         if (data.exists()) {
    +165             FileUtils.delete(data);
    +166         }
    +167         data = DataStoreMetaInfo.getPropertiesFile();
    +168         if (data.exists()) {
    +169             FileUtils.delete(data);
    +170         }
    +171     }
    +172 
    +173     /**
    +174      * Closes the CVE and CPE data stores.
    +175      */
    +176     protected void closeDataStores() {
    +177         if (cveDB != null) {
    +178             try {
    +179                 cveDB.close();
    +180             } catch (Exception ignore) {
    +181                 Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINEST, "Error closing the cveDB", ignore);
    +182             }
    +183         }
    +184     }
    +185 
    +186     /**
    +187      * Opens the CVE and CPE data stores.
    +188      *
    +189      * @throws UpdateException thrown if a data store cannot be opened
    +190      */
    +191     protected void openDataStores() throws UpdateException {
    +192         //open the cve and cpe data stores
    +193         try {
    +194             cveDB = new CveDB();
    +195             cveDB.open();
    +196         } catch (IOException ex) {
    +197             closeDataStores();
    +198             Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "IO Error opening databases", ex);
    +199             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +200         } catch (SQLException ex) {
    +201             closeDataStores();
    +202             Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "SQL Exception opening databases", ex);
    +203             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +204         } catch (DatabaseException ex) {
    +205             closeDataStores();
    +206             Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "Database Exception opening databases", ex);
    +207             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +208         } catch (ClassNotFoundException ex) {
    +209             closeDataStores();
    +210             Logger.getLogger(AbstractUpdateTask.class.getName()).log(Level.FINE, "Class not found exception opening databases", ex);
    +211             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +212         }
    +213     }
    +214 
    +215     /**
    +216      * Determines if the epoch date is within the range specified of the
    +217      * compareTo epoch time. This takes the (compareTo-date)/1000/60/60/24 to
    +218      * get the number of days. If the calculated days is less then the range the
    +219      * date is considered valid.
    +220      *
    +221      * @param date the date to be checked.
    +222      * @param compareTo the date to compare to.
    +223      * @param range the range in days to be considered valid.
    +224      * @return whether or not the date is within the range.
    +225      */
    +226     protected boolean withinRange(long date, long compareTo, int range) {
    +227         final double differenceInDays = (compareTo - date) / 1000.0 / 60.0 / 60.0 / 24.0;
    +228         return differenceInDays < range;
    +229     }
    +230 
    +231     /**
    +232      * Imports the NVD CVE XML File into the Lucene Index.
    +233      *
    +234      * @param file the file containing the NVD CVE XML
    +235      * @param oldVersion contains the file containing the NVD CVE XML 1.2
    +236      * @throws ParserConfigurationException is thrown if there is a parser
    +237      * configuration exception
    +238      * @throws SAXException is thrown if there is a SAXException
    +239      * @throws IOException is thrown if there is a IO Exception
    +240      * @throws SQLException is thrown if there is a SQL exception
    +241      * @throws DatabaseException is thrown if there is a database exception
    +242      * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +243      * loaded
    +244      */
    +245     protected void importXML(File file, File oldVersion) throws ParserConfigurationException,
    +246             SAXException, IOException, SQLException, DatabaseException, ClassNotFoundException {
    +247 
    +248         final SAXParserFactory factory = SAXParserFactory.newInstance();
    +249         final SAXParser saxParser = factory.newSAXParser();
    +250 
    +251         final NvdCve12Handler cve12Handler = new NvdCve12Handler();
    +252         saxParser.parse(oldVersion, cve12Handler);
    +253         final Map<String, List<VulnerableSoftware>> prevVersionVulnMap = cve12Handler.getVulnerabilities();
    +254 
    +255         final NvdCve20Handler cve20Handler = new NvdCve20Handler();
    +256         cve20Handler.setCveDB(cveDB);
    +257         cve20Handler.setPrevVersionVulnMap(prevVersionVulnMap);
    +258         saxParser.parse(file, cve20Handler);
    +259     }
    +260 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/BatchUpdateTask.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/BatchUpdateTask.html new file mode 100644 index 000000000..36cf86603 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/BatchUpdateTask.html @@ -0,0 +1,286 @@ + + + + +BatchUpdateTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.InvalidDataException;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.net.MalformedURLException;
    +25  import java.net.URISyntaxException;
    +26  import java.net.URL;
    +27  import java.util.Calendar;
    +28  import java.util.Date;
    +29  import java.util.logging.Level;
    +30  import java.util.logging.Logger;
    +31  import org.owasp.dependencycheck.data.UpdateException;
    +32  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +33  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +34  import org.owasp.dependencycheck.utils.Downloader;
    +35  import org.owasp.dependencycheck.utils.FileUtils;
    +36  import org.owasp.dependencycheck.utils.Settings;
    +37  import org.owasp.dependencycheck.utils.InvalidSettingException;
    +38  import static org.owasp.dependencycheck.data.update.DataStoreMetaInfo.BATCH;
    +39  import static org.owasp.dependencycheck.data.update.DataStoreMetaInfo.MODIFIED;
    +40  
    +41  /**
    +42   * Class responsible for updating the CPE and NVDCVE data stores.
    +43   *
    +44   * @author Jeremy Long (jeremy.long@owasp.org)
    +45   * @deprecated batch update mode will no longer be supported.
    +46   */
    +47  @Deprecated
    +48  public class BatchUpdateTask extends AbstractUpdateTask {
    +49  
    +50      /**
    +51       * Constructs a new BatchUpdateTask.
    +52       *
    +53       * @param properties information about the data store
    +54       * @throws MalformedURLException thrown if a configured URL is malformed
    +55       * @throws DownloadFailedException thrown if a timestamp cannot be checked
    +56       * on a configured URL
    +57       * @throws UpdateException thrown if there is an exception generating the
    +58       * update task
    +59       */
    +60      public BatchUpdateTask(DataStoreMetaInfo properties) throws MalformedURLException, DownloadFailedException, UpdateException {
    +61          super(properties);
    +62      }
    +63      /**
    +64       * A flag indicating whether or not the batch update should be performed.
    +65       */
    +66      private boolean doBatchUpdate;
    +67  
    +68      /**
    +69       * Get the value of doBatchUpdate
    +70       *
    +71       * @return the value of doBatchUpdate
    +72       */
    +73      protected boolean isDoBatchUpdate() {
    +74          return doBatchUpdate;
    +75      }
    +76  
    +77      /**
    +78       * Set the value of doBatchUpdate
    +79       *
    +80       * @param doBatchUpdate new value of doBatchUpdate
    +81       */
    +82      protected void setDoBatchUpdate(boolean doBatchUpdate) {
    +83          this.doBatchUpdate = doBatchUpdate;
    +84      }
    +85  
    +86      /**
    +87       * <p>Downloads the latest NVD CVE XML file from the web and imports it into
    +88       * the current CVE Database.</p>
    +89       *
    +90       * @throws UpdateException is thrown if there is an error updating the
    +91       * database
    +92       */
    +93      @Override
    +94      public void update() throws UpdateException {
    +95          if (getProperties().isBatchUpdateMode() && doBatchUpdate) {
    +96              final String batchSrc = Settings.getString(Settings.KEYS.BATCH_UPDATE_URL);
    +97              File tmp = null;
    +98              try {
    +99                  deleteExistingData();
    +100                 final File dataDirectory = CveDB.getDataDirectory().getParentFile();
    +101                 final URL batchUrl = new URL(batchSrc);
    +102                 if ("file".equals(batchUrl.getProtocol())) {
    +103                     try {
    +104                         tmp = new File(batchUrl.toURI());
    +105                     } catch (URISyntaxException ex) {
    +106                         final String msg = String.format("Invalid batch update URI: %s", batchSrc);
    +107                         throw new UpdateException(msg, ex);
    +108                     }
    +109                 } else if ("http".equals(batchUrl.getProtocol())
    +110                         || "https".equals(batchUrl.getProtocol())) {
    +111                     tmp = File.createTempFile("batch_", ".zip");
    +112                     Downloader.fetchFile(batchUrl, tmp);
    +113                 }
    +114                 //TODO add FTP?
    +115                 FileUtils.extractFiles(tmp, dataDirectory);
    +116 
    +117             } catch (IOException ex) {
    +118                 final String msg = String.format("IO Exception Occured performing batch update using: %s", batchSrc);
    +119                 throw new UpdateException(msg, ex);
    +120             } finally {
    +121                 if (tmp != null && !tmp.delete()) {
    +122                     tmp.deleteOnExit();
    +123                 }
    +124             }
    +125         }
    +126     }
    +127 
    +128     /**
    +129      * Determines if the index needs to be updated. This is done by fetching the
    +130      * NVD CVE meta data and checking the last update date. If the data needs to
    +131      * be refreshed this method will return the NvdCveUrl for the files that
    +132      * need to be updated.
    +133      *
    +134      * @return the collection of files that need to be updated
    +135      * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
    +136      * data is incorrect
    +137      * @throws DownloadFailedException is thrown if there is an error.
    +138      * downloading the NVD CVE download data file
    +139      * @throws UpdateException Is thrown if there is an issue with the last
    +140      * updated properties file
    +141      */
    +142     @Override
    +143     public Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
    +144         Updateable updates = null;
    +145         try {
    +146             updates = retrieveCurrentTimestampsFromWeb();
    +147         } catch (InvalidDataException ex) {
    +148             final String msg = "Unable to retrieve valid timestamp from nvd cve downloads page";
    +149             Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, msg, ex);
    +150             throw new DownloadFailedException(msg, ex);
    +151         } catch (InvalidSettingException ex) {
    +152             Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, "Invalid setting found when retrieving timestamps", ex);
    +153             throw new DownloadFailedException("Invalid settings", ex);
    +154         }
    +155 
    +156         if (updates == null) {
    +157             throw new DownloadFailedException("Unable to retrieve the timestamps of the currently published NVD CVE data");
    +158         }
    +159         final DataStoreMetaInfo properties = getProperties();
    +160         if (!properties.isEmpty()) {
    +161             try {
    +162                 boolean deleteAndRecreate = false;
    +163                 float version;
    +164 
    +165                 if (properties.getProperty("version") == null) {
    +166                     deleteAndRecreate = true;
    +167                 } else {
    +168                     try {
    +169                         version = Float.parseFloat(properties.getProperty("version"));
    +170                         final float currentVersion = Float.parseFloat(CveDB.DB_SCHEMA_VERSION);
    +171                         if (currentVersion > version) {
    +172                             deleteAndRecreate = true;
    +173                         }
    +174                     } catch (NumberFormatException ex) {
    +175                         deleteAndRecreate = true;
    +176                     }
    +177                 }
    +178 
    +179                 final NvdCveInfo batchInfo = updates.get(BATCH);
    +180                 if (properties.isBatchUpdateMode() && batchInfo != null) {
    +181                     final long lastUpdated = Long.parseLong(properties.getProperty(DataStoreMetaInfo.BATCH, "0"));
    +182                     if (lastUpdated != batchInfo.getTimestamp()) {
    +183                         deleteAndRecreate = true;
    +184                     }
    +185                 }
    +186 
    +187                 if (deleteAndRecreate) {
    +188                     setDoBatchUpdate(properties.isBatchUpdateMode());
    +189                     try {
    +190                         deleteExistingData();
    +191                     } catch (IOException ex) {
    +192                         final String msg = "Unable to delete existing data";
    +193                         Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.WARNING, msg);
    +194                         Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, null, ex);
    +195                     }
    +196                     return updates;
    +197                 }
    +198 
    +199                 final long lastUpdated = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED, "0"));
    +200                 final Date now = new Date();
    +201                 final int days = Settings.getInt(Settings.KEYS.CVE_MODIFIED_VALID_FOR_DAYS, 7);
    +202                 final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR, 2002);
    +203                 final int end = Calendar.getInstance().get(Calendar.YEAR);
    +204                 if (lastUpdated == updates.get(MODIFIED).getTimestamp()) {
    +205                     updates.clear(); //we don't need to update anything.
    +206                     setDoBatchUpdate(properties.isBatchUpdateMode());
    +207                 } else if (withinRange(lastUpdated, now.getTime(), days)) {
    +208                     updates.get(MODIFIED).setNeedsUpdate(true);
    +209                     if (properties.isBatchUpdateMode()) {
    +210                         setDoBatchUpdate(false);
    +211                     } else {
    +212                         for (int i = start; i <= end; i++) {
    +213                             updates.get(String.valueOf(i)).setNeedsUpdate(false);
    +214                         }
    +215                     }
    +216                 } else if (properties.isBatchUpdateMode()) {
    +217                     updates.get(MODIFIED).setNeedsUpdate(true);
    +218                     setDoBatchUpdate(true);
    +219                 } else { //we figure out which of the several XML files need to be downloaded.
    +220                     updates.get(MODIFIED).setNeedsUpdate(false);
    +221                     for (int i = start; i <= end; i++) {
    +222                         final NvdCveInfo cve = updates.get(String.valueOf(i));
    +223                         long currentTimestamp = 0;
    +224                         try {
    +225                             currentTimestamp = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED_BASE + String.valueOf(i), "0"));
    +226                         } catch (NumberFormatException ex) {
    +227                             final String msg = String.format("Error parsing '%s' '%s' from nvdcve.lastupdated",
    +228                                     DataStoreMetaInfo.LAST_UPDATED_BASE, String.valueOf(i));
    +229                             Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, msg, ex);
    +230                         }
    +231                         if (currentTimestamp == cve.getTimestamp()) {
    +232                             cve.setNeedsUpdate(false); //they default to true.
    +233                         }
    +234                     }
    +235                 }
    +236             } catch (NumberFormatException ex) {
    +237                 final String msg = "An invalid schema version or timestamp exists in the data.properties file.";
    +238                 Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.WARNING, msg);
    +239                 Logger.getLogger(BatchUpdateTask.class.getName()).log(Level.FINE, null, ex);
    +240                 setDoBatchUpdate(properties.isBatchUpdateMode());
    +241             }
    +242         }
    +243         return updates;
    +244     }
    +245 
    +246     /**
    +247      * Retrieves the timestamps from the NVD CVE meta data file.
    +248      *
    +249      * @return the timestamp from the currently published nvdcve downloads page
    +250      * @throws MalformedURLException thrown if the URL for the NVD CCE Meta data
    +251      * is incorrect.
    +252      * @throws DownloadFailedException thrown if there is an error downloading
    +253      * the nvd cve meta data file
    +254      * @throws InvalidDataException thrown if there is an exception parsing the
    +255      * timestamps
    +256      * @throws InvalidSettingException thrown if the settings are invalid
    +257      */
    +258     private Updateable retrieveCurrentTimestampsFromWeb()
    +259             throws MalformedURLException, DownloadFailedException, InvalidDataException, InvalidSettingException {
    +260         final Updateable updates = new Updateable();
    +261         updates.add(BATCH, Settings.getString(Settings.KEYS.BATCH_UPDATE_URL),
    +262                 null, false);
    +263 
    +264         final String url = Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL, "");
    +265         if (!url.isEmpty()) {
    +266             updates.add(MODIFIED, url,
    +267                     Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL),
    +268                     false);
    +269         }
    +270         return updates;
    +271     }
    +272 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html new file mode 100644 index 000000000..d87965b8b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html @@ -0,0 +1,193 @@ + + + + +CallableDownloadTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.net.URL;
    +23  import java.util.concurrent.Callable;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +27  import org.owasp.dependencycheck.utils.Downloader;
    +28  
    +29  /**
    +30   * A callable object to download two files.
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class CallableDownloadTask implements Callable<CallableDownloadTask> {
    +35  
    +36      /**
    +37       * Simple constructor for the callable download task.
    +38       *
    +39       * @param nvdCveInfo the nvd cve info
    +40       * @param first the first file
    +41       * @param second the second file
    +42       */
    +43      public CallableDownloadTask(NvdCveInfo nvdCveInfo, File first, File second) {
    +44          this.nvdCveInfo = nvdCveInfo;
    +45          this.first = first;
    +46          this.second = second;
    +47      }
    +48      /**
    +49       * The NVD CVE Meta Data.
    +50       */
    +51      private NvdCveInfo nvdCveInfo;
    +52  
    +53      /**
    +54       * Get the value of nvdCveInfo.
    +55       *
    +56       * @return the value of nvdCveInfo
    +57       */
    +58      public NvdCveInfo getNvdCveInfo() {
    +59          return nvdCveInfo;
    +60      }
    +61  
    +62      /**
    +63       * Set the value of nvdCveInfo.
    +64       *
    +65       * @param nvdCveInfo new value of nvdCveInfo
    +66       */
    +67      public void setNvdCveInfo(NvdCveInfo nvdCveInfo) {
    +68          this.nvdCveInfo = nvdCveInfo;
    +69      }
    +70      /**
    +71       * a file.
    +72       */
    +73      private File first;
    +74  
    +75      /**
    +76       * Get the value of first.
    +77       *
    +78       * @return the value of first
    +79       */
    +80      public File getFirst() {
    +81          return first;
    +82      }
    +83  
    +84      /**
    +85       * Set the value of first.
    +86       *
    +87       * @param first new value of first
    +88       */
    +89      public void setFirst(File first) {
    +90          this.first = first;
    +91      }
    +92      /**
    +93       * a file.
    +94       */
    +95      private File second;
    +96  
    +97      /**
    +98       * Get the value of second.
    +99       *
    +100      * @return the value of second
    +101      */
    +102     public File getSecond() {
    +103         return second;
    +104     }
    +105 
    +106     /**
    +107      * Set the value of second.
    +108      *
    +109      * @param second new value of second
    +110      */
    +111     public void setSecond(File second) {
    +112         this.second = second;
    +113     }
    +114     /**
    +115      * A placeholder for an exception.
    +116      */
    +117     private Exception exception = null;
    +118 
    +119     /**
    +120      * Get the value of exception.
    +121      *
    +122      * @return the value of exception
    +123      */
    +124     public Exception getException() {
    +125         return exception;
    +126     }
    +127 
    +128     /**
    +129      * returns whether or not an exception occurred during download.
    +130      *
    +131      * @return whether or not an exception occurred during download
    +132      */
    +133     public boolean hasException() {
    +134         return exception != null;
    +135     }
    +136 
    +137     @Override
    +138     public CallableDownloadTask call() throws Exception {
    +139         try {
    +140             final URL url1 = new URL(nvdCveInfo.getUrl());
    +141             final URL url2 = new URL(nvdCveInfo.getOldSchemaVersionUrl());
    +142             String msg = String.format("Download Started for NVD CVE - %s", nvdCveInfo.getId());
    +143             Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
    +144             Downloader.fetchFile(url1, first);
    +145             Downloader.fetchFile(url2, second);
    +146             msg = String.format("Download Complete for NVD CVE - %s", nvdCveInfo.getId());
    +147             Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
    +148         } catch (DownloadFailedException ex) {
    +149             this.exception = ex;
    +150         }
    +151         return this;
    +152     }
    +153 
    +154     /**
    +155      * Attempts to delete the files that were downloaded.
    +156      */
    +157     public void cleanup() {
    +158         boolean deleted = false;
    +159         try {
    +160             if (first != null && first.exists()) {
    +161                 deleted = first.delete();
    +162             }
    +163         } finally {
    +164             if (first != null && (first.exists() || !deleted)) {
    +165                 first.deleteOnExit();
    +166             }
    +167         }
    +168         try {
    +169             deleted = false;
    +170             if (second != null && second.exists()) {
    +171                 deleted = second.delete();
    +172             }
    +173         } finally {
    +174             if (second != null && (second.exists() || !deleted)) {
    +175                 second.deleteOnExit();
    +176             }
    +177         }
    +178     }
    +179 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html new file mode 100644 index 000000000..73c983092 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html @@ -0,0 +1,255 @@ + + + + +DataStoreMetaInfo xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileInputStream;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.FileOutputStream;
    +25  import java.io.IOException;
    +26  import java.io.InputStream;
    +27  import java.io.OutputStream;
    +28  import java.io.OutputStreamWriter;
    +29  import java.util.Properties;
    +30  import java.util.logging.Level;
    +31  import java.util.logging.Logger;
    +32  import org.owasp.dependencycheck.data.UpdateException;
    +33  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +34  import org.owasp.dependencycheck.utils.Settings;
    +35  
    +36  /**
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public class DataStoreMetaInfo {
    +41  
    +42      /**
    +43       * Batch key word, used as key to store information about batch mode.
    +44       */
    +45      public static final String BATCH = "batch";
    +46      /**
    +47       * Modified key word, used as a key to store information about the modified
    +48       * file (i.e. the containing the last 8 days of updates)..
    +49       */
    +50      public static final String MODIFIED = "modified";
    +51      /**
    +52       * The name of the properties file containing the timestamp of the last
    +53       * update.
    +54       */
    +55      private static final String UPDATE_PROPERTIES_FILE = "data.properties";
    +56      /**
    +57       * The properties file key for the last updated field - used to store the
    +58       * last updated time of the Modified NVD CVE xml file.
    +59       */
    +60      public static final String LAST_UPDATED = "lastupdated.modified";
    +61      /**
    +62       * Stores the last updated time for each of the NVD CVE files. These
    +63       * timestamps should be updated if we process the modified file within 7
    +64       * days of the last update.
    +65       */
    +66      public static final String LAST_UPDATED_BASE = "lastupdated.";
    +67      /**
    +68       * A collection of properties about the data.
    +69       */
    +70      private Properties properties = new Properties();
    +71      /**
    +72       * Indicates whether or not the updates are using a batch update mode or
    +73       * not.
    +74       */
    +75      private boolean batchUpdateMode;
    +76  
    +77      /**
    +78       * Get the value of batchUpdateMode.
    +79       *
    +80       * @return the value of batchUpdateMode
    +81       */
    +82      protected boolean isBatchUpdateMode() {
    +83          return batchUpdateMode;
    +84      }
    +85  
    +86      /**
    +87       * Set the value of batchUpdateMode.
    +88       *
    +89       * @param batchUpdateMode new value of batchUpdateMode
    +90       */
    +91      protected void setBatchUpdateMode(boolean batchUpdateMode) {
    +92          this.batchUpdateMode = batchUpdateMode;
    +93      }
    +94  
    +95      /**
    +96       * Constructs a new data properties object.
    +97       */
    +98      public DataStoreMetaInfo() {
    +99          batchUpdateMode = !Settings.getString(Settings.KEYS.BATCH_UPDATE_URL, "").isEmpty();
    +100         loadProperties();
    +101     }
    +102 
    +103     /**
    +104      * Loads the data's meta properties.
    +105      */
    +106     private void loadProperties() {
    +107         final File file = getPropertiesFile();
    +108         if (file.exists()) {
    +109             InputStream is = null;
    +110             try {
    +111                 is = new FileInputStream(file);
    +112             } catch (FileNotFoundException ignore) {
    +113                 //we will never get here as we check for existence above.
    +114                 Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ignore);
    +115             }
    +116             try {
    +117                 properties.load(is);
    +118             } catch (IOException ex) {
    +119                 final String msg = String.format("Unable to load properties file '%s'", file.getPath());
    +120                 Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.WARNING, msg);
    +121                 Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
    +122             } finally {
    +123                 if (is != null) {
    +124                     try {
    +125                         is.close();
    +126                     } catch (IOException ex) {
    +127                         final String msg = String.format("Unable to close properties file '%s'", file.getPath());
    +128                         Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.WARNING, msg);
    +129                         Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
    +130                     }
    +131                 }
    +132             }
    +133         }
    +134     }
    +135 
    +136     /**
    +137      * Returns whether or not any properties are set.
    +138      *
    +139      * @return whether or not any properties are set
    +140      */
    +141     public boolean isEmpty() {
    +142         return properties.isEmpty();
    +143     }
    +144 
    +145     /**
    +146      * Writes a properties file containing the last updated date to the
    +147      * VULNERABLE_CPE directory.
    +148      *
    +149      * @param updatedValue the updated nvdcve entry
    +150      * @throws UpdateException is thrown if there is an update exception
    +151      */
    +152     public void save(NvdCveInfo updatedValue) throws UpdateException {
    +153         if (updatedValue == null) {
    +154             return;
    +155         }
    +156         final File cveProp = getPropertiesFile();
    +157         final Properties prop = new Properties();
    +158         if (cveProp.exists()) {
    +159             FileInputStream in = null;
    +160             try {
    +161                 in = new FileInputStream(cveProp);
    +162                 prop.load(in);
    +163             } catch (Exception ignoreMe) {
    +164                 Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ignoreMe);
    +165             } finally {
    +166                 if (in != null) {
    +167                     try {
    +168                         in.close();
    +169                     } catch (Exception ignoreMeToo) {
    +170                         Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ignoreMeToo);
    +171                     }
    +172                 }
    +173             }
    +174         }
    +175         prop.put("version", CveDB.DB_SCHEMA_VERSION);
    +176         prop.put(LAST_UPDATED_BASE + updatedValue.getId(), String.valueOf(updatedValue.getTimestamp()));
    +177 
    +178         OutputStream os = null;
    +179         OutputStreamWriter out = null;
    +180         try {
    +181             os = new FileOutputStream(cveProp);
    +182             out = new OutputStreamWriter(os, "UTF-8");
    +183             prop.store(out, "Meta data about data and data sources used by dependency-check");
    +184         } catch (FileNotFoundException ex) {
    +185             Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
    +186             throw new UpdateException("Unable to find last updated properties file.", ex);
    +187         } catch (IOException ex) {
    +188             Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINE, null, ex);
    +189             throw new UpdateException("Unable to update last updated properties file.", ex);
    +190         } finally {
    +191             if (out != null) {
    +192                 try {
    +193                     out.close();
    +194                 } catch (IOException ex) {
    +195                     Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ex);
    +196                 }
    +197             }
    +198             if (os != null) {
    +199                 try {
    +200                     os.close();
    +201                 } catch (IOException ex) {
    +202                     Logger.getLogger(DataStoreMetaInfo.class.getName()).log(Level.FINEST, null, ex);
    +203                 }
    +204             }
    +205         }
    +206     }
    +207 
    +208     /**
    +209      * Returns the property value for the given key. If the key is not contained
    +210      * in the underlying properties null is returned.
    +211      *
    +212      * @param key the property key
    +213      * @return the value of the property
    +214      */
    +215     public String getProperty(String key) {
    +216         return properties.getProperty(key);
    +217     }
    +218 
    +219     /**
    +220      * Returns the property value for the given key. If the key is not contained
    +221      * in the underlying properties the default value is returned.
    +222      *
    +223      * @param key the property key
    +224      * @param defaultValue the default value
    +225      * @return the value of the property
    +226      */
    +227     public String getProperty(String key, String defaultValue) {
    +228         return properties.getProperty(key, defaultValue);
    +229     }
    +230 
    +231     /**
    +232      * Retrieves the properties file.
    +233      *
    +234      * @return the properties file
    +235      */
    +236     public static File getPropertiesFile() {
    +237         final File dataDirectory = Settings.getDataFile(Settings.KEYS.DATA_DIRECTORY);
    +238         final File file = new File(dataDirectory, UPDATE_PROPERTIES_FILE);
    +239         return file;
    +240     }
    +241 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DatabaseUpdater.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DatabaseUpdater.html new file mode 100644 index 000000000..f789cfa28 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/DatabaseUpdater.html @@ -0,0 +1,101 @@ + + + + +DatabaseUpdater xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import org.owasp.dependencycheck.data.CachedWebDataSource;
    +24  import java.net.MalformedURLException;
    +25  import java.util.logging.Level;
    +26  import java.util.logging.Logger;
    +27  import org.owasp.dependencycheck.data.UpdateException;
    +28  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +29  import org.owasp.dependencycheck.utils.FileUtils;
    +30  import org.owasp.dependencycheck.utils.Settings;
    +31  
    +32  /**
    +33   * Class responsible for updating the CPE and NVDCVE data stores.
    +34   *
    +35   * @author Jeremy Long (jeremy.long@owasp.org)
    +36   */
    +37  public class DatabaseUpdater implements CachedWebDataSource {
    +38  
    +39      /**
    +40       * <p>Downloads the latest NVD CVE XML file from the web and imports it into
    +41       * the current CVE Database.</p>
    +42       *
    +43       * @throws UpdateException is thrown if there is an error updating the
    +44       * database
    +45       */
    +46      @Override
    +47      public void update() throws UpdateException {
    +48          try {
    +49              final UpdateTask task = UpdateTaskFactory.getUpdateTask();
    +50              if (task.isUpdateNeeded()) {
    +51                  if (task.shouldDeleteAndRecreate()) {
    +52                      try {
    +53                          deleteExistingData();
    +54                      } catch (IOException ex) {
    +55                          Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.WARNING, "Unable to delete the existing data directory");
    +56                          Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
    +57                      }
    +58                  }
    +59                  task.update();
    +60              }
    +61          } catch (MalformedURLException ex) {
    +62              Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.WARNING,
    +63                      "NVD CVE properties files contain an invalid URL, unable to update the data to use the most current data.");
    +64              Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
    +65          } catch (DownloadFailedException ex) {
    +66              Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.WARNING,
    +67                      "Unable to download the NVD CVE data, unable to update the data to use the most current data.");
    +68              Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
    +69          }
    +70      }
    +71  
    +72      /**
    +73       * Deletes the existing data directories.
    +74       *
    +75       * @throws IOException thrown if the directory cannot be deleted
    +76       */
    +77      protected void deleteExistingData() throws IOException {
    +78          File data = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
    +79          if (data.exists()) {
    +80              FileUtils.delete(data);
    +81          }
    +82          data = DataStoreMetaInfo.getPropertiesFile();
    +83          if (data.exists()) {
    +84              FileUtils.delete(data);
    +85          }
    +86      }
    +87  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/NvdCveInfo.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/NvdCveInfo.html new file mode 100644 index 000000000..94160fd5b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/NvdCveInfo.html @@ -0,0 +1,152 @@ + + + + +NvdCveInfo xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  /**
    +22   * A pojo that contains the Url and timestamp of the current NvdCve XML files.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class NvdCveInfo {
    +27  
    +28      /**
    +29       * an id.
    +30       */
    +31      private String id;
    +32  
    +33      /**
    +34       * Get the value of id.
    +35       *
    +36       * @return the value of id
    +37       */
    +38      public String getId() {
    +39          return id;
    +40      }
    +41  
    +42      /**
    +43       * Set the value of id.
    +44       *
    +45       * @param id new value of id
    +46       */
    +47      public void setId(String id) {
    +48          this.id = id;
    +49      }
    +50      /**
    +51       * a url.
    +52       */
    +53      private String url;
    +54  
    +55      /**
    +56       * Get the value of url.
    +57       *
    +58       * @return the value of url
    +59       */
    +60      public String getUrl() {
    +61          return url;
    +62      }
    +63  
    +64      /**
    +65       * Set the value of url.
    +66       *
    +67       * @param url new value of url
    +68       */
    +69      public void setUrl(String url) {
    +70          this.url = url;
    +71      }
    +72      /**
    +73       * The 1.2 schema URL.
    +74       */
    +75      private String oldSchemaVersionUrl;
    +76  
    +77      /**
    +78       * Get the value of oldSchemaVersionUrl.
    +79       *
    +80       * @return the value of oldSchemaVersionUrl
    +81       */
    +82      public String getOldSchemaVersionUrl() {
    +83          return oldSchemaVersionUrl;
    +84      }
    +85  
    +86      /**
    +87       * Set the value of oldSchemaVersionUrl.
    +88       *
    +89       * @param oldSchemaVersionUrl new value of oldSchemaVersionUrl
    +90       */
    +91      public void setOldSchemaVersionUrl(String oldSchemaVersionUrl) {
    +92          this.oldSchemaVersionUrl = oldSchemaVersionUrl;
    +93      }
    +94      /**
    +95       * a timestamp - epoch time.
    +96       */
    +97      private long timestamp;
    +98  
    +99      /**
    +100      * Get the value of timestamp - epoch time.
    +101      *
    +102      * @return the value of timestamp - epoch time
    +103      */
    +104     public long getTimestamp() {
    +105         return timestamp;
    +106     }
    +107 
    +108     /**
    +109      * Set the value of timestamp - epoch time.
    +110      *
    +111      * @param timestamp new value of timestamp - epoch time
    +112      */
    +113     public void setTimestamp(long timestamp) {
    +114         this.timestamp = timestamp;
    +115     }
    +116     /**
    +117      * indicates whether or not this item should be updated.
    +118      */
    +119     private boolean needsUpdate = true;
    +120 
    +121     /**
    +122      * Get the value of needsUpdate.
    +123      *
    +124      * @return the value of needsUpdate
    +125      */
    +126     public boolean getNeedsUpdate() {
    +127         return needsUpdate;
    +128     }
    +129 
    +130     /**
    +131      * Set the value of needsUpdate.
    +132      *
    +133      * @param needsUpdate new value of needsUpdate
    +134      */
    +135     public void setNeedsUpdate(boolean needsUpdate) {
    +136         this.needsUpdate = needsUpdate;
    +137     }
    +138 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/StandardUpdateTask.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/StandardUpdateTask.html new file mode 100644 index 000000000..e549f5f39 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/StandardUpdateTask.html @@ -0,0 +1,418 @@ + + + + +StandardUpdateTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.InvalidDataException;
    +22  import java.io.File;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.IOException;
    +25  import javax.xml.parsers.ParserConfigurationException;
    +26  import org.xml.sax.SAXException;
    +27  import java.net.MalformedURLException;
    +28  import java.sql.SQLException;
    +29  import java.util.Calendar;
    +30  import java.util.Date;
    +31  import java.util.HashSet;
    +32  import java.util.Set;
    +33  import java.util.concurrent.ExecutionException;
    +34  import java.util.concurrent.ExecutorService;
    +35  import java.util.concurrent.Executors;
    +36  import java.util.concurrent.Future;
    +37  import java.util.logging.Level;
    +38  import java.util.logging.Logger;
    +39  import org.owasp.dependencycheck.data.UpdateException;
    +40  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +41  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +42  import org.owasp.dependencycheck.utils.Settings;
    +43  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +44  import org.owasp.dependencycheck.utils.InvalidSettingException;
    +45  import static org.owasp.dependencycheck.data.update.DataStoreMetaInfo.MODIFIED;
    +46  
    +47  /**
    +48   * Class responsible for updating the CPE and NVDCVE data stores.
    +49   *
    +50   * @author Jeremy Long (jeremy.long@owasp.org)
    +51   */
    +52  public class StandardUpdateTask extends AbstractUpdateTask {
    +53  
    +54      /**
    +55       * The max thread pool size to use when downloading files.
    +56       */
    +57      public static final int MAX_THREAD_POOL_SIZE = Settings.getInt(Settings.KEYS.MAX_DOWNLOAD_THREAD_POOL_SIZE, 3);
    +58  
    +59      /**
    +60       * Constructs a new Standard Update Task.
    +61       *
    +62       * @param properties information about the data store
    +63       * @throws MalformedURLException thrown if a configured URL is malformed
    +64       * @throws DownloadFailedException thrown if a timestamp cannot be checked
    +65       * on a configured URL
    +66       * @throws UpdateException thrown if there is an exception generating the
    +67       * update task
    +68       */
    +69      public StandardUpdateTask(DataStoreMetaInfo properties) throws MalformedURLException, DownloadFailedException, UpdateException {
    +70          super(properties);
    +71      }
    +72  
    +73      /**
    +74       * <p>Downloads the latest NVD CVE XML file from the web and imports it into
    +75       * the current CVE Database.</p>
    +76       *
    +77       * @throws UpdateException is thrown if there is an error updating the
    +78       * database
    +79       */
    +80      @Override
    +81      public void update() throws UpdateException {
    +82          int maxUpdates = 0;
    +83          try {
    +84              for (NvdCveInfo cve : getUpdateable()) {
    +85                  if (cve.getNeedsUpdate()) {
    +86                      maxUpdates += 1;
    +87                  }
    +88              }
    +89              if (maxUpdates <= 0) {
    +90                  return;
    +91              }
    +92              if (maxUpdates > 3) {
    +93                  Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
    +94                          "NVD CVE requires several updates; this could take a couple of minutes.");
    +95              }
    +96              if (maxUpdates > 0) {
    +97                  openDataStores();
    +98              }
    +99  
    +100             final int poolSize = (MAX_THREAD_POOL_SIZE > maxUpdates) ? MAX_THREAD_POOL_SIZE : maxUpdates;
    +101             final ExecutorService executorService = Executors.newFixedThreadPool(poolSize);
    +102             final Set<Future<CallableDownloadTask>> futures = new HashSet<Future<CallableDownloadTask>>(maxUpdates);
    +103 
    +104             for (NvdCveInfo cve : getUpdateable()) {
    +105                 if (cve.getNeedsUpdate()) {
    +106                     final File file1;
    +107                     final File file2;
    +108                     try {
    +109                         file1 = File.createTempFile("cve" + cve.getId() + "_", ".xml");
    +110                         file2 = File.createTempFile("cve_1_2_" + cve.getId() + "_", ".xml");
    +111                     } catch (IOException ex) {
    +112                         throw new UpdateException(ex);
    +113                     }
    +114                     final CallableDownloadTask call = new CallableDownloadTask(cve, file1, file2);
    +115                     futures.add(executorService.submit(call));
    +116                 }
    +117             }
    +118 
    +119             try {
    +120                 for (Future<CallableDownloadTask> future : futures) {
    +121                     final CallableDownloadTask filePair = future.get();
    +122                     String msg = String.format("Processing Started for NVD CVE - %s", filePair.getNvdCveInfo().getId());
    +123                     Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO, msg);
    +124                     try {
    +125                         importXML(filePair.getFirst(), filePair.getSecond());
    +126                         getCveDB().commit();
    +127                         getProperties().save(filePair.getNvdCveInfo());
    +128                     } catch (FileNotFoundException ex) {
    +129                         throw new UpdateException(ex);
    +130                     } catch (ParserConfigurationException ex) {
    +131                         throw new UpdateException(ex);
    +132                     } catch (SAXException ex) {
    +133                         throw new UpdateException(ex);
    +134                     } catch (IOException ex) {
    +135                         throw new UpdateException(ex);
    +136                     } catch (SQLException ex) {
    +137                         throw new UpdateException(ex);
    +138                     } catch (DatabaseException ex) {
    +139                         throw new UpdateException(ex);
    +140                     } catch (ClassNotFoundException ex) {
    +141                         throw new UpdateException(ex);
    +142                     } finally {
    +143                         filePair.cleanup();
    +144                     }
    +145                     msg = String.format("Processing Complete for NVD CVE - %s", filePair.getNvdCveInfo().getId());
    +146                     Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO, msg);
    +147                 }
    +148             } catch (InterruptedException ex) {
    +149                 executorService.shutdownNow();
    +150                 Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.FINE, "Thread was interupted", ex);
    +151                 throw new UpdateException(ex);
    +152             } catch (ExecutionException ex) {
    +153                 executorService.shutdownNow();
    +154                 Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.SEVERE, null, ex);
    +155                 throw new UpdateException(ex);
    +156             } finally {
    +157                 //yes, this should likely not be in the finally because of the shutdownNow above.
    +158                 executorService.shutdown();
    +159             }
    +160 
    +161             if (maxUpdates >= 1) { //ensure the modified file date gets written
    +162                 getProperties().save(getUpdateable().get(MODIFIED));
    +163                 getCveDB().cleanupDatabase();
    +164             }
    +165         } finally {
    +166             closeDataStores();
    +167         }
    +168     }
    +169 
    +170     //<editor-fold defaultstate="collapsed" desc="OLD version of update() - not multithreaded">
    +171     /*
    +172      * TODO - remove this
    +173      public void update() throws UpdateException {
    +174      try {
    +175      int maxUpdates = 0;
    +176      for (NvdCveInfo cve : getUpdateable()) {
    +177      if (cve.getNeedsUpdate()) {
    +178      maxUpdates += 1;
    +179      }
    +180      }
    +181      if (maxUpdates > 3) {
    +182      Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
    +183      "NVD CVE requires several updates; this could take a couple of minutes.");
    +184      }
    +185      if (maxUpdates > 0) {
    +186      openDataStores();
    +187      }
    +188 
    +189      int count = 0;
    +190      for (NvdCveInfo cve : getUpdateable()) {
    +191      if (cve.getNeedsUpdate()) {
    +192      count += 1;
    +193      Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
    +194      "Updating NVD CVE ({0} of {1})", new Object[]{count, maxUpdates});
    +195      URL url = new URL(cve.getUrl());
    +196      File outputPath = null;
    +197      File outputPath12 = null;
    +198      try {
    +199      Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
    +200      "Downloading {0}", cve.getUrl());
    +201      outputPath = File.createTempFile("cve" + cve.getId() + "_", ".xml");
    +202      Downloader.fetchFile(url, outputPath);
    +203 
    +204      url = new URL(cve.getOldSchemaVersionUrl());
    +205      outputPath12 = File.createTempFile("cve_1_2_" + cve.getId() + "_", ".xml");
    +206      Downloader.fetchFile(url, outputPath12);
    +207 
    +208      Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
    +209      "Processing {0}", cve.getUrl());
    +210 
    +211      importXML(outputPath, outputPath12);
    +212 
    +213      getCveDB().commit();
    +214      getProperties().save(cve);
    +215 
    +216      Logger.getLogger(StandardUpdateTask.class.getName()).log(Level.INFO,
    +217      "Completed update {0} of {1}", new Object[]{count, maxUpdates});
    +218      } catch (FileNotFoundException ex) {
    +219      throw new UpdateException(ex);
    +220      } catch (ParserConfigurationException ex) {
    +221      throw new UpdateException(ex);
    +222      } catch (SAXException ex) {
    +223      throw new UpdateException(ex);
    +224      } catch (IOException ex) {
    +225      throw new UpdateException(ex);
    +226      } catch (SQLException ex) {
    +227      throw new UpdateException(ex);
    +228      } catch (DatabaseException ex) {
    +229      throw new UpdateException(ex);
    +230      } catch (ClassNotFoundException ex) {
    +231      throw new UpdateException(ex);
    +232      } finally {
    +233      boolean deleted = false;
    +234      try {
    +235      if (outputPath != null && outputPath.exists()) {
    +236      deleted = outputPath.delete();
    +237      }
    +238      } finally {
    +239      if (outputPath != null && (outputPath.exists() || !deleted)) {
    +240      outputPath.deleteOnExit();
    +241      }
    +242      }
    +243      try {
    +244      deleted = false;
    +245      if (outputPath12 != null && outputPath12.exists()) {
    +246      deleted = outputPath12.delete();
    +247      }
    +248      } finally {
    +249      if (outputPath12 != null && (outputPath12.exists() || !deleted)) {
    +250      outputPath12.deleteOnExit();
    +251      }
    +252      }
    +253      }
    +254      }
    +255      }
    +256      if (maxUpdates >= 1) { //ensure the modified file date gets written
    +257      getProperties().save(getUpdateable().get(MODIFIED));
    +258      getCveDB().cleanupDatabase();
    +259      }
    +260      } catch (MalformedURLException ex) {
    +261      throw new UpdateException(ex);
    +262      } finally {
    +263      closeDataStores();
    +264      }
    +265      }
    +266      */
    +267     //</editor-fold>
    +268     /**
    +269      * Determines if the index needs to be updated. This is done by fetching the
    +270      * NVD CVE meta data and checking the last update date. If the data needs to
    +271      * be refreshed this method will return the NvdCveUrl for the files that
    +272      * need to be updated.
    +273      *
    +274      * @return the collection of files that need to be updated
    +275      * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
    +276      * data is incorrect
    +277      * @throws DownloadFailedException is thrown if there is an error.
    +278      * downloading the NVD CVE download data file
    +279      * @throws UpdateException Is thrown if there is an issue with the last
    +280      * updated properties file
    +281      */
    +282     @Override
    +283     protected Updateable updatesNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
    +284         Updateable updates = null;
    +285         try {
    +286             updates = retrieveCurrentTimestampsFromWeb();
    +287         } catch (InvalidDataException ex) {
    +288             final String msg = "Unable to retrieve valid timestamp from nvd cve downloads page";
    +289             Logger
    +290                     .getLogger(StandardUpdateTask.class
    +291                     .getName()).log(Level.FINE, msg, ex);
    +292             throw new DownloadFailedException(msg, ex);
    +293         } catch (InvalidSettingException ex) {
    +294             Logger.getLogger(StandardUpdateTask.class
    +295                     .getName()).log(Level.FINE, "Invalid setting found when retrieving timestamps", ex);
    +296             throw new DownloadFailedException(
    +297                     "Invalid settings", ex);
    +298         }
    +299 
    +300         if (updates == null) {
    +301             throw new DownloadFailedException("Unable to retrieve the timestamps of the currently published NVD CVE data");
    +302         }
    +303         final DataStoreMetaInfo properties = getProperties();
    +304         if (!properties.isEmpty()) {
    +305             try {
    +306                 float version;
    +307 
    +308                 if (properties.getProperty("version") == null) {
    +309                     setDeleteAndRecreate(true);
    +310                 } else {
    +311                     try {
    +312                         version = Float.parseFloat(properties.getProperty("version"));
    +313                         final float currentVersion = Float.parseFloat(CveDB.DB_SCHEMA_VERSION);
    +314                         if (currentVersion > version) {
    +315                             setDeleteAndRecreate(true);
    +316                         }
    +317                     } catch (NumberFormatException ex) {
    +318                         setDeleteAndRecreate(true);
    +319                     }
    +320                 }
    +321 
    +322                 if (shouldDeleteAndRecreate()) {
    +323                     return updates;
    +324                 }
    +325 
    +326                 final long lastUpdated = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED, "0"));
    +327                 final Date now = new Date();
    +328                 final int days = Settings.getInt(Settings.KEYS.CVE_MODIFIED_VALID_FOR_DAYS, 7);
    +329                 if (lastUpdated == updates.getTimeStamp(MODIFIED)) {
    +330                     updates.clear(); //we don't need to update anything.
    +331                 } else if (withinRange(lastUpdated, now.getTime(), days)) {
    +332                     for (NvdCveInfo entry : updates) {
    +333                         if (MODIFIED.equals(entry.getId())) {
    +334                             entry.setNeedsUpdate(true);
    +335                         } else {
    +336                             entry.setNeedsUpdate(false);
    +337                         }
    +338                     }
    +339                 } else { //we figure out which of the several XML files need to be downloaded.
    +340                     for (NvdCveInfo entry : updates) {
    +341                         if (MODIFIED.equals(entry.getId())) {
    +342                             entry.setNeedsUpdate(true);
    +343                         } else {
    +344                             long currentTimestamp = 0;
    +345                             try {
    +346                                 currentTimestamp = Long.parseLong(properties.getProperty(DataStoreMetaInfo.LAST_UPDATED_BASE + entry.getId(), "0"));
    +347                             } catch (NumberFormatException ex) {
    +348                                 final String msg = String.format("Error parsing '%s' '%s' from nvdcve.lastupdated",
    +349                                         DataStoreMetaInfo.LAST_UPDATED_BASE, entry.getId());
    +350                                 Logger
    +351                                         .getLogger(StandardUpdateTask.class
    +352                                         .getName()).log(Level.FINE, msg, ex);
    +353                             }
    +354                             if (currentTimestamp == entry.getTimestamp()) {
    +355                                 entry.setNeedsUpdate(false);
    +356                             }
    +357                         }
    +358                     }
    +359                 }
    +360             } catch (NumberFormatException ex) {
    +361                 final String msg = "An invalid schema version or timestamp exists in the data.properties file.";
    +362                 Logger
    +363                         .getLogger(StandardUpdateTask.class
    +364                         .getName()).log(Level.WARNING, msg);
    +365                 Logger.getLogger(StandardUpdateTask.class
    +366                         .getName()).log(Level.FINE, null, ex);
    +367             }
    +368         }
    +369         return updates;
    +370     }
    +371 
    +372     /**
    +373      * Retrieves the timestamps from the NVD CVE meta data file.
    +374      *
    +375      * @return the timestamp from the currently published nvdcve downloads page
    +376      * @throws MalformedURLException thrown if the URL for the NVD CCE Meta data
    +377      * is incorrect.
    +378      * @throws DownloadFailedException thrown if there is an error downloading
    +379      * the nvd cve meta data file
    +380      * @throws InvalidDataException thrown if there is an exception parsing the
    +381      * timestamps
    +382      * @throws InvalidSettingException thrown if the settings are invalid
    +383      */
    +384     private Updateable retrieveCurrentTimestampsFromWeb()
    +385             throws MalformedURLException, DownloadFailedException, InvalidDataException, InvalidSettingException {
    +386 
    +387         final Updateable updates = new Updateable();
    +388         updates.add(MODIFIED, Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL),
    +389                 Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL),
    +390                 false);
    +391 
    +392         final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR);
    +393         final int end = Calendar.getInstance().get(Calendar.YEAR);
    +394         final String baseUrl20 = Settings.getString(Settings.KEYS.CVE_SCHEMA_2_0);
    +395         final String baseUrl12 = Settings.getString(Settings.KEYS.CVE_SCHEMA_1_2);
    +396         for (int i = start; i <= end; i++) {
    +397             updates.add(Integer.toString(i), String.format(baseUrl20, i),
    +398                     String.format(baseUrl12, i),
    +399                     true);
    +400         }
    +401 
    +402         return updates;
    +403     }
    +404 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTask.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTask.html new file mode 100644 index 000000000..aec1fa8b5 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTask.html @@ -0,0 +1,65 @@ + + + + +UpdateTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import org.owasp.dependencycheck.data.UpdateException;
    +22  
    +23  /**
    +24   * An interface defining an update task.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public interface UpdateTask {
    +29  
    +30      /**
    +31       * <p>Updates the data store to the latest version.</p>
    +32       *
    +33       * @throws UpdateException is thrown if there is an error updating the
    +34       * database
    +35       */
    +36      void update() throws UpdateException;
    +37  
    +38      /**
    +39       * Get the value of deleteAndRecreate.
    +40       *
    +41       * @return the value of deleteAndRecreate
    +42       */
    +43      boolean shouldDeleteAndRecreate();
    +44  
    +45      /**
    +46       * Gets whether or not an update is needed.
    +47       *
    +48       * @return true or false depending on whether an update is needed
    +49       */
    +50      boolean isUpdateNeeded();
    +51  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html new file mode 100644 index 000000000..22ec9d97e --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html @@ -0,0 +1,74 @@ + + + + +UpdateTaskFactory xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.net.MalformedURLException;
    +22  import org.owasp.dependencycheck.data.UpdateException;
    +23  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +24  
    +25  /**
    +26   * An UpdateTask Factory that instantiates the correct UpdateTask based on the
    +27   * given configuration.
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public final class UpdateTaskFactory {
    +32  
    +33      /**
    +34       * private constructor for a utility class.
    +35       */
    +36      private UpdateTaskFactory() {
    +37          //empty contrusctor for utility class
    +38      }
    +39  
    +40      /**
    +41       * Constructs the appropriate update task based on configuration.
    +42       *
    +43       * @return an UpdateTask
    +44       * @throws MalformedURLException thrown if a configured URL is malformed
    +45       * @throws DownloadFailedException thrown if a timestamp cannot be checked
    +46       * on a configured URL
    +47       * @throws UpdateException thrown if there is an exception generating the
    +48       * update task
    +49       */
    +50      public static UpdateTask getUpdateTask() throws MalformedURLException, DownloadFailedException, UpdateException {
    +51          final UpdateTask task;
    +52          final DataStoreMetaInfo properties = new DataStoreMetaInfo();
    +53  //        if (properties.isBatchUpdateMode()) {
    +54  //            task = new BatchUpdateTask(properties);
    +55  //        } else {
    +56          task = new StandardUpdateTask(properties);
    +57  //        }
    +58          return task;
    +59      }
    +60  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/Updateable.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/Updateable.html new file mode 100644 index 000000000..07567d7ee --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/Updateable.html @@ -0,0 +1,195 @@ + + + + +Updateable xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.net.MalformedURLException;
    +22  import java.net.URL;
    +23  import java.util.Iterator;
    +24  import java.util.Map;
    +25  import java.util.Map.Entry;
    +26  import java.util.TreeMap;
    +27  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +28  import org.owasp.dependencycheck.utils.Downloader;
    +29  
    +30  /**
    +31   * Contains a collection of updateable NvdCveInfo objects. This is used to
    +32   * determine which files need to be downloaded and processed.
    +33   *
    +34   * @author Jeremy Long (jeremy.long@owasp.org)
    +35   */
    +36  public class Updateable implements java.lang.Iterable<NvdCveInfo>, Iterator<NvdCveInfo> {
    +37  
    +38      /**
    +39       * A collection of sources of data.
    +40       */
    +41      private Map<String, NvdCveInfo> collection = new TreeMap<String, NvdCveInfo>();
    +42  
    +43      /**
    +44       * Returns the collection of NvdCveInfo objects. This method is mainly used
    +45       * for testing.
    +46       *
    +47       * @return the collection of NvdCveInfo objects
    +48       */
    +49      protected Map<String, NvdCveInfo> getCollection() {
    +50          return collection;
    +51      }
    +52  
    +53      /**
    +54       * Gets whether or not an update is needed.
    +55       *
    +56       * @return true or false depending on whether an update is needed
    +57       */
    +58      public boolean isUpdateNeeded() {
    +59          for (NvdCveInfo item : this) {
    +60              if (item.getNeedsUpdate()) {
    +61                  return true;
    +62              }
    +63          }
    +64          return false;
    +65      }
    +66  
    +67      /**
    +68       * Adds a new entry of updateable information to the contained collection.
    +69       *
    +70       * @param id the key for the item to be added
    +71       * @param url the URL to download the item
    +72       * @param oldUrl the URL for the old version of the item (the NVD CVE old
    +73       * schema still contains useful data we need).
    +74       * @throws MalformedURLException thrown if the URL provided is invalid
    +75       * @throws DownloadFailedException thrown if the download fails.
    +76       */
    +77      public void add(String id, String url, String oldUrl) throws MalformedURLException, DownloadFailedException {
    +78          add(id, url, oldUrl, false);
    +79      }
    +80  
    +81      /**
    +82       * Adds a new entry of updateable information to the contained collection.
    +83       *
    +84       * @param id the key for the item to be added
    +85       * @param url the URL to download the item
    +86       * @param oldUrl the URL for the old version of the item (the NVD CVE old
    +87       * schema still contains useful data we need).
    +88       * @param needsUpdate whether or not the data needs to be updated
    +89       * @throws MalformedURLException thrown if the URL provided is invalid
    +90       * @throws DownloadFailedException thrown if the download fails.
    +91       */
    +92      public void add(String id, String url, String oldUrl, boolean needsUpdate) throws MalformedURLException, DownloadFailedException {
    +93          final NvdCveInfo item = new NvdCveInfo();
    +94          item.setNeedsUpdate(needsUpdate); //the others default to true, to make life easier later this should default to false.
    +95          item.setId(id);
    +96          item.setUrl(url);
    +97          item.setOldSchemaVersionUrl(oldUrl);
    +98          item.setTimestamp(Downloader.getLastModified(new URL(url)));
    +99          collection.put(id, item);
    +100     }
    +101 
    +102     /**
    +103      * Clears the contained collection of NvdCveInfo entries.
    +104      */
    +105     public void clear() {
    +106         collection.clear();
    +107     }
    +108 
    +109     /**
    +110      * Returns the timestamp for the given entry.
    +111      *
    +112      * @param key the key to lookup in the collection of NvdCveInfo items
    +113      * @return the timestamp for the given entry
    +114      */
    +115     public long getTimeStamp(String key) {
    +116         return collection.get(key).getTimestamp();
    +117     }
    +118     /**
    +119      * An internal iterator used to implement iterable.
    +120      */
    +121     private Iterator<Entry<String, NvdCveInfo>> iterableContent = null;
    +122 
    +123     /**
    +124      * <p>Returns an iterator for the NvdCveInfo contained.</p>
    +125      * <p><b>This method is not thread safe.</b></p>
    +126      *
    +127      * @return an NvdCveInfo Iterator
    +128      */
    +129     @Override
    +130     public Iterator<NvdCveInfo> iterator() {
    +131         iterableContent = collection.entrySet().iterator();
    +132         return this;
    +133     }
    +134 
    +135     /**
    +136      * <p>Returns whether or not there is another item in the collection.</p>
    +137      * <p><b>This method is not thread safe.</b></p>
    +138      *
    +139      * @return true or false depending on whether or not another item exists in
    +140      * the collection
    +141      */
    +142     @Override
    +143     public boolean hasNext() {
    +144         return iterableContent.hasNext();
    +145     }
    +146 
    +147     /**
    +148      * <p>Returns the next item in the collection.</p>
    +149      * <p><b>This method is not thread safe.</b></p>
    +150      *
    +151      * @return the next NvdCveInfo item in the collection
    +152      */
    +153     @Override
    +154     public NvdCveInfo next() {
    +155         return iterableContent.next().getValue();
    +156     }
    +157 
    +158     /**
    +159      * <p>Removes the current NvdCveInfo object from the collection.</p>
    +160      * <p><b>This method is not thread safe.</b></p>
    +161      */
    +162     @Override
    +163     public void remove() {
    +164         iterableContent.remove();
    +165     }
    +166 
    +167     /**
    +168      * Returns the specified item from the collection.
    +169      *
    +170      * @param key the key to lookup the return value
    +171      * @return the NvdCveInfo object stored using the specified key
    +172      */
    +173     NvdCveInfo get(String key) {
    +174         return collection.get(key);
    +175     }
    +176 
    +177     @Override
    +178     public String toString() {
    +179         return "Updateable{" + "size=" + collection.size() + '}';
    +180     }
    +181 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html new file mode 100644 index 000000000..029356918 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html @@ -0,0 +1,51 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.update + + + + +

    + org.owasp.dependencycheck.data.update +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html new file mode 100644 index 000000000..d406a7223 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html @@ -0,0 +1,112 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.data.update + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.update

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractUpdateTask +
    + BatchUpdateTask +
    + CallableDownloadTask +
    + DataStoreMetaInfo +
    + DatabaseUpdater +
    + NvdCveInfo +
    + StandardUpdateTask +
    + UpdateTask +
    + UpdateTaskFactory +
    + Updateable +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html new file mode 100644 index 000000000..70f0f6759 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html @@ -0,0 +1,593 @@ + + + + +Dependency xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.security.NoSuchAlgorithmException;
    +24  import java.util.ArrayList;
    +25  import java.util.List;
    +26  import java.util.Set;
    +27  import java.util.SortedSet;
    +28  import java.util.TreeSet;
    +29  import java.util.logging.Level;
    +30  import java.util.logging.Logger;
    +31  import org.owasp.dependencycheck.utils.Checksum;
    +32  import org.owasp.dependencycheck.utils.FileUtils;
    +33  
    +34  /**
    +35   * A program dependency. This object is one of the core components within
    +36   * DependencyCheck. It is used to collect information about the dependency in
    +37   * the form of evidence. The Evidence is then used to determine if there are any
    +38   * known, published, vulnerabilities associated with the program dependency.
    +39   *
    +40   * @author Jeremy Long (jeremy.long@owasp.org)
    +41   */
    +42  public class Dependency implements Comparable<Dependency> {
    +43  
    +44      /**
    +45       * The actual file path of the dependency on disk.
    +46       */
    +47      private String actualFilePath;
    +48      /**
    +49       * The file path to display.
    +50       */
    +51      private String filePath;
    +52      /**
    +53       * The file name of the dependency.
    +54       */
    +55      private String fileName;
    +56      /**
    +57       * The file extension of the dependency.
    +58       */
    +59      private String fileExtension;
    +60      /**
    +61       * The md5 hash of the dependency.
    +62       */
    +63      private String md5sum;
    +64      /**
    +65       * The SHA1 hash of the dependency.
    +66       */
    +67      private String sha1sum;
    +68      /**
    +69       * A list of Identifiers.
    +70       */
    +71      private Set<Identifier> identifiers;
    +72      /**
    +73       * A collection of vendor evidence.
    +74       */
    +75      private final EvidenceCollection vendorEvidence;
    +76      /**
    +77       * A collection of product evidence.
    +78       */
    +79      private final EvidenceCollection productEvidence;
    +80      /**
    +81       * A collection of version evidence.
    +82       */
    +83      private final EvidenceCollection versionEvidence;
    +84  
    +85      /**
    +86       * Constructs a new Dependency object.
    +87       */
    +88      public Dependency() {
    +89          vendorEvidence = new EvidenceCollection();
    +90          productEvidence = new EvidenceCollection();
    +91          versionEvidence = new EvidenceCollection();
    +92          identifiers = new TreeSet<Identifier>();
    +93          vulnerabilities = new TreeSet<Vulnerability>(new VulnerabilityComparator());
    +94      }
    +95  
    +96      /**
    +97       * Constructs a new Dependency object.
    +98       *
    +99       * @param file the File to create the dependency object from.
    +100      */
    +101     public Dependency(File file) {
    +102         this();
    +103         this.actualFilePath = file.getPath();
    +104         this.filePath = this.actualFilePath;
    +105         this.fileName = file.getName();
    +106         this.fileExtension = FileUtils.getFileExtension(fileName);
    +107         determineHashes(file);
    +108     }
    +109 
    +110     /**
    +111      * Returns the file name of the dependency.
    +112      *
    +113      * @return the file name of the dependency.
    +114      */
    +115     public String getFileName() {
    +116         return this.fileName;
    +117     }
    +118 
    +119     /**
    +120      * Sets the file name of the dependency.
    +121      *
    +122      * @param fileName the file name of the dependency.
    +123      */
    +124     public void setFileName(String fileName) {
    +125         this.fileName = fileName;
    +126     }
    +127 
    +128     /**
    +129      * Sets the actual file path of the dependency on disk.
    +130      *
    +131      * @param actualFilePath the file path of the dependency.
    +132      */
    +133     public void setActualFilePath(String actualFilePath) {
    +134         this.actualFilePath = actualFilePath;
    +135     }
    +136 
    +137     /**
    +138      * Gets the file path of the dependency.
    +139      *
    +140      * @return the file path of the dependency.
    +141      */
    +142     public String getActualFilePath() {
    +143         return this.actualFilePath;
    +144     }
    +145 
    +146     /**
    +147      * Sets the file path of the dependency.
    +148      *
    +149      * @param filePath the file path of the dependency.
    +150      */
    +151     public void setFilePath(String filePath) {
    +152         this.filePath = filePath;
    +153     }
    +154 
    +155     /**
    +156      * <p>Gets the file path of the dependency.</p> <p><b>NOTE:</b> This may not
    +157      * be the actual path of the file on disk. The actual path of the file on
    +158      * disk can be obtained via the getActualFilePath().</p>
    +159      *
    +160      * @return the file path of the dependency.
    +161      */
    +162     public String getFilePath() {
    +163         return this.filePath;
    +164     }
    +165 
    +166     /**
    +167      * Sets the file name of the dependency.
    +168      *
    +169      * @param fileExtension the file name of the dependency.
    +170      */
    +171     public void setFileExtension(String fileExtension) {
    +172         this.fileExtension = fileExtension;
    +173     }
    +174 
    +175     /**
    +176      * Gets the file extension of the dependency.
    +177      *
    +178      * @return the file extension of the dependency.
    +179      */
    +180     public String getFileExtension() {
    +181         return this.fileExtension;
    +182     }
    +183 
    +184     /**
    +185      * Returns the MD5 Checksum of the dependency file.
    +186      *
    +187      * @return the MD5 Checksum
    +188      */
    +189     public String getMd5sum() {
    +190         return this.md5sum;
    +191     }
    +192 
    +193     /**
    +194      * Sets the MD5 Checksum of the dependency.
    +195      *
    +196      * @param md5sum the MD5 Checksum
    +197      */
    +198     public void setMd5sum(String md5sum) {
    +199         this.md5sum = md5sum;
    +200     }
    +201 
    +202     /**
    +203      * Returns the SHA1 Checksum of the dependency.
    +204      *
    +205      * @return the SHA1 Checksum
    +206      */
    +207     public String getSha1sum() {
    +208         return this.sha1sum;
    +209     }
    +210 
    +211     /**
    +212      * Sets the SHA1 Checksum of the dependency.
    +213      *
    +214      * @param sha1sum the SHA1 Checksum
    +215      */
    +216     public void setSha1sum(String sha1sum) {
    +217         this.sha1sum = sha1sum;
    +218     }
    +219 
    +220     /**
    +221      * Returns a List of Identifiers.
    +222      *
    +223      * @return an ArrayList of Identifiers.
    +224      */
    +225     public Set<Identifier> getIdentifiers() {
    +226         return this.identifiers;
    +227     }
    +228 
    +229     /**
    +230      * Sets a List of Identifiers.
    +231      *
    +232      * @param identifiers A list of Identifiers.
    +233      */
    +234     public void setIdentifiers(Set<Identifier> identifiers) {
    +235         this.identifiers = identifiers;
    +236     }
    +237 
    +238     /**
    +239      * Adds an entry to the list of detected Identifiers for the dependency
    +240      * file.
    +241      *
    +242      * @param type the type of identifier (such as CPE)
    +243      * @param value the value of the identifier
    +244      * @param url the URL of the identifier
    +245      */
    +246     public void addIdentifier(String type, String value, String url) {
    +247         final Identifier i = new Identifier(type, value, url);
    +248         this.identifiers.add(i);
    +249     }
    +250 
    +251     /**
    +252      * Adds an entry to the list of detected Identifiers for the dependency
    +253      * file.
    +254      *
    +255      * @param identifier the identifier to add
    +256      */
    +257     public void addIdentifier(Identifier identifier) {
    +258         this.identifiers.add(identifier);
    +259     }
    +260 
    +261     /**
    +262      * Returns the evidence used to identify this dependency.
    +263      *
    +264      * @return an EvidenceCollection.
    +265      */
    +266     public EvidenceCollection getEvidence() {
    +267         return EvidenceCollection.merge(this.productEvidence, this.vendorEvidence, this.versionEvidence);
    +268     }
    +269 
    +270     /**
    +271      * Returns the evidence used to identify this dependency.
    +272      *
    +273      * @return an EvidenceCollection.
    +274      */
    +275     public EvidenceCollection getEvidenceUsed() {
    +276         return EvidenceCollection.mergeUsed(this.productEvidence, this.vendorEvidence, this.versionEvidence);
    +277     }
    +278 
    +279     /**
    +280      * Gets the Vendor Evidence.
    +281      *
    +282      * @return an EvidenceCollection.
    +283      */
    +284     public EvidenceCollection getVendorEvidence() {
    +285         return this.vendorEvidence;
    +286     }
    +287 
    +288     /**
    +289      * Gets the Product Evidence.
    +290      *
    +291      * @return an EvidenceCollection.
    +292      */
    +293     public EvidenceCollection getProductEvidence() {
    +294         return this.productEvidence;
    +295     }
    +296 
    +297     /**
    +298      * Gets the Version Evidence.
    +299      *
    +300      * @return an EvidenceCollection.
    +301      */
    +302     public EvidenceCollection getVersionEvidence() {
    +303         return this.versionEvidence;
    +304     }
    +305     /**
    +306      * A list of exceptions that occurred during analysis of this dependency.
    +307      */
    +308     private List<Exception> analysisExceptions = new ArrayList<Exception>();
    +309 
    +310     /**
    +311      * Get the value of analysisExceptions.
    +312      *
    +313      * @return the value of analysisExceptions
    +314      */
    +315     public List<Exception> getAnalysisExceptions() {
    +316         return analysisExceptions;
    +317     }
    +318 
    +319     /**
    +320      * Set the value of analysisExceptions.
    +321      *
    +322      * @param analysisExceptions new value of analysisExceptions
    +323      */
    +324     public void setAnalysisExceptions(List<Exception> analysisExceptions) {
    +325         this.analysisExceptions = analysisExceptions;
    +326     }
    +327 
    +328     /**
    +329      * Adds an exception to the analysis exceptions collection.
    +330      *
    +331      * @param ex an exception.
    +332      */
    +333     public void addAnalysisException(Exception ex) {
    +334         this.analysisExceptions.add(ex);
    +335     }
    +336     /**
    +337      * The description of the JAR file.
    +338      */
    +339     private String description;
    +340 
    +341     /**
    +342      * Get the value of description.
    +343      *
    +344      * @return the value of description
    +345      */
    +346     public String getDescription() {
    +347         return description;
    +348     }
    +349 
    +350     /**
    +351      * Set the value of description.
    +352      *
    +353      * @param description new value of description
    +354      */
    +355     public void setDescription(String description) {
    +356         this.description = description;
    +357     }
    +358     /**
    +359      * The license that this dependency uses.
    +360      */
    +361     private String license;
    +362 
    +363     /**
    +364      * Get the value of license.
    +365      *
    +366      * @return the value of license
    +367      */
    +368     public String getLicense() {
    +369         return license;
    +370     }
    +371 
    +372     /**
    +373      * Set the value of license.
    +374      *
    +375      * @param license new value of license
    +376      */
    +377     public void setLicense(String license) {
    +378         this.license = license;
    +379     }
    +380     /**
    +381      * A list of vulnerabilities for this dependency.
    +382      */
    +383     private SortedSet<Vulnerability> vulnerabilities;
    +384 
    +385     /**
    +386      * Get the list of vulnerabilities.
    +387      *
    +388      * @return the list of vulnerabilities
    +389      */
    +390     public SortedSet<Vulnerability> getVulnerabilities() {
    +391         return vulnerabilities;
    +392     }
    +393 
    +394     /**
    +395      * Set the value of vulnerabilities.
    +396      *
    +397      * @param vulnerabilities new value of vulnerabilities
    +398      */
    +399     public void setVulnerabilities(SortedSet<Vulnerability> vulnerabilities) {
    +400         this.vulnerabilities = vulnerabilities;
    +401     }
    +402 
    +403     /**
    +404      * Determines the sha1 and md5 sum for the given file.
    +405      *
    +406      * @param file the file to create checksums for
    +407      */
    +408     private void determineHashes(File file) {
    +409         String md5 = null;
    +410         String sha1 = null;
    +411         try {
    +412             md5 = Checksum.getMD5Checksum(file);
    +413             sha1 = Checksum.getSHA1Checksum(file);
    +414         } catch (IOException ex) {
    +415             final String msg = String.format("Unable to read '%s' to determine hashes.", file.getName());
    +416             Logger.getLogger(Dependency.class.getName()).log(Level.WARNING, msg);
    +417             Logger.getLogger(Dependency.class.getName()).log(Level.FINE, null, ex);
    +418         } catch (NoSuchAlgorithmException ex) {
    +419             final String msg = "Unable to use MD5 of SHA1 checksums.";
    +420             Logger.getLogger(Dependency.class.getName()).log(Level.WARNING, msg);
    +421             Logger.getLogger(Dependency.class.getName()).log(Level.FINE, null, ex);
    +422         }
    +423         this.setMd5sum(md5);
    +424         this.setSha1sum(sha1);
    +425     }
    +426 
    +427     /**
    +428      * Adds a vulnerability to the dependency.
    +429      *
    +430      * @param vulnerability a vulnerability outlining a vulnerability.
    +431      */
    +432     public void addVulnerability(Vulnerability vulnerability) {
    +433         this.vulnerabilities.add(vulnerability);
    +434     }
    +435     /**
    +436      * A collection of related dependencies.
    +437      */
    +438     private Set<Dependency> relatedDependencies = new TreeSet<Dependency>();
    +439 
    +440     /**
    +441      * Get the value of relatedDependencies.
    +442      *
    +443      * @return the value of relatedDependencies
    +444      */
    +445     public Set<Dependency> getRelatedDependencies() {
    +446         return relatedDependencies;
    +447     }
    +448 
    +449     /**
    +450      * Set the value of relatedDependencies.
    +451      *
    +452      * @param relatedDependencies new value of relatedDependencies
    +453      */
    +454     public void setRelatedDependencies(Set<Dependency> relatedDependencies) {
    +455         this.relatedDependencies = relatedDependencies;
    +456     }
    +457 
    +458     /**
    +459      * Adds a related dependency.
    +460      *
    +461      * @param dependency a reference to the related dependency
    +462      */
    +463     public void addRelatedDependency(Dependency dependency) {
    +464         relatedDependencies.add(dependency);
    +465     }
    +466 
    +467     /**
    +468      * Implementation of the Comparable<Dependency> interface. The comparison is
    +469      * solely based on the file name.
    +470      *
    +471      * @param o a dependency to compare
    +472      * @return an integer representing the natural ordering
    +473      */
    +474     public int compareTo(Dependency o) {
    +475         return this.getFileName().compareToIgnoreCase(o.getFileName());
    +476     }
    +477 
    +478     /**
    +479      * Implementation of the equals method.
    +480      *
    +481      * @param obj the object to compare
    +482      * @return true if the objects are equal, otherwise false
    +483      */
    +484     @Override
    +485     public boolean equals(Object obj) {
    +486         if (obj == null) {
    +487             return false;
    +488         }
    +489         if (getClass() != obj.getClass()) {
    +490             return false;
    +491         }
    +492         final Dependency other = (Dependency) obj;
    +493         if ((this.actualFilePath == null) ? (other.actualFilePath != null) : !this.actualFilePath.equals(other.actualFilePath)) {
    +494             return false;
    +495         }
    +496         if ((this.filePath == null) ? (other.filePath != null) : !this.filePath.equals(other.filePath)) {
    +497             return false;
    +498         }
    +499         if ((this.fileName == null) ? (other.fileName != null) : !this.fileName.equals(other.fileName)) {
    +500             return false;
    +501         }
    +502         if ((this.fileExtension == null) ? (other.fileExtension != null) : !this.fileExtension.equals(other.fileExtension)) {
    +503             return false;
    +504         }
    +505         if ((this.md5sum == null) ? (other.md5sum != null) : !this.md5sum.equals(other.md5sum)) {
    +506             return false;
    +507         }
    +508         if ((this.sha1sum == null) ? (other.sha1sum != null) : !this.sha1sum.equals(other.sha1sum)) {
    +509             return false;
    +510         }
    +511         if (this.identifiers != other.identifiers && (this.identifiers == null || !this.identifiers.equals(other.identifiers))) {
    +512             return false;
    +513         }
    +514         if (this.vendorEvidence != other.vendorEvidence && (this.vendorEvidence == null || !this.vendorEvidence.equals(other.vendorEvidence))) {
    +515             return false;
    +516         }
    +517         if (this.productEvidence != other.productEvidence && (this.productEvidence == null || !this.productEvidence.equals(other.productEvidence))) {
    +518             return false;
    +519         }
    +520         if (this.versionEvidence != other.versionEvidence && (this.versionEvidence == null || !this.versionEvidence.equals(other.versionEvidence))) {
    +521             return false;
    +522         }
    +523         if (this.analysisExceptions != other.analysisExceptions
    +524                 && (this.analysisExceptions == null || !this.analysisExceptions.equals(other.analysisExceptions))) {
    +525             return false;
    +526         }
    +527         if ((this.description == null) ? (other.description != null) : !this.description.equals(other.description)) {
    +528             return false;
    +529         }
    +530         if ((this.license == null) ? (other.license != null) : !this.license.equals(other.license)) {
    +531             return false;
    +532         }
    +533         if (this.vulnerabilities != other.vulnerabilities && (this.vulnerabilities == null || !this.vulnerabilities.equals(other.vulnerabilities))) {
    +534             return false;
    +535         }
    +536         if (this.relatedDependencies != other.relatedDependencies
    +537                 && (this.relatedDependencies == null || !this.relatedDependencies.equals(other.relatedDependencies))) {
    +538             return false;
    +539         }
    +540         return true;
    +541     }
    +542 
    +543     /**
    +544      * Generates the HashCode.
    +545      *
    +546      * @return the HashCode
    +547      */
    +548     @Override
    +549     public int hashCode() {
    +550         int hash = 3;
    +551         hash = 47 * hash + (this.actualFilePath != null ? this.actualFilePath.hashCode() : 0);
    +552         hash = 47 * hash + (this.filePath != null ? this.filePath.hashCode() : 0);
    +553         hash = 47 * hash + (this.fileName != null ? this.fileName.hashCode() : 0);
    +554         hash = 47 * hash + (this.fileExtension != null ? this.fileExtension.hashCode() : 0);
    +555         hash = 47 * hash + (this.md5sum != null ? this.md5sum.hashCode() : 0);
    +556         hash = 47 * hash + (this.sha1sum != null ? this.sha1sum.hashCode() : 0);
    +557         hash = 47 * hash + (this.identifiers != null ? this.identifiers.hashCode() : 0);
    +558         hash = 47 * hash + (this.vendorEvidence != null ? this.vendorEvidence.hashCode() : 0);
    +559         hash = 47 * hash + (this.productEvidence != null ? this.productEvidence.hashCode() : 0);
    +560         hash = 47 * hash + (this.versionEvidence != null ? this.versionEvidence.hashCode() : 0);
    +561         hash = 47 * hash + (this.analysisExceptions != null ? this.analysisExceptions.hashCode() : 0);
    +562         hash = 47 * hash + (this.description != null ? this.description.hashCode() : 0);
    +563         hash = 47 * hash + (this.license != null ? this.license.hashCode() : 0);
    +564         hash = 47 * hash + (this.vulnerabilities != null ? this.vulnerabilities.hashCode() : 0);
    +565         hash = 47 * hash + (this.relatedDependencies != null ? this.relatedDependencies.hashCode() : 0);
    +566         return hash;
    +567     }
    +568 
    +569     /**
    +570      * Standard toString() implementation showing the filename, actualFilePath,
    +571      * and filePath.
    +572      *
    +573      * @return the string representation of the file
    +574      */
    +575     @Override
    +576     public String toString() {
    +577         return "Dependency{ fileName='" + fileName + "', actualFilePath='" + actualFilePath + "', filePath='" + filePath + "'}";
    +578     }
    +579 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html new file mode 100644 index 000000000..83d7f7213 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html @@ -0,0 +1,282 @@ + + + + +Evidence xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  /**
    +22   * Evidence is a piece of information about a Dependency.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class Evidence implements Comparable<Evidence> {
    +27  
    +28      /**
    +29       * The confidence that the evidence is "high" quality.
    +30       */
    +31      public enum Confidence {
    +32  
    +33          /**
    +34           * High confidence evidence.
    +35           */
    +36          HIGHEST,
    +37          /**
    +38           * High confidence evidence.
    +39           */
    +40          HIGH,
    +41          /**
    +42           * Medium confidence evidence.
    +43           */
    +44          MEDIUM,
    +45          /**
    +46           * Low confidence evidence.
    +47           */
    +48          LOW
    +49      }
    +50  
    +51      /**
    +52       * Creates a new Evidence object.
    +53       */
    +54      public Evidence() {
    +55      }
    +56  
    +57      /**
    +58       * Creates a new Evidence objects.
    +59       *
    +60       * @param source the source of the evidence.
    +61       * @param name the name of the evidence.
    +62       * @param value the value of the evidence.
    +63       * @param confidence the confidence of the evidence.
    +64       */
    +65      public Evidence(String source, String name, String value, Confidence confidence) {
    +66          this.source = source;
    +67          this.name = name;
    +68          this.value = value;
    +69          this.confidence = confidence;
    +70      }
    +71      /**
    +72       * The name of the evidence.
    +73       */
    +74      private String name;
    +75  
    +76      /**
    +77       * Get the value of name.
    +78       *
    +79       * @return the value of name
    +80       */
    +81      public String getName() {
    +82          return name;
    +83      }
    +84  
    +85      /**
    +86       * Set the value of name.
    +87       *
    +88       * @param name new value of name
    +89       */
    +90      public void setName(String name) {
    +91          this.name = name;
    +92      }
    +93      /**
    +94       * The source of the evidence.
    +95       */
    +96      private String source;
    +97  
    +98      /**
    +99       * Get the value of source.
    +100      *
    +101      * @return the value of source
    +102      */
    +103     public String getSource() {
    +104         return source;
    +105     }
    +106 
    +107     /**
    +108      * Set the value of source.
    +109      *
    +110      * @param source new value of source
    +111      */
    +112     public void setSource(String source) {
    +113         this.source = source;
    +114     }
    +115     /**
    +116      * The value of the evidence.
    +117      */
    +118     private String value;
    +119 
    +120     /**
    +121      * Get the value of value.
    +122      *
    +123      * @return the value of value
    +124      */
    +125     public String getValue() {
    +126         used = true;
    +127         return value;
    +128     }
    +129 
    +130     /**
    +131      * Get the value of value. If setUsed is set to false this call to get will
    +132      * not mark the evidence as used.
    +133      *
    +134      * @param setUsed whether or not this call to getValue should cause the used
    +135      * flag to be updated
    +136      * @return the value of value
    +137      */
    +138     public String getValue(Boolean setUsed) {
    +139         used = used || setUsed;
    +140         return value;
    +141     }
    +142 
    +143     /**
    +144      * Set the value of value.
    +145      *
    +146      * @param value new value of value
    +147      */
    +148     public void setValue(String value) {
    +149         this.value = value;
    +150     }
    +151     /**
    +152      * A value indicating if the Evidence has been "used" (aka read).
    +153      */
    +154     private boolean used;
    +155 
    +156     /**
    +157      * Get the value of used.
    +158      *
    +159      * @return the value of used
    +160      */
    +161     public boolean isUsed() {
    +162         return used;
    +163     }
    +164 
    +165     /**
    +166      * Set the value of used.
    +167      *
    +168      * @param used new value of used
    +169      */
    +170     public void setUsed(boolean used) {
    +171         this.used = used;
    +172     }
    +173     /**
    +174      * The confidence level for the evidence.
    +175      */
    +176     private Confidence confidence;
    +177 
    +178     /**
    +179      * Get the value of confidence.
    +180      *
    +181      * @return the value of confidence
    +182      */
    +183     public Confidence getConfidence() {
    +184         return confidence;
    +185     }
    +186 
    +187     /**
    +188      * Set the value of confidence.
    +189      *
    +190      * @param confidence new value of confidence
    +191      */
    +192     public void setConfidence(Confidence confidence) {
    +193         this.confidence = confidence;
    +194     }
    +195 
    +196     /**
    +197      * Implements the hashCode for Evidence.
    +198      *
    +199      * @return hash code.
    +200      */
    +201     @Override
    +202     public int hashCode() {
    +203         int hash = 3;
    +204         hash = 67 * hash + (this.name != null ? this.name.hashCode() : 0);
    +205         hash = 67 * hash + (this.source != null ? this.source.hashCode() : 0);
    +206         hash = 67 * hash + (this.value != null ? this.value.hashCode() : 0);
    +207         hash = 67 * hash + (this.confidence != null ? this.confidence.hashCode() : 0);
    +208         return hash;
    +209     }
    +210 
    +211     /**
    +212      * Implements equals for Evidence.
    +213      *
    +214      * @param that an object to check the equality of.
    +215      * @return whether the two objects are equal.
    +216      */
    +217     @Override
    +218     public boolean equals(Object that) {
    +219         if (this == that) {
    +220             return true;
    +221         }
    +222         if (!(that instanceof Evidence)) {
    +223             return false;
    +224         }
    +225         final Evidence e = (Evidence) that;
    +226 
    +227         return testEquality(name, e.name) && testEquality(source, e.source) && testEquality(value, e.value)
    +228                 && (confidence == null ? e.confidence == null : confidence == e.confidence);
    +229     }
    +230 
    +231     /**
    +232      * Simple equality test for use within the equals method. This does a case
    +233      * insensitive compare.
    +234      *
    +235      * @param l a string to compare.
    +236      * @param r another string to compare.
    +237      * @return whether the two strings are the same.
    +238      */
    +239     private boolean testEquality(String l, String r) {
    +240         return l == null ? r == null : l.equalsIgnoreCase(r);
    +241     }
    +242 
    +243     /**
    +244      * Implementation of the comparable interface.
    +245      *
    +246      * @param o the evidence being compared
    +247      * @return an integer indicating the ordering of the two objects
    +248      */
    +249     public int compareTo(Evidence o) {
    +250         if (source.equals(o.source)) {
    +251             if (name.equals(o.name)) {
    +252                 if (value.equals(o.value)) {
    +253                     if (confidence.equals(o.confidence)) {
    +254                         return 0; //they are equal
    +255                     } else {
    +256                         return confidence.compareTo(o.confidence);
    +257                     }
    +258                 } else {
    +259                     return value.compareToIgnoreCase(o.value);
    +260                 }
    +261             } else {
    +262                 return name.compareToIgnoreCase(o.name);
    +263             }
    +264         } else {
    +265             return source.compareToIgnoreCase(o.source);
    +266         }
    +267     }
    +268 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html new file mode 100644 index 000000000..b7ad19d84 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html @@ -0,0 +1,398 @@ + + + + +EvidenceCollection xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.net.MalformedURLException;
    +22  import java.util.HashSet;
    +23  import java.util.Iterator;
    +24  import java.util.List;
    +25  import java.util.Set;
    +26  import java.util.TreeSet;
    +27  import java.util.logging.Level;
    +28  import java.util.logging.Logger;
    +29  import org.apache.commons.lang.StringUtils;
    +30  import org.owasp.dependencycheck.utils.DependencyVersion;
    +31  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +32  import org.owasp.dependencycheck.utils.Filter;
    +33  import org.owasp.dependencycheck.utils.UrlStringUtils;
    +34  
    +35  /**
    +36   * Used to maintain a collection of Evidence.
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public class EvidenceCollection implements Iterable<Evidence> {
    +41  
    +42      /**
    +43       * Used to iterate over highest confidence evidence contained in the
    +44       * collection.
    +45       */
    +46      private static final Filter<Evidence> HIGHEST_CONFIDENCE = new Filter<Evidence>() {
    +47          public boolean passes(Evidence evidence) {
    +48              return evidence.getConfidence() == Evidence.Confidence.HIGHEST;
    +49          }
    +50      };
    +51      /**
    +52       * Used to iterate over high confidence evidence contained in the
    +53       * collection.
    +54       */
    +55      private static final Filter<Evidence> HIGH_CONFIDENCE = new Filter<Evidence>() {
    +56          public boolean passes(Evidence evidence) {
    +57              return evidence.getConfidence() == Evidence.Confidence.HIGH;
    +58          }
    +59      };
    +60      /**
    +61       * Used to iterate over medium confidence evidence contained in the
    +62       * collection.
    +63       */
    +64      private static final Filter<Evidence> MEDIUM_CONFIDENCE = new Filter<Evidence>() {
    +65          public boolean passes(Evidence evidence) {
    +66              return evidence.getConfidence() == Evidence.Confidence.MEDIUM;
    +67          }
    +68      };
    +69      /**
    +70       * Used to iterate over low confidence evidence contained in the collection.
    +71       */
    +72      private static final Filter<Evidence> LOW_CONFIDENCE = new Filter<Evidence>() {
    +73          public boolean passes(Evidence evidence) {
    +74              return evidence.getConfidence() == Evidence.Confidence.LOW;
    +75          }
    +76      };
    +77      /**
    +78       * Used to iterate over evidence that has was used (aka read) from the
    +79       * collection.
    +80       */
    +81      private static final Filter<Evidence> EVIDENCE_USED = new Filter<Evidence>() {
    +82          public boolean passes(Evidence evidence) {
    +83              return evidence.isUsed();
    +84          }
    +85      };
    +86  
    +87      /**
    +88       * Used to iterate over evidence of the specified confidence.
    +89       *
    +90       * @param confidence the confidence level for the evidence to be iterated
    +91       * over.
    +92       * @return Iterable<Evidence> an iterable collectoin of evidence
    +93       */
    +94      public final Iterable<Evidence> iterator(Evidence.Confidence confidence) {
    +95          if (confidence == Evidence.Confidence.HIGHEST) {
    +96              return EvidenceCollection.HIGHEST_CONFIDENCE.filter(this.list);
    +97          } else if (confidence == Evidence.Confidence.HIGH) {
    +98              return EvidenceCollection.HIGH_CONFIDENCE.filter(this.list);
    +99          } else if (confidence == Evidence.Confidence.MEDIUM) {
    +100             return EvidenceCollection.MEDIUM_CONFIDENCE.filter(this.list);
    +101         } else {
    +102             return EvidenceCollection.LOW_CONFIDENCE.filter(this.list);
    +103         }
    +104     }
    +105     /**
    +106      * A collection of evidence.
    +107      */
    +108     private final Set<Evidence> list;
    +109     /**
    +110      * A collection of strings used to adjust Lucene's term weighting.
    +111      */
    +112     private final Set<String> weightedStrings;
    +113 
    +114     /**
    +115      * Creates a new EvidenceCollection.
    +116      */
    +117     public EvidenceCollection() {
    +118         list = new TreeSet<Evidence>();
    +119         weightedStrings = new HashSet<String>();
    +120     }
    +121 
    +122     /**
    +123      * Adds evidence to the collection.
    +124      *
    +125      * @param e Evidence.
    +126      */
    +127     public void addEvidence(Evidence e) {
    +128         list.add(e);
    +129     }
    +130 
    +131     /**
    +132      * Creates an Evidence object from the parameters and adds the resulting
    +133      * object to the collection.
    +134      *
    +135      * @param source the source of the Evidence.
    +136      * @param name the name of the Evidence.
    +137      * @param value the value of the Evidence.
    +138      * @param confidence the confidence of the Evidence.
    +139      */
    +140     public void addEvidence(String source, String name, String value, Evidence.Confidence confidence) {
    +141         final Evidence e = new Evidence(source, name, value, confidence);
    +142         addEvidence(e);
    +143     }
    +144 
    +145     /**
    +146      * Adds term to the weighting collection. The terms added here are used
    +147      * later to boost the score of other terms. This is a way of combining
    +148      * evidence from multiple sources to boost the confidence of the given
    +149      * evidence.
    +150      *
    +151      * Example: The term 'Apache' is found in the manifest of a JAR and is added
    +152      * to the Collection. When we parse the package names within the JAR file we
    +153      * may add these package names to the "weighted" strings collection to boost
    +154      * the score in the Lucene query. That way when we construct the Lucene
    +155      * query we find the term Apache in the collection AND in the weighted
    +156      * strings; as such, we will boost the confidence of the term Apache.
    +157      *
    +158      * @param str to add to the weighting collection.
    +159      */
    +160     public void addWeighting(String str) {
    +161         weightedStrings.add(str);
    +162     }
    +163 
    +164     /**
    +165      * Returns a set of Weightings - a list of terms that are believed to be of
    +166      * higher confidence when also found in another location.
    +167      *
    +168      * @return Set<String>
    +169      */
    +170     public Set<String> getWeighting() {
    +171         return weightedStrings;
    +172     }
    +173 
    +174     /**
    +175      * Returns the set of evidence.
    +176      *
    +177      * @return the set of evidence.
    +178      */
    +179     public Set<Evidence> getEvidence() {
    +180         return list;
    +181     }
    +182 
    +183     /**
    +184      * Returns the set of evidence from a given source.
    +185      *
    +186      * @param source the source of the evidence
    +187      * @return the set of evidence.
    +188      */
    +189     public Set<Evidence> getEvidence(String source) {
    +190         if (source == null) {
    +191             return null;
    +192         }
    +193         final Set<Evidence> ret = new HashSet<Evidence>();
    +194         for (Evidence e : list) {
    +195             if (source.equals(e.getSource())) {
    +196                 ret.add(e);
    +197             }
    +198         }
    +199         return ret;
    +200     }
    +201 
    +202     /**
    +203      * Returns the set of evidence from a given source and name.
    +204      *
    +205      * @param source the source of the evidence
    +206      * @param name the name of the evidence to return
    +207      * @return the set of evidence.
    +208      */
    +209     public Set<Evidence> getEvidence(String source, String name) {
    +210         if (source == null || name == null) {
    +211             return null;
    +212         }
    +213         final Set<Evidence> ret = new HashSet<Evidence>();
    +214         for (Evidence e : list) {
    +215             if (source.equals(e.getSource()) && name.equals(e.getName())) {
    +216                 ret.add(e);
    +217             }
    +218         }
    +219         return ret;
    +220     }
    +221 
    +222     /**
    +223      * Implements the iterator interface for the Evidence Collection.
    +224      *
    +225      * @return an Iterator<Evidence>.
    +226      */
    +227     public Iterator<Evidence> iterator() {
    +228         return list.iterator();
    +229     }
    +230 
    +231     /**
    +232      * Used to determine if a given string was used (aka read).
    +233      *
    +234      * @param text the string to search for.
    +235      * @return whether or not the string was used.
    +236      */
    +237     public boolean containsUsedString(String text) {
    +238         if (text == null) {
    +239             return false;
    +240         }
    +241         final String textToTest = text.toLowerCase();
    +242 
    +243         for (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(this)) {
    +244             //TODO consider changing the regex to only compare alpha-numeric (i.e. strip everything else)
    +245             final String value = urlCorrection(e.getValue().toLowerCase()).replaceAll("[\\s_-]", "");
    +246             if (value.contains(textToTest)) {
    +247                 return true;
    +248             }
    +249         }
    +250         return false;
    +251     }
    +252 
    +253     /**
    +254      * Used to determine if a given version was used (aka read) from the
    +255      * EvidenceCollection.
    +256      *
    +257      * @param version the version to search for within the collected evidence.
    +258      * @return whether or not the string was used.
    +259      */
    +260     public boolean containsUsedVersion(DependencyVersion version) {
    +261         if (version == null) {
    +262             return false;
    +263         }
    +264 
    +265         for (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(this)) {
    +266             final DependencyVersion value = DependencyVersionUtil.parseVersion(e.getValue());
    +267             if (value != null && value.matchesAtLeastThreeLevels(version)) {
    +268                 return true;
    +269             }
    +270         }
    +271         return false;
    +272     }
    +273 
    +274     /**
    +275      * Returns whether or not the collection contains evidence of a specified
    +276      * Confidence.
    +277      *
    +278      * @param confidence A Confidence value.
    +279      * @return boolean.
    +280      */
    +281     public boolean contains(Evidence.Confidence confidence) {
    +282         for (Evidence e : list) {
    +283             if (e.getConfidence().equals(confidence)) {
    +284                 return true;
    +285             }
    +286         }
    +287         return false;
    +288     }
    +289 
    +290     /**
    +291      * Merges multiple EvidenceCollections together, only merging evidence that
    +292      * was used, into a new EvidenceCollection.
    +293      *
    +294      * @param ec One or more EvidenceCollections.
    +295      * @return a new EvidenceCollection containing the used evidence.
    +296      */
    +297     public static EvidenceCollection mergeUsed(EvidenceCollection... ec) {
    +298         final EvidenceCollection ret = new EvidenceCollection();
    +299         for (EvidenceCollection col : ec) {
    +300             for (Evidence e : col.list) {
    +301                 if (e.isUsed()) {
    +302                     ret.addEvidence(e);
    +303                 }
    +304             }
    +305         }
    +306         return ret;
    +307     }
    +308 
    +309     /**
    +310      * Merges multiple EvidenceCollections together.
    +311      *
    +312      * @param ec One or more EvidenceCollections.
    +313      * @return a new EvidenceCollection.
    +314      */
    +315     public static EvidenceCollection merge(EvidenceCollection... ec) {
    +316         final EvidenceCollection ret = new EvidenceCollection();
    +317         for (EvidenceCollection col : ec) {
    +318             ret.list.addAll(col.list);
    +319             ret.weightedStrings.addAll(col.weightedStrings);
    +320         }
    +321         return ret;
    +322     }
    +323 
    +324     /**
    +325      * Returns a string of evidence 'values'.
    +326      *
    +327      * @return a string containing the evidence.
    +328      */
    +329     @Override
    +330     public String toString() {
    +331         final StringBuilder sb = new StringBuilder();
    +332         for (Evidence e : this.list) {
    +333             sb.append(e.getValue()).append(' ');
    +334         }
    +335         return sb.toString();
    +336     }
    +337 
    +338     /**
    +339      * Returns the number of elements in the EvidenceCollection.
    +340      *
    +341      * @return the number of elements in the collection.
    +342      */
    +343     public int size() {
    +344         return list.size();
    +345     }
    +346 
    +347     /**
    +348      * <p>Takes a string that may contain a fully qualified domain and it will
    +349      * return the string having removed the query string, the protocol, the
    +350      * sub-domain of 'www', and the file extension of the path.</p>
    +351      * <p>This is useful for checking if the evidence contains a specific
    +352      * string. The presence of the protocol, file extension, etc. may produce
    +353      * false positives.
    +354      *
    +355      * <p>Example, given the following input:</p>
    +356      * <code>'Please visit https://www.somedomain.com/path1/path2/file.php?id=439'</code>
    +357      * <p>The function would return:</p>
    +358      * <code>'Please visit somedomain path1 path2 file'</code>
    +359      *
    +360      * @param value the value that may contain a url
    +361      * @return the modified string
    +362      */
    +363     private String urlCorrection(String value) {
    +364         if (value == null || !UrlStringUtils.containsUrl(value)) {
    +365             return value;
    +366         }
    +367         final StringBuilder sb = new StringBuilder(value.length());
    +368         final String[] parts = value.split("\\s");
    +369         for (String part : parts) {
    +370             if (UrlStringUtils.isUrl(part)) {
    +371                 try {
    +372                     final List<String> data = UrlStringUtils.extractImportantUrlData(part);
    +373                     sb.append(' ').append(StringUtils.join(data, ' '));
    +374                 } catch (MalformedURLException ex) {
    +375                     Logger.getLogger(EvidenceCollection.class.getName()).log(Level.INFO, "error parsing " + part, ex);
    +376                     sb.append(' ').append(part);
    +377                 }
    +378             } else {
    +379                 sb.append(' ').append(part);
    +380             }
    +381         }
    +382         return sb.toString().trim();
    +383     }
    +384 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html new file mode 100644 index 000000000..71172e3a4 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html @@ -0,0 +1,204 @@ + + + + +Identifier xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  /**
    +22   *
    +23   * @author Jeremy Long (jeremy.long@owasp.org)
    +24   */
    +25  public class Identifier implements Comparable<Identifier> {
    +26  
    +27      /**
    +28       * Constructs a new Identifier with the specified data.
    +29       *
    +30       * @param type the identifier type.
    +31       * @param value the identifier value.
    +32       * @param url the identifier url.
    +33       */
    +34      public Identifier(String type, String value, String url) {
    +35          this.type = type;
    +36          this.value = value;
    +37          this.url = url;
    +38      }
    +39  
    +40      /**
    +41       * Constructs a new Identifier with the specified data.
    +42       *
    +43       * @param type the identifier type.
    +44       * @param value the identifier value.
    +45       * @param url the identifier url.
    +46       * @param description the description of the identifier.
    +47       */
    +48      public Identifier(String type, String value, String url, String description) {
    +49          this(type, value, url);
    +50          this.description = description;
    +51      }
    +52      /**
    +53       * The value of the identifier
    +54       */
    +55      private String value;
    +56  
    +57      /**
    +58       * Get the value of value.
    +59       *
    +60       * @return the value of value
    +61       */
    +62      public String getValue() {
    +63          return value;
    +64      }
    +65  
    +66      /**
    +67       * Set the value of value.
    +68       *
    +69       * @param value new value of value
    +70       */
    +71      public void setValue(String value) {
    +72          this.value = value;
    +73      }
    +74      /**
    +75       * The url for the identifier.
    +76       */
    +77      private String url;
    +78  
    +79      /**
    +80       * Get the value of url.
    +81       *
    +82       * @return the value of url
    +83       */
    +84      public String getUrl() {
    +85          return url;
    +86      }
    +87  
    +88      /**
    +89       * Set the value of url.
    +90       *
    +91       * @param url new value of url
    +92       */
    +93      public void setUrl(String url) {
    +94          this.url = url;
    +95      }
    +96      /**
    +97       * The type of the identifier.
    +98       */
    +99      private String type;
    +100 
    +101     /**
    +102      * Get the value of type.
    +103      *
    +104      * @return the value of type
    +105      */
    +106     public String getType() {
    +107         return type;
    +108     }
    +109 
    +110     /**
    +111      * <p>Set the value of type.</p><p>Example would be "CPE".</p>
    +112      *
    +113      * @param type new value of type
    +114      */
    +115     public void setType(String type) {
    +116         this.type = type;
    +117     }
    +118     /**
    +119      * A description of the identifier.
    +120      */
    +121     private String description;
    +122 
    +123     /**
    +124      * Get the value of description.
    +125      *
    +126      * @return the value of description
    +127      */
    +128     public String getDescription() {
    +129         return description;
    +130     }
    +131 
    +132     /**
    +133      * Set the value of description.
    +134      *
    +135      * @param description new value of description
    +136      */
    +137     public void setDescription(String description) {
    +138         this.description = description;
    +139     }
    +140 
    +141     @Override
    +142     public boolean equals(Object obj) {
    +143         if (obj == null) {
    +144             return false;
    +145         }
    +146         if (getClass() != obj.getClass()) {
    +147             return false;
    +148         }
    +149         final Identifier other = (Identifier) obj;
    +150         if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
    +151             return false;
    +152         }
    +153         if ((this.type == null) ? (other.type != null) : !this.type.equals(other.type)) {
    +154             return false;
    +155         }
    +156         return true;
    +157     }
    +158 
    +159     @Override
    +160     public int hashCode() {
    +161         int hash = 5;
    +162         hash = 53 * hash + (this.value != null ? this.value.hashCode() : 0);
    +163         hash = 53 * hash + (this.type != null ? this.type.hashCode() : 0);
    +164         return hash;
    +165     }
    +166 
    +167     /**
    +168      * Standard implementation of toString; displays identifier value and type.
    +169      *
    +170      * @return a String representation of the object
    +171      */
    +172     @Override
    +173     public String toString() {
    +174         return "Identifier{" + "value=" + value + ", type=" + type + '}';
    +175     }
    +176 
    +177     /**
    +178      * Implementation of the comparator interface. This compares the value of
    +179      * the identifier only.
    +180      *
    +181      * @param o the object being compared
    +182      * @return an integer indicating the ordering
    +183      */
    +184     public int compareTo(Identifier o) {
    +185         if (o == null) {
    +186             return -1;
    +187         }
    +188         return this.value.compareTo(o.value);
    +189     }
    +190 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html new file mode 100644 index 000000000..46248ed3b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html @@ -0,0 +1,167 @@ + + + + +Reference xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.io.Serializable;
    +22  
    +23  /**
    +24   * An external reference for a vulnerability. This contains a name, URL, and a
    +25   * source.
    +26   *
    +27   * @author Jeremy Long (jeremy.long@owasp.org)
    +28   */
    +29  public class Reference implements Serializable, Comparable<Reference> {
    +30  
    +31      /**
    +32       * the serial version uid.
    +33       */
    +34      private static final long serialVersionUID = -3444464824563008021L;
    +35      /**
    +36       * The name of the reference.
    +37       */
    +38      private String name;
    +39  
    +40      /**
    +41       * Get the value of name.
    +42       *
    +43       * @return the value of name
    +44       */
    +45      public String getName() {
    +46          return name;
    +47      }
    +48  
    +49      /**
    +50       * Set the value of name.
    +51       *
    +52       * @param name new value of name
    +53       */
    +54      public void setName(String name) {
    +55          this.name = name;
    +56      }
    +57      /**
    +58       * the url for the reference.
    +59       */
    +60      private String url;
    +61  
    +62      /**
    +63       * Get the value of url.
    +64       *
    +65       * @return the value of url
    +66       */
    +67      public String getUrl() {
    +68          return url;
    +69      }
    +70  
    +71      /**
    +72       * Set the value of url.
    +73       *
    +74       * @param url new value of url
    +75       */
    +76      public void setUrl(String url) {
    +77          this.url = url;
    +78      }
    +79      /**
    +80       * the source of the reference.
    +81       */
    +82      private String source;
    +83  
    +84      /**
    +85       * Get the value of source.
    +86       *
    +87       * @return the value of source
    +88       */
    +89      public String getSource() {
    +90          return source;
    +91      }
    +92  
    +93      /**
    +94       * Set the value of source.
    +95       *
    +96       * @param source new value of source
    +97       */
    +98      public void setSource(String source) {
    +99          this.source = source;
    +100     }
    +101 
    +102     @Override
    +103     public boolean equals(Object obj) {
    +104         if (obj == null) {
    +105             return false;
    +106         }
    +107         if (getClass() != obj.getClass()) {
    +108             return false;
    +109         }
    +110         final Reference other = (Reference) obj;
    +111         if ((this.name == null) ? (other.name != null) : !this.name.equals(other.name)) {
    +112             return false;
    +113         }
    +114         if ((this.url == null) ? (other.url != null) : !this.url.equals(other.url)) {
    +115             return false;
    +116         }
    +117         if ((this.source == null) ? (other.source != null) : !this.source.equals(other.source)) {
    +118             return false;
    +119         }
    +120         return true;
    +121     }
    +122 
    +123     @Override
    +124     public int hashCode() {
    +125         int hash = 5;
    +126         hash = 67 * hash + (this.name != null ? this.name.hashCode() : 0);
    +127         hash = 67 * hash + (this.url != null ? this.url.hashCode() : 0);
    +128         hash = 67 * hash + (this.source != null ? this.source.hashCode() : 0);
    +129         return hash;
    +130     }
    +131 
    +132     /**
    +133      * Implementation of the comparable interface.
    +134      *
    +135      * @param o the Reference being compared
    +136      * @return an integer indicating the ordering of the two objects
    +137      */
    +138     public int compareTo(Reference o) {
    +139         if (source.equals(o.source)) {
    +140             if (name.equals(o.name)) {
    +141                 if (url.equals(o.url)) {
    +142                     return 0; //they are equal
    +143                 } else {
    +144                     return url.compareTo(o.url);
    +145                 }
    +146             } else {
    +147                 return name.compareTo(o.name);
    +148             }
    +149         } else {
    +150             return source.compareTo(o.source);
    +151         }
    +152     }
    +153 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html new file mode 100644 index 000000000..35e66d2f8 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html @@ -0,0 +1,412 @@ + + + + +Vulnerability xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.io.Serializable;
    +22  import java.util.Set;
    +23  import java.util.SortedSet;
    +24  import java.util.TreeSet;
    +25  
    +26  /**
    +27   * Contains the information about a vulnerability.
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public class Vulnerability implements Serializable, Comparable<Vulnerability> {
    +32  
    +33      /**
    +34       * The serial version uid.
    +35       */
    +36      private static final long serialVersionUID = 307319490326651052L;
    +37      /**
    +38       * The name of the vulnerability.
    +39       */
    +40      private String name;
    +41  
    +42      /**
    +43       * Get the value of name.
    +44       *
    +45       * @return the value of name
    +46       */
    +47      public String getName() {
    +48          return name;
    +49      }
    +50  
    +51      /**
    +52       * Set the value of name.
    +53       *
    +54       * @param name new value of name
    +55       */
    +56      public void setName(String name) {
    +57          this.name = name;
    +58      }
    +59      /**
    +60       * the description of the vulnerability.
    +61       */
    +62      private String description;
    +63  
    +64      /**
    +65       * Get the value of description.
    +66       *
    +67       * @return the value of description
    +68       */
    +69      public String getDescription() {
    +70          return description;
    +71      }
    +72  
    +73      /**
    +74       * Set the value of description.
    +75       *
    +76       * @param description new value of description
    +77       */
    +78      public void setDescription(String description) {
    +79          this.description = description;
    +80      }
    +81      /**
    +82       * References for this vulnerability.
    +83       */
    +84      private SortedSet<Reference> references = new TreeSet<Reference>();
    +85  
    +86      /**
    +87       * Get the value of references.
    +88       *
    +89       * @return the value of references
    +90       */
    +91      public Set<Reference> getReferences() {
    +92          return references;
    +93      }
    +94  
    +95      /**
    +96       * Set the value of references.
    +97       *
    +98       * @param references new value of references
    +99       */
    +100     public void setReferences(SortedSet<Reference> references) {
    +101         this.references = references;
    +102     }
    +103 
    +104     /**
    +105      * Adds a reference to the references collection.
    +106      *
    +107      * @param ref a reference for the vulnerability
    +108      */
    +109     public void addReference(Reference ref) {
    +110         this.references.add(ref);
    +111     }
    +112 
    +113     /**
    +114      * Adds a reference.
    +115      *
    +116      * @param referenceSource the source of the reference
    +117      * @param referenceName the referenceName of the reference
    +118      * @param referenceUrl the url of the reference
    +119      */
    +120     public void addReference(String referenceSource, String referenceName, String referenceUrl) {
    +121         final Reference ref = new Reference();
    +122         ref.setSource(referenceSource);
    +123         ref.setName(referenceName);
    +124         ref.setUrl(referenceUrl);
    +125         this.references.add(ref);
    +126     }
    +127     /**
    +128      * A set of vulnerable software.
    +129      */
    +130     private SortedSet<VulnerableSoftware> vulnerableSoftware = new TreeSet<VulnerableSoftware>();
    +131 
    +132     /**
    +133      * Get the value of vulnerableSoftware.
    +134      *
    +135      * @return the value of vulnerableSoftware
    +136      */
    +137     public Set<VulnerableSoftware> getVulnerableSoftware() {
    +138         return vulnerableSoftware;
    +139     }
    +140 
    +141     /**
    +142      * Set the value of vulnerableSoftware.
    +143      *
    +144      * @param vulnerableSoftware new value of vulnerableSoftware
    +145      */
    +146     public void setVulnerableSoftware(SortedSet<VulnerableSoftware> vulnerableSoftware) {
    +147         this.vulnerableSoftware = vulnerableSoftware;
    +148     }
    +149 
    +150     /**
    +151      * Adds an entry for vulnerable software.
    +152      *
    +153      * @param cpe string representation of a CPE entry
    +154      * @return if the add succeeded
    +155      */
    +156     public boolean addVulnerableSoftware(String cpe) {
    +157         return addVulnerableSoftware(cpe, null);
    +158     }
    +159 
    +160     /**
    +161      * Adds an entry for vulnerable software.
    +162      *
    +163      * @param cpe string representation of a cpe
    +164      * @param previousVersion the previous version (previousVersion - cpe would
    +165      * be considered vulnerable)
    +166      * @return if the add succeeded
    +167      */
    +168     public boolean addVulnerableSoftware(String cpe, String previousVersion) {
    +169         final VulnerableSoftware vs = new VulnerableSoftware();
    +170         vs.setCpe(cpe);
    +171         if (previousVersion != null) {
    +172             vs.setPreviousVersion(previousVersion);
    +173         }
    +174         return updateVulnerableSoftware(vs);
    +175     }
    +176 
    +177     /**
    +178      * Adds or updates a vulnerable software entry.
    +179      *
    +180      * @param vulnSoftware the vulnerable software
    +181      * @return if the update succeeded
    +182      */
    +183     public boolean updateVulnerableSoftware(VulnerableSoftware vulnSoftware) {
    +184         if (vulnerableSoftware.contains(vulnSoftware)) {
    +185             vulnerableSoftware.remove(vulnSoftware);
    +186         }
    +187         return vulnerableSoftware.add(vulnSoftware);
    +188     }
    +189     /**
    +190      * The CWE for the vulnerability.
    +191      */
    +192     private String cwe;
    +193 
    +194     /**
    +195      * Get the value of cwe.
    +196      *
    +197      * @return the value of cwe
    +198      */
    +199     public String getCwe() {
    +200         return cwe;
    +201     }
    +202 
    +203     /**
    +204      * Set the value of cwe.
    +205      *
    +206      * @param cwe new value of cwe
    +207      */
    +208     public void setCwe(String cwe) {
    +209         this.cwe = cwe;
    +210     }
    +211     /**
    +212      * CVSS Score.
    +213      */
    +214     private float cvssScore;
    +215 
    +216     /**
    +217      * Get the value of cvssScore.
    +218      *
    +219      * @return the value of cvssScore
    +220      */
    +221     public float getCvssScore() {
    +222         return cvssScore;
    +223     }
    +224 
    +225     /**
    +226      * Set the value of cvssScore.
    +227      *
    +228      * @param cvssScore new value of cvssScore
    +229      */
    +230     public void setCvssScore(float cvssScore) {
    +231         this.cvssScore = cvssScore;
    +232     }
    +233     /**
    +234      * CVSS Access Vector.
    +235      */
    +236     private String cvssAccessVector;
    +237 
    +238     /**
    +239      * Get the value of cvssAccessVector.
    +240      *
    +241      * @return the value of cvssAccessVector
    +242      */
    +243     public String getCvssAccessVector() {
    +244         return cvssAccessVector;
    +245     }
    +246 
    +247     /**
    +248      * Set the value of cvssAccessVector.
    +249      *
    +250      * @param cvssAccessVector new value of cvssAccessVector
    +251      */
    +252     public void setCvssAccessVector(String cvssAccessVector) {
    +253         this.cvssAccessVector = cvssAccessVector;
    +254     }
    +255     /**
    +256      * CVSS Access Complexity.
    +257      */
    +258     private String cvssAccessComplexity;
    +259 
    +260     /**
    +261      * Get the value of cvssAccessComplexity.
    +262      *
    +263      * @return the value of cvssAccessComplexity
    +264      */
    +265     public String getCvssAccessComplexity() {
    +266         return cvssAccessComplexity;
    +267     }
    +268 
    +269     /**
    +270      * Set the value of cvssAccessComplexity.
    +271      *
    +272      * @param cvssAccessComplexity new value of cvssAccessComplexity
    +273      */
    +274     public void setCvssAccessComplexity(String cvssAccessComplexity) {
    +275         this.cvssAccessComplexity = cvssAccessComplexity;
    +276     }
    +277     /**
    +278      * CVSS Authentication.
    +279      */
    +280     private String cvssAuthentication;
    +281 
    +282     /**
    +283      * Get the value of cvssAuthentication.
    +284      *
    +285      * @return the value of cvssAuthentication
    +286      */
    +287     public String getCvssAuthentication() {
    +288         return cvssAuthentication;
    +289     }
    +290 
    +291     /**
    +292      * Set the value of cvssAuthentication.
    +293      *
    +294      * @param cvssAuthentication new value of cvssAuthentication
    +295      */
    +296     public void setCvssAuthentication(String cvssAuthentication) {
    +297         this.cvssAuthentication = cvssAuthentication;
    +298     }
    +299     /**
    +300      * CVSS Confidentiality Impact.
    +301      */
    +302     private String cvssConfidentialityImpact;
    +303 
    +304     /**
    +305      * Get the value of cvssConfidentialityImpact.
    +306      *
    +307      * @return the value of cvssConfidentialityImpact
    +308      */
    +309     public String getCvssConfidentialityImpact() {
    +310         return cvssConfidentialityImpact;
    +311     }
    +312 
    +313     /**
    +314      * Set the value of cvssConfidentialityImpact.
    +315      *
    +316      * @param cvssConfidentialityImpact new value of cvssConfidentialityImpact
    +317      */
    +318     public void setCvssConfidentialityImpact(String cvssConfidentialityImpact) {
    +319         this.cvssConfidentialityImpact = cvssConfidentialityImpact;
    +320     }
    +321     /**
    +322      * CVSS Integrity Impact.
    +323      */
    +324     private String cvssIntegrityImpact;
    +325 
    +326     /**
    +327      * Get the value of cvssIntegrityImpact.
    +328      *
    +329      * @return the value of cvssIntegrityImpact
    +330      */
    +331     public String getCvssIntegrityImpact() {
    +332         return cvssIntegrityImpact;
    +333     }
    +334 
    +335     /**
    +336      * Set the value of cvssIntegrityImpact.
    +337      *
    +338      * @param cvssIntegrityImpact new value of cvssIntegrityImpact
    +339      */
    +340     public void setCvssIntegrityImpact(String cvssIntegrityImpact) {
    +341         this.cvssIntegrityImpact = cvssIntegrityImpact;
    +342     }
    +343     /**
    +344      * CVSS Availability Impact.
    +345      */
    +346     private String cvssAvailabilityImpact;
    +347 
    +348     /**
    +349      * Get the value of cvssAvailabilityImpact.
    +350      *
    +351      * @return the value of cvssAvailabilityImpact
    +352      */
    +353     public String getCvssAvailabilityImpact() {
    +354         return cvssAvailabilityImpact;
    +355     }
    +356 
    +357     /**
    +358      * Set the value of cvssAvailabilityImpact.
    +359      *
    +360      * @param cvssAvailabilityImpact new value of cvssAvailabilityImpact
    +361      */
    +362     public void setCvssAvailabilityImpact(String cvssAvailabilityImpact) {
    +363         this.cvssAvailabilityImpact = cvssAvailabilityImpact;
    +364     }
    +365 
    +366     @Override
    +367     public boolean equals(Object obj) {
    +368         if (obj == null) {
    +369             return false;
    +370         }
    +371         if (getClass() != obj.getClass()) {
    +372             return false;
    +373         }
    +374         final Vulnerability other = (Vulnerability) obj;
    +375         if ((this.name == null) ? (other.name != null) : !this.name.equals(other.name)) {
    +376             return false;
    +377         }
    +378         return true;
    +379     }
    +380 
    +381     @Override
    +382     public int hashCode() {
    +383         int hash = 5;
    +384         hash = 41 * hash + (this.name != null ? this.name.hashCode() : 0);
    +385         return hash;
    +386     }
    +387 
    +388     /**
    +389      * Compares two vulnerabilities.
    +390      *
    +391      * @param v a vulnerability to be compared
    +392      * @return a negative integer, zero, or a positive integer as this object is
    +393      * less than, equal to, or greater than the specified vulnerability
    +394      */
    +395     public int compareTo(Vulnerability v) {
    +396         return v.getName().compareTo(this.getName());
    +397     }
    +398 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html new file mode 100644 index 000000000..6d4708fd5 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html @@ -0,0 +1,60 @@ + + + + +VulnerabilityComparator xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.io.Serializable;
    +22  import java.util.Comparator;
    +23  
    +24  /**
    +25   * Comparator for Vulnerability objects.
    +26   *
    +27   * @author Jeremy Long (jeremy.long@owasp.org)
    +28   */
    +29  public class VulnerabilityComparator implements Comparator<Vulnerability>, Serializable {
    +30  
    +31      /**
    +32       * The serial version UID.
    +33       */
    +34      private static final long serialVersionUID = 1L;
    +35  
    +36      /**
    +37       * Implements the comparison of vulnerabilities.
    +38       *
    +39       * @param o1 a vulnerability
    +40       * @param o2 a second vulnerability
    +41       * @return the comparison
    +42       */
    +43      public int compare(Vulnerability o1, Vulnerability o2) {
    +44          return o2.getName().compareTo(o1.getName());
    +45      }
    +46  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html new file mode 100644 index 000000000..f08d602b1 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html @@ -0,0 +1,347 @@ + + + + +VulnerableSoftware xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.dependency;
    +20  
    +21  import java.io.Serializable;
    +22  import java.io.UnsupportedEncodingException;
    +23  import java.net.URLDecoder;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.owasp.dependencycheck.data.cpe.IndexEntry;
    +27  
    +28  /**
    +29   * A record containing information about vulnerable software. This is referenced
    +30   * from a vulnerability.
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class VulnerableSoftware extends IndexEntry implements Serializable, Comparable<VulnerableSoftware> {
    +35  
    +36      /**
    +37       * The serial version UID.
    +38       */
    +39      private static final long serialVersionUID = 307319490326651052L;
    +40  
    +41      /**
    +42       * Parse a CPE entry from the cpe string representation.
    +43       *
    +44       * @param cpe a cpe entry (e.g. cpe:/a:vendor:software:version)
    +45       */
    +46      public void setCpe(String cpe) {
    +47          try {
    +48              parseName(cpe);
    +49          } catch (UnsupportedEncodingException ex) {
    +50              final String msg = String.format("Character encoding is unsupported for CPE '%s'.", cpe);
    +51              Logger.getLogger(VulnerableSoftware.class.getName()).log(Level.WARNING, msg);
    +52              Logger.getLogger(VulnerableSoftware.class.getName()).log(Level.FINE, null, ex);
    +53              setName(cpe);
    +54          }
    +55      }
    +56  
    +57      /**
    +58       * <p>Parses a name attribute value, from the cpe.xml, into its
    +59       * corresponding parts: vendor, product, version, revision.</p>
    +60       * <p>Example:</p>
    +61       * <code>&nbsp;&nbsp;&nbsp;cpe:/a:apache:struts:1.1:rc2</code>
    +62       *
    +63       * <p>Results in:</p> <ul> <li>Vendor: apache</li> <li>Product: struts</li>
    +64       * <li>Version: 1.1</li> <li>Revision: rc2</li> </ul>
    +65       *
    +66       * @param cpeName the cpe name
    +67       * @throws UnsupportedEncodingException should never be thrown...
    +68       */
    +69      @Override
    +70      public void parseName(String cpeName) throws UnsupportedEncodingException {
    +71          this.name = cpeName;
    +72          if (cpeName != null && cpeName.length() > 7) {
    +73              final String[] data = cpeName.substring(7).split(":");
    +74              if (data.length >= 1) {
    +75                  this.setVendor(URLDecoder.decode(data[0].replace("+", "%2B"), "UTF-8")); //.replaceAll("[_-]", " ")
    +76                  if (data.length >= 2) {
    +77                      this.setProduct(URLDecoder.decode(data[1].replace("+", "%2B"), "UTF-8")); //.replaceAll("[_-]", " ")
    +78                      if (data.length >= 3) {
    +79                          version = URLDecoder.decode(data[2].replace("+", "%2B"), "UTF-8");
    +80                          if (data.length >= 4) {
    +81                              revision = URLDecoder.decode(data[3].replace("+", "%2B"), "UTF-8");
    +82                              if (data.length >= 5) {
    +83                                  edition = URLDecoder.decode(data[4].replace("+", "%2B"), "UTF-8");
    +84                              }
    +85                          }
    +86                      }
    +87                  }
    +88              }
    +89          }
    +90      }
    +91      /**
    +92       * If present, indicates that previous version are vulnerable.
    +93       */
    +94      private String previousVersion;
    +95  
    +96      /**
    +97       * Indicates if previous versions of this software are vulnerable.
    +98       *
    +99       * @return if previous versions of this software are vulnerable
    +100      */
    +101     public boolean hasPreviousVersion() {
    +102         return previousVersion != null;
    +103     }
    +104 
    +105     /**
    +106      * Get the value of previousVersion.
    +107      *
    +108      * @return the value of previousVersion
    +109      */
    +110     public String getPreviousVersion() {
    +111         return previousVersion;
    +112     }
    +113 
    +114     /**
    +115      * Set the value of previousVersion.
    +116      *
    +117      * @param previousVersion new value of previousVersion
    +118      */
    +119     public void setPreviousVersion(String previousVersion) {
    +120         this.previousVersion = previousVersion;
    +121     }
    +122 
    +123     /**
    +124      * Standard equals implementation to compare this VulnerableSoftware to
    +125      * another object.
    +126      *
    +127      * @param obj the object to compare
    +128      * @return whether or not the objects are equal
    +129      */
    +130     @Override
    +131     public boolean equals(Object obj) {
    +132         if (obj == null) {
    +133             return false;
    +134         }
    +135         if (getClass() != obj.getClass()) {
    +136             return false;
    +137         }
    +138         final VulnerableSoftware other = (VulnerableSoftware) obj;
    +139         if ((this.getName() == null) ? (other.getName() != null) : !this.getName().equals(other.getName())) {
    +140             return false;
    +141         }
    +142         return true;
    +143     }
    +144 
    +145     /**
    +146      * Standard implementation of hashCode.
    +147      *
    +148      * @return the hashCode for the object
    +149      */
    +150     @Override
    +151     public int hashCode() {
    +152         int hash = 7;
    +153         hash = 83 * hash + (this.getName() != null ? this.getName().hashCode() : 0);
    +154         return hash;
    +155     }
    +156 
    +157     /**
    +158      * Standard toString() implementation display the name and whether or not
    +159      * previous versions are also affected.
    +160      *
    +161      * @return a string representation of the object
    +162      */
    +163     @Override
    +164     public String toString() {
    +165         return "VulnerableSoftware{ name=" + name + ", previousVersion=" + previousVersion + '}';
    +166     }
    +167 
    +168     /**
    +169      * Implementation of the comparable interface.
    +170      *
    +171      * @param vs the VulnerableSoftware to compare
    +172      * @return an integer indicating the ordering of the two objects
    +173      */
    +174     @Override
    +175     public int compareTo(VulnerableSoftware vs) {
    +176         int result = 0;
    +177         final String[] left = this.getName().split(":");
    +178         final String[] right = vs.getName().split(":");
    +179         final int max = (left.length <= right.length) ? left.length : right.length;
    +180         if (max > 0) {
    +181             for (int i = 0; result == 0 && i < max; i++) {
    +182                 final String[] subLeft = left[i].split("\\.");
    +183                 final String[] subRight = right[i].split("\\.");
    +184                 final int subMax = (subLeft.length <= subRight.length) ? subLeft.length : subRight.length;
    +185                 if (subMax > 0) {
    +186                     for (int x = 0; result == 0 && x < subMax; x++) {
    +187                         if (isPositiveInteger(subLeft[x]) && isPositiveInteger(subRight[x])) {
    +188                             final int iLeft = Integer.parseInt(subLeft[x]);
    +189                             final int iRight = Integer.parseInt(subRight[x]);
    +190                             if (iLeft != iRight) {
    +191                                 if (iLeft > iRight) {
    +192                                     result = 2;
    +193                                 } else {
    +194                                     result = -2;
    +195                                 }
    +196                             }
    +197                         } else {
    +198                             result = subLeft[x].compareToIgnoreCase(subRight[x]);
    +199                         }
    +200                     }
    +201                     if (result == 0) {
    +202                         if (subLeft.length > subRight.length) {
    +203                             result = 2;
    +204                         }
    +205                         if (subRight.length > subLeft.length) {
    +206                             result = -2;
    +207                         }
    +208                     }
    +209                 } else {
    +210                     result = left[i].compareToIgnoreCase(right[i]);
    +211                 }
    +212             }
    +213             if (result == 0) {
    +214                 if (left.length > right.length) {
    +215                     result = 2;
    +216                 }
    +217                 if (right.length > left.length) {
    +218                     result = -2;
    +219                 }
    +220             }
    +221         } else {
    +222             result = this.getName().compareToIgnoreCase(vs.getName());
    +223         }
    +224         return result;
    +225     }
    +226 
    +227     /**
    +228      * Determines if the string passed in is a positive integer.
    +229      *
    +230      * @param str the string to test
    +231      * @return true if the string only contains 0-9, otherwise false.
    +232      */
    +233     private static boolean isPositiveInteger(final String str) {
    +234         if (str == null || str.isEmpty()) {
    +235             return false;
    +236         }
    +237         for (int i = 0; i < str.length(); i++) {
    +238             final char c = str.charAt(i);
    +239             if (c < '0' || c > '9') {
    +240                 return false;
    +241             }
    +242         }
    +243         return true;
    +244     }
    +245     /**
    +246      * The name of the cpe.
    +247      */
    +248     private String name;
    +249 
    +250     /**
    +251      * Get the value of name.
    +252      *
    +253      * @return the value of name
    +254      */
    +255     public String getName() {
    +256         return name;
    +257     }
    +258 
    +259     /**
    +260      * Set the value of name.
    +261      *
    +262      * @param name new value of name
    +263      */
    +264     public void setName(String name) {
    +265         this.name = name;
    +266     }
    +267     /**
    +268      * The product version number.
    +269      */
    +270     private String version;
    +271 
    +272     /**
    +273      * Get the value of version.
    +274      *
    +275      * @return the value of version
    +276      */
    +277     public String getVersion() {
    +278         return version;
    +279     }
    +280 
    +281     /**
    +282      * Set the value of version.
    +283      *
    +284      * @param version new value of version
    +285      */
    +286     public void setVersion(String version) {
    +287         this.version = version;
    +288     }
    +289     /**
    +290      * The product revision version.
    +291      */
    +292     private String revision;
    +293 
    +294     /**
    +295      * Get the value of revision.
    +296      *
    +297      * @return the value of revision
    +298      */
    +299     public String getRevision() {
    +300         return revision;
    +301     }
    +302 
    +303     /**
    +304      * Set the value of revision.
    +305      *
    +306      * @param revision new value of revision
    +307      */
    +308     public void setRevision(String revision) {
    +309         this.revision = revision;
    +310     }
    +311     /**
    +312      * The product edition.
    +313      */
    +314     private String edition;
    +315 
    +316     /**
    +317      * Get the value of edition.
    +318      *
    +319      * @return the value of edition
    +320      */
    +321     public String getEdition() {
    +322         return edition;
    +323     }
    +324 
    +325     /**
    +326      * Set the value of edition.
    +327      *
    +328      * @param edition new value of edition
    +329      */
    +330     public void setEdition(String edition) {
    +331         this.edition = edition;
    +332     }
    +333 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html new file mode 100644 index 000000000..6aab2d62a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html @@ -0,0 +1,48 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.dependency + + + + +

    + org.owasp.dependencycheck.dependency +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html new file mode 100644 index 000000000..5a02760b5 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html @@ -0,0 +1,107 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.dependency + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.dependency

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + Confidence +
    + Dependency +
    + Evidence +
    + EvidenceCollection +
    + Identifier +
    + Reference +
    + Vulnerability +
    + VulnerabilityComparator +
    + VulnerableSoftware +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html new file mode 100644 index 000000000..ad1872895 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html @@ -0,0 +1,110 @@ + + + + +MavenNamespaceFilter xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.jaxb.pom;
    +20  
    +21  import org.xml.sax.Attributes;
    +22  import org.xml.sax.SAXException;
    +23  import org.xml.sax.helpers.XMLFilterImpl;
    +24  
    +25  /**
    +26   * This filter is used when parsing POM documents. Some POM documents do not
    +27   * specify the xmlns="http://maven.apache.org/POM/4.0.0". This filter ensures
    +28   * that the correct namespace is added so that both types of POMs can be read.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class MavenNamespaceFilter extends XMLFilterImpl {
    +33  
    +34      /**
    +35       * The namespace to add for Maven POMs.
    +36       */
    +37      private static final String NAMESPACE = "http://maven.apache.org/POM/4.0.0";
    +38      /**
    +39       * A flag indicating whether or not the namespace (prefix) has been added.
    +40       */
    +41      private boolean namespaceAdded = false;
    +42  
    +43      /**
    +44       * Called at the start of the document parsing.
    +45       *
    +46       * @throws SAXException thrown if there is a SAXException
    +47       */
    +48      @Override
    +49      public void startDocument() throws SAXException {
    +50          super.startDocument();
    +51          startPrefixMapping("", NAMESPACE);
    +52      }
    +53  
    +54      /**
    +55       * Called when an element is started.
    +56       *
    +57       * @param uri the uri
    +58       * @param localName the localName
    +59       * @param qName the qualified name
    +60       * @param atts the attributes
    +61       * @throws SAXException thrown if there is a SAXException
    +62       */
    +63      @Override
    +64      public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
    +65          super.startElement(NAMESPACE, localName, qName, atts);
    +66      }
    +67  
    +68      /**
    +69       * Indicatees the start of the document.
    +70       *
    +71       * @param uri the uri
    +72       * @param localName the localName
    +73       * @param qName the qualified name
    +74       * @throws SAXException thrown if there is a SAXException
    +75       */
    +76      @Override
    +77      public void endElement(String uri, String localName, String qName)
    +78              throws SAXException {
    +79          super.endElement(NAMESPACE, localName, qName);
    +80      }
    +81  
    +82      /**
    +83       * Called when prefix mapping is started.
    +84       *
    +85       * @param prefix the prefix
    +86       * @param url the url
    +87       * @throws SAXException thrown if there is a SAXException
    +88       */
    +89      @Override
    +90      public void startPrefixMapping(String prefix, String url) throws SAXException {
    +91          if (!this.namespaceAdded) {
    +92              namespaceAdded = true;
    +93              super.startPrefixMapping("", NAMESPACE);
    +94          }
    +95      }
    +96  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html new file mode 100644 index 000000000..22346274d --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html @@ -0,0 +1,209 @@ + + + + +Activation xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   *
    +20   *         The conditions within the build runtime environment which will trigger
    +21   *         the automatic inclusion of the build profile.
    +22   *
    +23   *
    +24   * <p>Java class for Activation complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="Activation">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="activeByDefault" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +34   *         &lt;element name="jdk" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="os" type="{http://maven.apache.org/POM/4.0.0}ActivationOS" minOccurs="0"/>
    +36   *         &lt;element name="property" type="{http://maven.apache.org/POM/4.0.0}ActivationProperty" minOccurs="0"/>
    +37   *         &lt;element name="file" type="{http://maven.apache.org/POM/4.0.0}ActivationFile" minOccurs="0"/>
    +38   *       &lt;/all>
    +39   *     &lt;/restriction>
    +40   *   &lt;/complexContent>
    +41   * &lt;/complexType>
    +42   * </pre>
    +43   *
    +44   *
    +45   */
    +46  @XmlAccessorType(XmlAccessType.FIELD)
    +47  @XmlType(name = "Activation", propOrder = {
    +48  
    +49  })
    +50  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +51  public class Activation {
    +52  
    +53      @XmlElement(defaultValue = "false")
    +54      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +55      protected Boolean activeByDefault;
    +56      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57      protected String jdk;
    +58      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +59      protected ActivationOS os;
    +60      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +61      protected ActivationProperty property;
    +62      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +63      protected ActivationFile file;
    +64  
    +65      /**
    +66       * Gets the value of the activeByDefault property.
    +67       *
    +68       * @return
    +69       *     possible object is
    +70       *     {@link Boolean }
    +71       *
    +72       */
    +73      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +74      public Boolean isActiveByDefault() {
    +75          return activeByDefault;
    +76      }
    +77  
    +78      /**
    +79       * Sets the value of the activeByDefault property.
    +80       *
    +81       * @param value
    +82       *     allowed object is
    +83       *     {@link Boolean }
    +84       *
    +85       */
    +86      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +87      public void setActiveByDefault(Boolean value) {
    +88          this.activeByDefault = value;
    +89      }
    +90  
    +91      /**
    +92       * Gets the value of the jdk property.
    +93       *
    +94       * @return
    +95       *     possible object is
    +96       *     {@link String }
    +97       *
    +98       */
    +99      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +100     public String getJdk() {
    +101         return jdk;
    +102     }
    +103 
    +104     /**
    +105      * Sets the value of the jdk property.
    +106      *
    +107      * @param value
    +108      *     allowed object is
    +109      *     {@link String }
    +110      *
    +111      */
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     public void setJdk(String value) {
    +114         this.jdk = value;
    +115     }
    +116 
    +117     /**
    +118      * Gets the value of the os property.
    +119      *
    +120      * @return
    +121      *     possible object is
    +122      *     {@link ActivationOS }
    +123      *
    +124      */
    +125     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +126     public ActivationOS getOs() {
    +127         return os;
    +128     }
    +129 
    +130     /**
    +131      * Sets the value of the os property.
    +132      *
    +133      * @param value
    +134      *     allowed object is
    +135      *     {@link ActivationOS }
    +136      *
    +137      */
    +138     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +139     public void setOs(ActivationOS value) {
    +140         this.os = value;
    +141     }
    +142 
    +143     /**
    +144      * Gets the value of the property property.
    +145      *
    +146      * @return
    +147      *     possible object is
    +148      *     {@link ActivationProperty }
    +149      *
    +150      */
    +151     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +152     public ActivationProperty getProperty() {
    +153         return property;
    +154     }
    +155 
    +156     /**
    +157      * Sets the value of the property property.
    +158      *
    +159      * @param value
    +160      *     allowed object is
    +161      *     {@link ActivationProperty }
    +162      *
    +163      */
    +164     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +165     public void setProperty(ActivationProperty value) {
    +166         this.property = value;
    +167     }
    +168 
    +169     /**
    +170      * Gets the value of the file property.
    +171      *
    +172      * @return
    +173      *     possible object is
    +174      *     {@link ActivationFile }
    +175      *
    +176      */
    +177     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +178     public ActivationFile getFile() {
    +179         return file;
    +180     }
    +181 
    +182     /**
    +183      * Sets the value of the file property.
    +184      *
    +185      * @param value
    +186      *     allowed object is
    +187      *     {@link ActivationFile }
    +188      *
    +189      */
    +190     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +191     public void setFile(ActivationFile value) {
    +192         this.file = value;
    +193     }
    +194 
    +195 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html new file mode 100644 index 000000000..f45d41234 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html @@ -0,0 +1,121 @@ + + + + +ActivationFile xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *         This is the file specification used to activate the profile. The missing value will be the location
    +20   *         of a file that needs to exist, and if it doesn't the profile will be activated.  On the other hand exists will test
    +21   *         for the existence of the file and if it is there the profile will be activated.
    +22   *
    +23   *
    +24   * <p>Java class for ActivationFile complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="ActivationFile">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="missing" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="exists" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *       &lt;/all>
    +36   *     &lt;/restriction>
    +37   *   &lt;/complexContent>
    +38   * &lt;/complexType>
    +39   * </pre>
    +40   *
    +41   *
    +42   */
    +43  @XmlAccessorType(XmlAccessType.FIELD)
    +44  @XmlType(name = "ActivationFile", propOrder = {
    +45  
    +46  })
    +47  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +48  public class ActivationFile {
    +49  
    +50      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +51      protected String missing;
    +52      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +53      protected String exists;
    +54  
    +55      /**
    +56       * Gets the value of the missing property.
    +57       *
    +58       * @return
    +59       *     possible object is
    +60       *     {@link String }
    +61       *
    +62       */
    +63      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +64      public String getMissing() {
    +65          return missing;
    +66      }
    +67  
    +68      /**
    +69       * Sets the value of the missing property.
    +70       *
    +71       * @param value
    +72       *     allowed object is
    +73       *     {@link String }
    +74       *
    +75       */
    +76      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +77      public void setMissing(String value) {
    +78          this.missing = value;
    +79      }
    +80  
    +81      /**
    +82       * Gets the value of the exists property.
    +83       *
    +84       * @return
    +85       *     possible object is
    +86       *     {@link String }
    +87       *
    +88       */
    +89      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +90      public String getExists() {
    +91          return exists;
    +92      }
    +93  
    +94      /**
    +95       * Sets the value of the exists property.
    +96       *
    +97       * @param value
    +98       *     allowed object is
    +99       *     {@link String }
    +100      *
    +101      */
    +102     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +103     public void setExists(String value) {
    +104         this.exists = value;
    +105     }
    +106 
    +107 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html new file mode 100644 index 000000000..02f9e8e9b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html @@ -0,0 +1,178 @@ + + + + +ActivationOS xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *         This is an activator which will detect an operating system's attributes in order to activate
    +20   *         its profile.
    +21   *
    +22   *
    +23   * <p>Java class for ActivationOS complex type.
    +24   *
    +25   * <p>The following schema fragment specifies the expected content contained within this class.
    +26   *
    +27   * <pre>
    +28   * &lt;complexType name="ActivationOS">
    +29   *   &lt;complexContent>
    +30   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +31   *       &lt;all>
    +32   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="family" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="arch" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *       &lt;/all>
    +37   *     &lt;/restriction>
    +38   *   &lt;/complexContent>
    +39   * &lt;/complexType>
    +40   * </pre>
    +41   *
    +42   *
    +43   */
    +44  @XmlAccessorType(XmlAccessType.FIELD)
    +45  @XmlType(name = "ActivationOS", propOrder = {
    +46  
    +47  })
    +48  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +49  public class ActivationOS {
    +50  
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String name;
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected String family;
    +55      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +56      protected String arch;
    +57      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +58      protected String version;
    +59  
    +60      /**
    +61       * Gets the value of the name property.
    +62       *
    +63       * @return
    +64       *     possible object is
    +65       *     {@link String }
    +66       *
    +67       */
    +68      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +69      public String getName() {
    +70          return name;
    +71      }
    +72  
    +73      /**
    +74       * Sets the value of the name property.
    +75       *
    +76       * @param value
    +77       *     allowed object is
    +78       *     {@link String }
    +79       *
    +80       */
    +81      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +82      public void setName(String value) {
    +83          this.name = value;
    +84      }
    +85  
    +86      /**
    +87       * Gets the value of the family property.
    +88       *
    +89       * @return
    +90       *     possible object is
    +91       *     {@link String }
    +92       *
    +93       */
    +94      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +95      public String getFamily() {
    +96          return family;
    +97      }
    +98  
    +99      /**
    +100      * Sets the value of the family property.
    +101      *
    +102      * @param value
    +103      *     allowed object is
    +104      *     {@link String }
    +105      *
    +106      */
    +107     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +108     public void setFamily(String value) {
    +109         this.family = value;
    +110     }
    +111 
    +112     /**
    +113      * Gets the value of the arch property.
    +114      *
    +115      * @return
    +116      *     possible object is
    +117      *     {@link String }
    +118      *
    +119      */
    +120     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +121     public String getArch() {
    +122         return arch;
    +123     }
    +124 
    +125     /**
    +126      * Sets the value of the arch property.
    +127      *
    +128      * @param value
    +129      *     allowed object is
    +130      *     {@link String }
    +131      *
    +132      */
    +133     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +134     public void setArch(String value) {
    +135         this.arch = value;
    +136     }
    +137 
    +138     /**
    +139      * Gets the value of the version property.
    +140      *
    +141      * @return
    +142      *     possible object is
    +143      *     {@link String }
    +144      *
    +145      */
    +146     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +147     public String getVersion() {
    +148         return version;
    +149     }
    +150 
    +151     /**
    +152      * Sets the value of the version property.
    +153      *
    +154      * @param value
    +155      *     allowed object is
    +156      *     {@link String }
    +157      *
    +158      */
    +159     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +160     public void setVersion(String value) {
    +161         this.version = value;
    +162     }
    +163 
    +164 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html new file mode 100644 index 000000000..7435bb0cb --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html @@ -0,0 +1,121 @@ + + + + +ActivationProperty xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *         This is the property specification used to activate a profile. If the value field is empty,
    +20   *         then the existence of the named property will activate the profile, otherwise it does a case-sensitive
    +21   *         match against the property value as well.
    +22   *
    +23   *
    +24   * <p>Java class for ActivationProperty complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="ActivationProperty">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="value" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *       &lt;/all>
    +36   *     &lt;/restriction>
    +37   *   &lt;/complexContent>
    +38   * &lt;/complexType>
    +39   * </pre>
    +40   *
    +41   *
    +42   */
    +43  @XmlAccessorType(XmlAccessType.FIELD)
    +44  @XmlType(name = "ActivationProperty", propOrder = {
    +45  
    +46  })
    +47  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +48  public class ActivationProperty {
    +49  
    +50      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +51      protected String name;
    +52      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +53      protected String value;
    +54  
    +55      /**
    +56       * Gets the value of the name property.
    +57       *
    +58       * @return
    +59       *     possible object is
    +60       *     {@link String }
    +61       *
    +62       */
    +63      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +64      public String getName() {
    +65          return name;
    +66      }
    +67  
    +68      /**
    +69       * Sets the value of the name property.
    +70       *
    +71       * @param value
    +72       *     allowed object is
    +73       *     {@link String }
    +74       *
    +75       */
    +76      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +77      public void setName(String value) {
    +78          this.name = value;
    +79      }
    +80  
    +81      /**
    +82       * Gets the value of the value property.
    +83       *
    +84       * @return
    +85       *     possible object is
    +86       *     {@link String }
    +87       *
    +88       */
    +89      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +90      public String getValue() {
    +91          return value;
    +92      }
    +93  
    +94      /**
    +95       * Sets the value of the value property.
    +96       *
    +97       * @param value
    +98       *     allowed object is
    +99       *     {@link String }
    +100      *
    +101      */
    +102     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +103     public void setValue(String value) {
    +104         this.value = value;
    +105     }
    +106 
    +107 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html new file mode 100644 index 000000000..d47013cf3 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html @@ -0,0 +1,827 @@ + + + + +Build xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlType;
    +17  
    +18  
    +19  /**
    +20   *  3.0.0+
    +21   *
    +22   * <p>Java class for Build complex type.
    +23   *
    +24   * <p>The following schema fragment specifies the expected content contained within this class.
    +25   *
    +26   * <pre>
    +27   * &lt;complexType name="Build">
    +28   *   &lt;complexContent>
    +29   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +30   *       &lt;all>
    +31   *         &lt;element name="sourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="scriptSourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="testSourceDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="outputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="testOutputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="extensions" minOccurs="0">
    +37   *           &lt;complexType>
    +38   *             &lt;complexContent>
    +39   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +40   *                 &lt;sequence>
    +41   *                   &lt;element name="extension" type="{http://maven.apache.org/POM/4.0.0}Extension" maxOccurs="unbounded" minOccurs="0"/>
    +42   *                 &lt;/sequence>
    +43   *               &lt;/restriction>
    +44   *             &lt;/complexContent>
    +45   *           &lt;/complexType>
    +46   *         &lt;/element>
    +47   *         &lt;element name="defaultGoal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +48   *         &lt;element name="resources" minOccurs="0">
    +49   *           &lt;complexType>
    +50   *             &lt;complexContent>
    +51   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +52   *                 &lt;sequence>
    +53   *                   &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +54   *                 &lt;/sequence>
    +55   *               &lt;/restriction>
    +56   *             &lt;/complexContent>
    +57   *           &lt;/complexType>
    +58   *         &lt;/element>
    +59   *         &lt;element name="testResources" minOccurs="0">
    +60   *           &lt;complexType>
    +61   *             &lt;complexContent>
    +62   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +63   *                 &lt;sequence>
    +64   *                   &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +65   *                 &lt;/sequence>
    +66   *               &lt;/restriction>
    +67   *             &lt;/complexContent>
    +68   *           &lt;/complexType>
    +69   *         &lt;/element>
    +70   *         &lt;element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +71   *         &lt;element name="finalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +72   *         &lt;element name="filters" minOccurs="0">
    +73   *           &lt;complexType>
    +74   *             &lt;complexContent>
    +75   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +76   *                 &lt;sequence>
    +77   *                   &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +78   *                 &lt;/sequence>
    +79   *               &lt;/restriction>
    +80   *             &lt;/complexContent>
    +81   *           &lt;/complexType>
    +82   *         &lt;/element>
    +83   *         &lt;element name="pluginManagement" type="{http://maven.apache.org/POM/4.0.0}PluginManagement" minOccurs="0"/>
    +84   *         &lt;element name="plugins" minOccurs="0">
    +85   *           &lt;complexType>
    +86   *             &lt;complexContent>
    +87   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +88   *                 &lt;sequence>
    +89   *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +90   *                 &lt;/sequence>
    +91   *               &lt;/restriction>
    +92   *             &lt;/complexContent>
    +93   *           &lt;/complexType>
    +94   *         &lt;/element>
    +95   *       &lt;/all>
    +96   *     &lt;/restriction>
    +97   *   &lt;/complexContent>
    +98   * &lt;/complexType>
    +99   * </pre>
    +100  *
    +101  *
    +102  */
    +103 @XmlAccessorType(XmlAccessType.FIELD)
    +104 @XmlType(name = "Build", propOrder = {
    +105 
    +106 })
    +107 @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +108 public class Build {
    +109 
    +110     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +111     protected String sourceDirectory;
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     protected String scriptSourceDirectory;
    +114     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +115     protected String testSourceDirectory;
    +116     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +117     protected String outputDirectory;
    +118     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +119     protected String testOutputDirectory;
    +120     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +121     protected Build.Extensions extensions;
    +122     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +123     protected String defaultGoal;
    +124     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +125     protected Build.Resources resources;
    +126     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +127     protected Build.TestResources testResources;
    +128     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +129     protected String directory;
    +130     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +131     protected String finalName;
    +132     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +133     protected Build.Filters filters;
    +134     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +135     protected PluginManagement pluginManagement;
    +136     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +137     protected Build.Plugins plugins;
    +138 
    +139     /**
    +140      * Gets the value of the sourceDirectory property.
    +141      *
    +142      * @return
    +143      *     possible object is
    +144      *     {@link String }
    +145      *
    +146      */
    +147     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +148     public String getSourceDirectory() {
    +149         return sourceDirectory;
    +150     }
    +151 
    +152     /**
    +153      * Sets the value of the sourceDirectory property.
    +154      *
    +155      * @param value
    +156      *     allowed object is
    +157      *     {@link String }
    +158      *
    +159      */
    +160     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +161     public void setSourceDirectory(String value) {
    +162         this.sourceDirectory = value;
    +163     }
    +164 
    +165     /**
    +166      * Gets the value of the scriptSourceDirectory property.
    +167      *
    +168      * @return
    +169      *     possible object is
    +170      *     {@link String }
    +171      *
    +172      */
    +173     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +174     public String getScriptSourceDirectory() {
    +175         return scriptSourceDirectory;
    +176     }
    +177 
    +178     /**
    +179      * Sets the value of the scriptSourceDirectory property.
    +180      *
    +181      * @param value
    +182      *     allowed object is
    +183      *     {@link String }
    +184      *
    +185      */
    +186     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +187     public void setScriptSourceDirectory(String value) {
    +188         this.scriptSourceDirectory = value;
    +189     }
    +190 
    +191     /**
    +192      * Gets the value of the testSourceDirectory property.
    +193      *
    +194      * @return
    +195      *     possible object is
    +196      *     {@link String }
    +197      *
    +198      */
    +199     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +200     public String getTestSourceDirectory() {
    +201         return testSourceDirectory;
    +202     }
    +203 
    +204     /**
    +205      * Sets the value of the testSourceDirectory property.
    +206      *
    +207      * @param value
    +208      *     allowed object is
    +209      *     {@link String }
    +210      *
    +211      */
    +212     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +213     public void setTestSourceDirectory(String value) {
    +214         this.testSourceDirectory = value;
    +215     }
    +216 
    +217     /**
    +218      * Gets the value of the outputDirectory property.
    +219      *
    +220      * @return
    +221      *     possible object is
    +222      *     {@link String }
    +223      *
    +224      */
    +225     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +226     public String getOutputDirectory() {
    +227         return outputDirectory;
    +228     }
    +229 
    +230     /**
    +231      * Sets the value of the outputDirectory property.
    +232      *
    +233      * @param value
    +234      *     allowed object is
    +235      *     {@link String }
    +236      *
    +237      */
    +238     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +239     public void setOutputDirectory(String value) {
    +240         this.outputDirectory = value;
    +241     }
    +242 
    +243     /**
    +244      * Gets the value of the testOutputDirectory property.
    +245      *
    +246      * @return
    +247      *     possible object is
    +248      *     {@link String }
    +249      *
    +250      */
    +251     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +252     public String getTestOutputDirectory() {
    +253         return testOutputDirectory;
    +254     }
    +255 
    +256     /**
    +257      * Sets the value of the testOutputDirectory property.
    +258      *
    +259      * @param value
    +260      *     allowed object is
    +261      *     {@link String }
    +262      *
    +263      */
    +264     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +265     public void setTestOutputDirectory(String value) {
    +266         this.testOutputDirectory = value;
    +267     }
    +268 
    +269     /**
    +270      * Gets the value of the extensions property.
    +271      *
    +272      * @return
    +273      *     possible object is
    +274      *     {@link Build.Extensions }
    +275      *
    +276      */
    +277     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +278     public Build.Extensions getExtensions() {
    +279         return extensions;
    +280     }
    +281 
    +282     /**
    +283      * Sets the value of the extensions property.
    +284      *
    +285      * @param value
    +286      *     allowed object is
    +287      *     {@link Build.Extensions }
    +288      *
    +289      */
    +290     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +291     public void setExtensions(Build.Extensions value) {
    +292         this.extensions = value;
    +293     }
    +294 
    +295     /**
    +296      * Gets the value of the defaultGoal property.
    +297      *
    +298      * @return
    +299      *     possible object is
    +300      *     {@link String }
    +301      *
    +302      */
    +303     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +304     public String getDefaultGoal() {
    +305         return defaultGoal;
    +306     }
    +307 
    +308     /**
    +309      * Sets the value of the defaultGoal property.
    +310      *
    +311      * @param value
    +312      *     allowed object is
    +313      *     {@link String }
    +314      *
    +315      */
    +316     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +317     public void setDefaultGoal(String value) {
    +318         this.defaultGoal = value;
    +319     }
    +320 
    +321     /**
    +322      * Gets the value of the resources property.
    +323      *
    +324      * @return
    +325      *     possible object is
    +326      *     {@link Build.Resources }
    +327      *
    +328      */
    +329     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +330     public Build.Resources getResources() {
    +331         return resources;
    +332     }
    +333 
    +334     /**
    +335      * Sets the value of the resources property.
    +336      *
    +337      * @param value
    +338      *     allowed object is
    +339      *     {@link Build.Resources }
    +340      *
    +341      */
    +342     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +343     public void setResources(Build.Resources value) {
    +344         this.resources = value;
    +345     }
    +346 
    +347     /**
    +348      * Gets the value of the testResources property.
    +349      *
    +350      * @return
    +351      *     possible object is
    +352      *     {@link Build.TestResources }
    +353      *
    +354      */
    +355     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +356     public Build.TestResources getTestResources() {
    +357         return testResources;
    +358     }
    +359 
    +360     /**
    +361      * Sets the value of the testResources property.
    +362      *
    +363      * @param value
    +364      *     allowed object is
    +365      *     {@link Build.TestResources }
    +366      *
    +367      */
    +368     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +369     public void setTestResources(Build.TestResources value) {
    +370         this.testResources = value;
    +371     }
    +372 
    +373     /**
    +374      * Gets the value of the directory property.
    +375      *
    +376      * @return
    +377      *     possible object is
    +378      *     {@link String }
    +379      *
    +380      */
    +381     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +382     public String getDirectory() {
    +383         return directory;
    +384     }
    +385 
    +386     /**
    +387      * Sets the value of the directory property.
    +388      *
    +389      * @param value
    +390      *     allowed object is
    +391      *     {@link String }
    +392      *
    +393      */
    +394     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +395     public void setDirectory(String value) {
    +396         this.directory = value;
    +397     }
    +398 
    +399     /**
    +400      * Gets the value of the finalName property.
    +401      *
    +402      * @return
    +403      *     possible object is
    +404      *     {@link String }
    +405      *
    +406      */
    +407     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +408     public String getFinalName() {
    +409         return finalName;
    +410     }
    +411 
    +412     /**
    +413      * Sets the value of the finalName property.
    +414      *
    +415      * @param value
    +416      *     allowed object is
    +417      *     {@link String }
    +418      *
    +419      */
    +420     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +421     public void setFinalName(String value) {
    +422         this.finalName = value;
    +423     }
    +424 
    +425     /**
    +426      * Gets the value of the filters property.
    +427      *
    +428      * @return
    +429      *     possible object is
    +430      *     {@link Build.Filters }
    +431      *
    +432      */
    +433     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +434     public Build.Filters getFilters() {
    +435         return filters;
    +436     }
    +437 
    +438     /**
    +439      * Sets the value of the filters property.
    +440      *
    +441      * @param value
    +442      *     allowed object is
    +443      *     {@link Build.Filters }
    +444      *
    +445      */
    +446     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +447     public void setFilters(Build.Filters value) {
    +448         this.filters = value;
    +449     }
    +450 
    +451     /**
    +452      * Gets the value of the pluginManagement property.
    +453      *
    +454      * @return
    +455      *     possible object is
    +456      *     {@link PluginManagement }
    +457      *
    +458      */
    +459     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +460     public PluginManagement getPluginManagement() {
    +461         return pluginManagement;
    +462     }
    +463 
    +464     /**
    +465      * Sets the value of the pluginManagement property.
    +466      *
    +467      * @param value
    +468      *     allowed object is
    +469      *     {@link PluginManagement }
    +470      *
    +471      */
    +472     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +473     public void setPluginManagement(PluginManagement value) {
    +474         this.pluginManagement = value;
    +475     }
    +476 
    +477     /**
    +478      * Gets the value of the plugins property.
    +479      *
    +480      * @return
    +481      *     possible object is
    +482      *     {@link Build.Plugins }
    +483      *
    +484      */
    +485     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +486     public Build.Plugins getPlugins() {
    +487         return plugins;
    +488     }
    +489 
    +490     /**
    +491      * Sets the value of the plugins property.
    +492      *
    +493      * @param value
    +494      *     allowed object is
    +495      *     {@link Build.Plugins }
    +496      *
    +497      */
    +498     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +499     public void setPlugins(Build.Plugins value) {
    +500         this.plugins = value;
    +501     }
    +502 
    +503 
    +504     /**
    +505      * <p>Java class for anonymous complex type.
    +506      *
    +507      * <p>The following schema fragment specifies the expected content contained within this class.
    +508      *
    +509      * <pre>
    +510      * &lt;complexType>
    +511      *   &lt;complexContent>
    +512      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +513      *       &lt;sequence>
    +514      *         &lt;element name="extension" type="{http://maven.apache.org/POM/4.0.0}Extension" maxOccurs="unbounded" minOccurs="0"/>
    +515      *       &lt;/sequence>
    +516      *     &lt;/restriction>
    +517      *   &lt;/complexContent>
    +518      * &lt;/complexType>
    +519      * </pre>
    +520      *
    +521      *
    +522      */
    +523     @XmlAccessorType(XmlAccessType.FIELD)
    +524     @XmlType(name = "", propOrder = {
    +525         "extension"
    +526     })
    +527     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +528     public static class Extensions {
    +529 
    +530         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +531         protected List<Extension> extension;
    +532 
    +533         /**
    +534          * Gets the value of the extension property.
    +535          *
    +536          * <p>
    +537          * This accessor method returns a reference to the live list,
    +538          * not a snapshot. Therefore any modification you make to the
    +539          * returned list will be present inside the JAXB object.
    +540          * This is why there is not a <CODE>set</CODE> method for the extension property.
    +541          *
    +542          * <p>
    +543          * For example, to add a new item, do as follows:
    +544          * <pre>
    +545          *    getExtension().add(newItem);
    +546          * </pre>
    +547          *
    +548          *
    +549          * <p>
    +550          * Objects of the following type(s) are allowed in the list
    +551          * {@link Extension }
    +552          *
    +553          *
    +554          */
    +555         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +556         public List<Extension> getExtension() {
    +557             if (extension == null) {
    +558                 extension = new ArrayList<Extension>();
    +559             }
    +560             return this.extension;
    +561         }
    +562 
    +563     }
    +564 
    +565 
    +566     /**
    +567      * <p>Java class for anonymous complex type.
    +568      *
    +569      * <p>The following schema fragment specifies the expected content contained within this class.
    +570      *
    +571      * <pre>
    +572      * &lt;complexType>
    +573      *   &lt;complexContent>
    +574      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +575      *       &lt;sequence>
    +576      *         &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +577      *       &lt;/sequence>
    +578      *     &lt;/restriction>
    +579      *   &lt;/complexContent>
    +580      * &lt;/complexType>
    +581      * </pre>
    +582      *
    +583      *
    +584      */
    +585     @XmlAccessorType(XmlAccessType.FIELD)
    +586     @XmlType(name = "", propOrder = {
    +587         "filter"
    +588     })
    +589     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +590     public static class Filters {
    +591 
    +592         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +593         protected List<String> filter;
    +594 
    +595         /**
    +596          * Gets the value of the filter property.
    +597          *
    +598          * <p>
    +599          * This accessor method returns a reference to the live list,
    +600          * not a snapshot. Therefore any modification you make to the
    +601          * returned list will be present inside the JAXB object.
    +602          * This is why there is not a <CODE>set</CODE> method for the filter property.
    +603          *
    +604          * <p>
    +605          * For example, to add a new item, do as follows:
    +606          * <pre>
    +607          *    getFilter().add(newItem);
    +608          * </pre>
    +609          *
    +610          *
    +611          * <p>
    +612          * Objects of the following type(s) are allowed in the list
    +613          * {@link String }
    +614          *
    +615          *
    +616          */
    +617         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +618         public List<String> getFilter() {
    +619             if (filter == null) {
    +620                 filter = new ArrayList<String>();
    +621             }
    +622             return this.filter;
    +623         }
    +624 
    +625     }
    +626 
    +627 
    +628     /**
    +629      * <p>Java class for anonymous complex type.
    +630      *
    +631      * <p>The following schema fragment specifies the expected content contained within this class.
    +632      *
    +633      * <pre>
    +634      * &lt;complexType>
    +635      *   &lt;complexContent>
    +636      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +637      *       &lt;sequence>
    +638      *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +639      *       &lt;/sequence>
    +640      *     &lt;/restriction>
    +641      *   &lt;/complexContent>
    +642      * &lt;/complexType>
    +643      * </pre>
    +644      *
    +645      *
    +646      */
    +647     @XmlAccessorType(XmlAccessType.FIELD)
    +648     @XmlType(name = "", propOrder = {
    +649         "plugin"
    +650     })
    +651     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +652     public static class Plugins {
    +653 
    +654         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +655         protected List<Plugin> plugin;
    +656 
    +657         /**
    +658          * Gets the value of the plugin property.
    +659          *
    +660          * <p>
    +661          * This accessor method returns a reference to the live list,
    +662          * not a snapshot. Therefore any modification you make to the
    +663          * returned list will be present inside the JAXB object.
    +664          * This is why there is not a <CODE>set</CODE> method for the plugin property.
    +665          *
    +666          * <p>
    +667          * For example, to add a new item, do as follows:
    +668          * <pre>
    +669          *    getPlugin().add(newItem);
    +670          * </pre>
    +671          *
    +672          *
    +673          * <p>
    +674          * Objects of the following type(s) are allowed in the list
    +675          * {@link Plugin }
    +676          *
    +677          *
    +678          */
    +679         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +680         public List<Plugin> getPlugin() {
    +681             if (plugin == null) {
    +682                 plugin = new ArrayList<Plugin>();
    +683             }
    +684             return this.plugin;
    +685         }
    +686 
    +687     }
    +688 
    +689 
    +690     /**
    +691      * <p>Java class for anonymous complex type.
    +692      *
    +693      * <p>The following schema fragment specifies the expected content contained within this class.
    +694      *
    +695      * <pre>
    +696      * &lt;complexType>
    +697      *   &lt;complexContent>
    +698      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +699      *       &lt;sequence>
    +700      *         &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +701      *       &lt;/sequence>
    +702      *     &lt;/restriction>
    +703      *   &lt;/complexContent>
    +704      * &lt;/complexType>
    +705      * </pre>
    +706      *
    +707      *
    +708      */
    +709     @XmlAccessorType(XmlAccessType.FIELD)
    +710     @XmlType(name = "", propOrder = {
    +711         "resource"
    +712     })
    +713     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +714     public static class Resources {
    +715 
    +716         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +717         protected List<Resource> resource;
    +718 
    +719         /**
    +720          * Gets the value of the resource property.
    +721          *
    +722          * <p>
    +723          * This accessor method returns a reference to the live list,
    +724          * not a snapshot. Therefore any modification you make to the
    +725          * returned list will be present inside the JAXB object.
    +726          * This is why there is not a <CODE>set</CODE> method for the resource property.
    +727          *
    +728          * <p>
    +729          * For example, to add a new item, do as follows:
    +730          * <pre>
    +731          *    getResource().add(newItem);
    +732          * </pre>
    +733          *
    +734          *
    +735          * <p>
    +736          * Objects of the following type(s) are allowed in the list
    +737          * {@link Resource }
    +738          *
    +739          *
    +740          */
    +741         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +742         public List<Resource> getResource() {
    +743             if (resource == null) {
    +744                 resource = new ArrayList<Resource>();
    +745             }
    +746             return this.resource;
    +747         }
    +748 
    +749     }
    +750 
    +751 
    +752     /**
    +753      * <p>Java class for anonymous complex type.
    +754      *
    +755      * <p>The following schema fragment specifies the expected content contained within this class.
    +756      *
    +757      * <pre>
    +758      * &lt;complexType>
    +759      *   &lt;complexContent>
    +760      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +761      *       &lt;sequence>
    +762      *         &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +763      *       &lt;/sequence>
    +764      *     &lt;/restriction>
    +765      *   &lt;/complexContent>
    +766      * &lt;/complexType>
    +767      * </pre>
    +768      *
    +769      *
    +770      */
    +771     @XmlAccessorType(XmlAccessType.FIELD)
    +772     @XmlType(name = "", propOrder = {
    +773         "testResource"
    +774     })
    +775     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +776     public static class TestResources {
    +777 
    +778         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +779         protected List<Resource> testResource;
    +780 
    +781         /**
    +782          * Gets the value of the testResource property.
    +783          *
    +784          * <p>
    +785          * This accessor method returns a reference to the live list,
    +786          * not a snapshot. Therefore any modification you make to the
    +787          * returned list will be present inside the JAXB object.
    +788          * This is why there is not a <CODE>set</CODE> method for the testResource property.
    +789          *
    +790          * <p>
    +791          * For example, to add a new item, do as follows:
    +792          * <pre>
    +793          *    getTestResource().add(newItem);
    +794          * </pre>
    +795          *
    +796          *
    +797          * <p>
    +798          * Objects of the following type(s) are allowed in the list
    +799          * {@link Resource }
    +800          *
    +801          *
    +802          */
    +803         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +804         public List<Resource> getTestResource() {
    +805             if (testResource == null) {
    +806                 testResource = new ArrayList<Resource>();
    +807             }
    +808             return this.testResource;
    +809         }
    +810 
    +811     }
    +812 
    +813 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html new file mode 100644 index 000000000..a40f9ef9e --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html @@ -0,0 +1,581 @@ + + + + +BuildBase xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlType;
    +17  
    +18  
    +19  /**
    +20   *  3.0.0+
    +21   *
    +22   * <p>Java class for BuildBase complex type.
    +23   *
    +24   * <p>The following schema fragment specifies the expected content contained within this class.
    +25   *
    +26   * <pre>
    +27   * &lt;complexType name="BuildBase">
    +28   *   &lt;complexContent>
    +29   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +30   *       &lt;all>
    +31   *         &lt;element name="defaultGoal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="resources" minOccurs="0">
    +33   *           &lt;complexType>
    +34   *             &lt;complexContent>
    +35   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +36   *                 &lt;sequence>
    +37   *                   &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +38   *                 &lt;/sequence>
    +39   *               &lt;/restriction>
    +40   *             &lt;/complexContent>
    +41   *           &lt;/complexType>
    +42   *         &lt;/element>
    +43   *         &lt;element name="testResources" minOccurs="0">
    +44   *           &lt;complexType>
    +45   *             &lt;complexContent>
    +46   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +47   *                 &lt;sequence>
    +48   *                   &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +49   *                 &lt;/sequence>
    +50   *               &lt;/restriction>
    +51   *             &lt;/complexContent>
    +52   *           &lt;/complexType>
    +53   *         &lt;/element>
    +54   *         &lt;element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +55   *         &lt;element name="finalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +56   *         &lt;element name="filters" minOccurs="0">
    +57   *           &lt;complexType>
    +58   *             &lt;complexContent>
    +59   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +60   *                 &lt;sequence>
    +61   *                   &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +62   *                 &lt;/sequence>
    +63   *               &lt;/restriction>
    +64   *             &lt;/complexContent>
    +65   *           &lt;/complexType>
    +66   *         &lt;/element>
    +67   *         &lt;element name="pluginManagement" type="{http://maven.apache.org/POM/4.0.0}PluginManagement" minOccurs="0"/>
    +68   *         &lt;element name="plugins" minOccurs="0">
    +69   *           &lt;complexType>
    +70   *             &lt;complexContent>
    +71   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +72   *                 &lt;sequence>
    +73   *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +74   *                 &lt;/sequence>
    +75   *               &lt;/restriction>
    +76   *             &lt;/complexContent>
    +77   *           &lt;/complexType>
    +78   *         &lt;/element>
    +79   *       &lt;/all>
    +80   *     &lt;/restriction>
    +81   *   &lt;/complexContent>
    +82   * &lt;/complexType>
    +83   * </pre>
    +84   *
    +85   *
    +86   */
    +87  @XmlAccessorType(XmlAccessType.FIELD)
    +88  @XmlType(name = "BuildBase", propOrder = {
    +89  
    +90  })
    +91  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +92  public class BuildBase {
    +93  
    +94      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +95      protected String defaultGoal;
    +96      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +97      protected BuildBase.Resources resources;
    +98      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +99      protected BuildBase.TestResources testResources;
    +100     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +101     protected String directory;
    +102     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +103     protected String finalName;
    +104     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +105     protected BuildBase.Filters filters;
    +106     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +107     protected PluginManagement pluginManagement;
    +108     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +109     protected BuildBase.Plugins plugins;
    +110 
    +111     /**
    +112      * Gets the value of the defaultGoal property.
    +113      *
    +114      * @return
    +115      *     possible object is
    +116      *     {@link String }
    +117      *
    +118      */
    +119     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +120     public String getDefaultGoal() {
    +121         return defaultGoal;
    +122     }
    +123 
    +124     /**
    +125      * Sets the value of the defaultGoal property.
    +126      *
    +127      * @param value
    +128      *     allowed object is
    +129      *     {@link String }
    +130      *
    +131      */
    +132     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +133     public void setDefaultGoal(String value) {
    +134         this.defaultGoal = value;
    +135     }
    +136 
    +137     /**
    +138      * Gets the value of the resources property.
    +139      *
    +140      * @return
    +141      *     possible object is
    +142      *     {@link BuildBase.Resources }
    +143      *
    +144      */
    +145     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +146     public BuildBase.Resources getResources() {
    +147         return resources;
    +148     }
    +149 
    +150     /**
    +151      * Sets the value of the resources property.
    +152      *
    +153      * @param value
    +154      *     allowed object is
    +155      *     {@link BuildBase.Resources }
    +156      *
    +157      */
    +158     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +159     public void setResources(BuildBase.Resources value) {
    +160         this.resources = value;
    +161     }
    +162 
    +163     /**
    +164      * Gets the value of the testResources property.
    +165      *
    +166      * @return
    +167      *     possible object is
    +168      *     {@link BuildBase.TestResources }
    +169      *
    +170      */
    +171     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +172     public BuildBase.TestResources getTestResources() {
    +173         return testResources;
    +174     }
    +175 
    +176     /**
    +177      * Sets the value of the testResources property.
    +178      *
    +179      * @param value
    +180      *     allowed object is
    +181      *     {@link BuildBase.TestResources }
    +182      *
    +183      */
    +184     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +185     public void setTestResources(BuildBase.TestResources value) {
    +186         this.testResources = value;
    +187     }
    +188 
    +189     /**
    +190      * Gets the value of the directory property.
    +191      *
    +192      * @return
    +193      *     possible object is
    +194      *     {@link String }
    +195      *
    +196      */
    +197     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +198     public String getDirectory() {
    +199         return directory;
    +200     }
    +201 
    +202     /**
    +203      * Sets the value of the directory property.
    +204      *
    +205      * @param value
    +206      *     allowed object is
    +207      *     {@link String }
    +208      *
    +209      */
    +210     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +211     public void setDirectory(String value) {
    +212         this.directory = value;
    +213     }
    +214 
    +215     /**
    +216      * Gets the value of the finalName property.
    +217      *
    +218      * @return
    +219      *     possible object is
    +220      *     {@link String }
    +221      *
    +222      */
    +223     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +224     public String getFinalName() {
    +225         return finalName;
    +226     }
    +227 
    +228     /**
    +229      * Sets the value of the finalName property.
    +230      *
    +231      * @param value
    +232      *     allowed object is
    +233      *     {@link String }
    +234      *
    +235      */
    +236     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +237     public void setFinalName(String value) {
    +238         this.finalName = value;
    +239     }
    +240 
    +241     /**
    +242      * Gets the value of the filters property.
    +243      *
    +244      * @return
    +245      *     possible object is
    +246      *     {@link BuildBase.Filters }
    +247      *
    +248      */
    +249     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +250     public BuildBase.Filters getFilters() {
    +251         return filters;
    +252     }
    +253 
    +254     /**
    +255      * Sets the value of the filters property.
    +256      *
    +257      * @param value
    +258      *     allowed object is
    +259      *     {@link BuildBase.Filters }
    +260      *
    +261      */
    +262     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +263     public void setFilters(BuildBase.Filters value) {
    +264         this.filters = value;
    +265     }
    +266 
    +267     /**
    +268      * Gets the value of the pluginManagement property.
    +269      *
    +270      * @return
    +271      *     possible object is
    +272      *     {@link PluginManagement }
    +273      *
    +274      */
    +275     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +276     public PluginManagement getPluginManagement() {
    +277         return pluginManagement;
    +278     }
    +279 
    +280     /**
    +281      * Sets the value of the pluginManagement property.
    +282      *
    +283      * @param value
    +284      *     allowed object is
    +285      *     {@link PluginManagement }
    +286      *
    +287      */
    +288     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +289     public void setPluginManagement(PluginManagement value) {
    +290         this.pluginManagement = value;
    +291     }
    +292 
    +293     /**
    +294      * Gets the value of the plugins property.
    +295      *
    +296      * @return
    +297      *     possible object is
    +298      *     {@link BuildBase.Plugins }
    +299      *
    +300      */
    +301     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +302     public BuildBase.Plugins getPlugins() {
    +303         return plugins;
    +304     }
    +305 
    +306     /**
    +307      * Sets the value of the plugins property.
    +308      *
    +309      * @param value
    +310      *     allowed object is
    +311      *     {@link BuildBase.Plugins }
    +312      *
    +313      */
    +314     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +315     public void setPlugins(BuildBase.Plugins value) {
    +316         this.plugins = value;
    +317     }
    +318 
    +319 
    +320     /**
    +321      * <p>Java class for anonymous complex type.
    +322      *
    +323      * <p>The following schema fragment specifies the expected content contained within this class.
    +324      *
    +325      * <pre>
    +326      * &lt;complexType>
    +327      *   &lt;complexContent>
    +328      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +329      *       &lt;sequence>
    +330      *         &lt;element name="filter" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +331      *       &lt;/sequence>
    +332      *     &lt;/restriction>
    +333      *   &lt;/complexContent>
    +334      * &lt;/complexType>
    +335      * </pre>
    +336      *
    +337      *
    +338      */
    +339     @XmlAccessorType(XmlAccessType.FIELD)
    +340     @XmlType(name = "", propOrder = {
    +341         "filter"
    +342     })
    +343     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +344     public static class Filters {
    +345 
    +346         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +347         protected List<String> filter;
    +348 
    +349         /**
    +350          * Gets the value of the filter property.
    +351          *
    +352          * <p>
    +353          * This accessor method returns a reference to the live list,
    +354          * not a snapshot. Therefore any modification you make to the
    +355          * returned list will be present inside the JAXB object.
    +356          * This is why there is not a <CODE>set</CODE> method for the filter property.
    +357          *
    +358          * <p>
    +359          * For example, to add a new item, do as follows:
    +360          * <pre>
    +361          *    getFilter().add(newItem);
    +362          * </pre>
    +363          *
    +364          *
    +365          * <p>
    +366          * Objects of the following type(s) are allowed in the list
    +367          * {@link String }
    +368          *
    +369          *
    +370          */
    +371         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +372         public List<String> getFilter() {
    +373             if (filter == null) {
    +374                 filter = new ArrayList<String>();
    +375             }
    +376             return this.filter;
    +377         }
    +378 
    +379     }
    +380 
    +381 
    +382     /**
    +383      * <p>Java class for anonymous complex type.
    +384      *
    +385      * <p>The following schema fragment specifies the expected content contained within this class.
    +386      *
    +387      * <pre>
    +388      * &lt;complexType>
    +389      *   &lt;complexContent>
    +390      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +391      *       &lt;sequence>
    +392      *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +393      *       &lt;/sequence>
    +394      *     &lt;/restriction>
    +395      *   &lt;/complexContent>
    +396      * &lt;/complexType>
    +397      * </pre>
    +398      *
    +399      *
    +400      */
    +401     @XmlAccessorType(XmlAccessType.FIELD)
    +402     @XmlType(name = "", propOrder = {
    +403         "plugin"
    +404     })
    +405     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +406     public static class Plugins {
    +407 
    +408         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +409         protected List<Plugin> plugin;
    +410 
    +411         /**
    +412          * Gets the value of the plugin property.
    +413          *
    +414          * <p>
    +415          * This accessor method returns a reference to the live list,
    +416          * not a snapshot. Therefore any modification you make to the
    +417          * returned list will be present inside the JAXB object.
    +418          * This is why there is not a <CODE>set</CODE> method for the plugin property.
    +419          *
    +420          * <p>
    +421          * For example, to add a new item, do as follows:
    +422          * <pre>
    +423          *    getPlugin().add(newItem);
    +424          * </pre>
    +425          *
    +426          *
    +427          * <p>
    +428          * Objects of the following type(s) are allowed in the list
    +429          * {@link Plugin }
    +430          *
    +431          *
    +432          */
    +433         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +434         public List<Plugin> getPlugin() {
    +435             if (plugin == null) {
    +436                 plugin = new ArrayList<Plugin>();
    +437             }
    +438             return this.plugin;
    +439         }
    +440 
    +441     }
    +442 
    +443 
    +444     /**
    +445      * <p>Java class for anonymous complex type.
    +446      *
    +447      * <p>The following schema fragment specifies the expected content contained within this class.
    +448      *
    +449      * <pre>
    +450      * &lt;complexType>
    +451      *   &lt;complexContent>
    +452      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +453      *       &lt;sequence>
    +454      *         &lt;element name="resource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +455      *       &lt;/sequence>
    +456      *     &lt;/restriction>
    +457      *   &lt;/complexContent>
    +458      * &lt;/complexType>
    +459      * </pre>
    +460      *
    +461      *
    +462      */
    +463     @XmlAccessorType(XmlAccessType.FIELD)
    +464     @XmlType(name = "", propOrder = {
    +465         "resource"
    +466     })
    +467     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +468     public static class Resources {
    +469 
    +470         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +471         protected List<Resource> resource;
    +472 
    +473         /**
    +474          * Gets the value of the resource property.
    +475          *
    +476          * <p>
    +477          * This accessor method returns a reference to the live list,
    +478          * not a snapshot. Therefore any modification you make to the
    +479          * returned list will be present inside the JAXB object.
    +480          * This is why there is not a <CODE>set</CODE> method for the resource property.
    +481          *
    +482          * <p>
    +483          * For example, to add a new item, do as follows:
    +484          * <pre>
    +485          *    getResource().add(newItem);
    +486          * </pre>
    +487          *
    +488          *
    +489          * <p>
    +490          * Objects of the following type(s) are allowed in the list
    +491          * {@link Resource }
    +492          *
    +493          *
    +494          */
    +495         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +496         public List<Resource> getResource() {
    +497             if (resource == null) {
    +498                 resource = new ArrayList<Resource>();
    +499             }
    +500             return this.resource;
    +501         }
    +502 
    +503     }
    +504 
    +505 
    +506     /**
    +507      * <p>Java class for anonymous complex type.
    +508      *
    +509      * <p>The following schema fragment specifies the expected content contained within this class.
    +510      *
    +511      * <pre>
    +512      * &lt;complexType>
    +513      *   &lt;complexContent>
    +514      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +515      *       &lt;sequence>
    +516      *         &lt;element name="testResource" type="{http://maven.apache.org/POM/4.0.0}Resource" maxOccurs="unbounded" minOccurs="0"/>
    +517      *       &lt;/sequence>
    +518      *     &lt;/restriction>
    +519      *   &lt;/complexContent>
    +520      * &lt;/complexType>
    +521      * </pre>
    +522      *
    +523      *
    +524      */
    +525     @XmlAccessorType(XmlAccessType.FIELD)
    +526     @XmlType(name = "", propOrder = {
    +527         "testResource"
    +528     })
    +529     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +530     public static class TestResources {
    +531 
    +532         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +533         protected List<Resource> testResource;
    +534 
    +535         /**
    +536          * Gets the value of the testResource property.
    +537          *
    +538          * <p>
    +539          * This accessor method returns a reference to the live list,
    +540          * not a snapshot. Therefore any modification you make to the
    +541          * returned list will be present inside the JAXB object.
    +542          * This is why there is not a <CODE>set</CODE> method for the testResource property.
    +543          *
    +544          * <p>
    +545          * For example, to add a new item, do as follows:
    +546          * <pre>
    +547          *    getTestResource().add(newItem);
    +548          * </pre>
    +549          *
    +550          *
    +551          * <p>
    +552          * Objects of the following type(s) are allowed in the list
    +553          * {@link Resource }
    +554          *
    +555          *
    +556          */
    +557         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +558         public List<Resource> getTestResource() {
    +559             if (testResource == null) {
    +560                 testResource = new ArrayList<Resource>();
    +561             }
    +562             return this.testResource;
    +563         }
    +564 
    +565     }
    +566 
    +567 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html new file mode 100644 index 000000000..0a12e851a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html @@ -0,0 +1,220 @@ + + + + +CiManagement xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlType;
    +17  
    +18  
    +19  /**
    +20   *  4.0.0
    +21   *
    +22   * <p>Java class for CiManagement complex type.
    +23   *
    +24   * <p>The following schema fragment specifies the expected content contained within this class.
    +25   *
    +26   * <pre>
    +27   * &lt;complexType name="CiManagement">
    +28   *   &lt;complexContent>
    +29   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +30   *       &lt;all>
    +31   *         &lt;element name="system" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="notifiers" minOccurs="0">
    +34   *           &lt;complexType>
    +35   *             &lt;complexContent>
    +36   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +37   *                 &lt;sequence>
    +38   *                   &lt;element name="notifier" type="{http://maven.apache.org/POM/4.0.0}Notifier" maxOccurs="unbounded" minOccurs="0"/>
    +39   *                 &lt;/sequence>
    +40   *               &lt;/restriction>
    +41   *             &lt;/complexContent>
    +42   *           &lt;/complexType>
    +43   *         &lt;/element>
    +44   *       &lt;/all>
    +45   *     &lt;/restriction>
    +46   *   &lt;/complexContent>
    +47   * &lt;/complexType>
    +48   * </pre>
    +49   *
    +50   *
    +51   */
    +52  @XmlAccessorType(XmlAccessType.FIELD)
    +53  @XmlType(name = "CiManagement", propOrder = {
    +54  
    +55  })
    +56  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57  public class CiManagement {
    +58  
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      protected String system;
    +61      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +62      protected String url;
    +63      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +64      protected CiManagement.Notifiers notifiers;
    +65  
    +66      /**
    +67       * Gets the value of the system property.
    +68       *
    +69       * @return
    +70       *     possible object is
    +71       *     {@link String }
    +72       *
    +73       */
    +74      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +75      public String getSystem() {
    +76          return system;
    +77      }
    +78  
    +79      /**
    +80       * Sets the value of the system property.
    +81       *
    +82       * @param value
    +83       *     allowed object is
    +84       *     {@link String }
    +85       *
    +86       */
    +87      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +88      public void setSystem(String value) {
    +89          this.system = value;
    +90      }
    +91  
    +92      /**
    +93       * Gets the value of the url property.
    +94       *
    +95       * @return
    +96       *     possible object is
    +97       *     {@link String }
    +98       *
    +99       */
    +100     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +101     public String getUrl() {
    +102         return url;
    +103     }
    +104 
    +105     /**
    +106      * Sets the value of the url property.
    +107      *
    +108      * @param value
    +109      *     allowed object is
    +110      *     {@link String }
    +111      *
    +112      */
    +113     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +114     public void setUrl(String value) {
    +115         this.url = value;
    +116     }
    +117 
    +118     /**
    +119      * Gets the value of the notifiers property.
    +120      *
    +121      * @return
    +122      *     possible object is
    +123      *     {@link CiManagement.Notifiers }
    +124      *
    +125      */
    +126     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +127     public CiManagement.Notifiers getNotifiers() {
    +128         return notifiers;
    +129     }
    +130 
    +131     /**
    +132      * Sets the value of the notifiers property.
    +133      *
    +134      * @param value
    +135      *     allowed object is
    +136      *     {@link CiManagement.Notifiers }
    +137      *
    +138      */
    +139     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +140     public void setNotifiers(CiManagement.Notifiers value) {
    +141         this.notifiers = value;
    +142     }
    +143 
    +144 
    +145     /**
    +146      * <p>Java class for anonymous complex type.
    +147      *
    +148      * <p>The following schema fragment specifies the expected content contained within this class.
    +149      *
    +150      * <pre>
    +151      * &lt;complexType>
    +152      *   &lt;complexContent>
    +153      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +154      *       &lt;sequence>
    +155      *         &lt;element name="notifier" type="{http://maven.apache.org/POM/4.0.0}Notifier" maxOccurs="unbounded" minOccurs="0"/>
    +156      *       &lt;/sequence>
    +157      *     &lt;/restriction>
    +158      *   &lt;/complexContent>
    +159      * &lt;/complexType>
    +160      * </pre>
    +161      *
    +162      *
    +163      */
    +164     @XmlAccessorType(XmlAccessType.FIELD)
    +165     @XmlType(name = "", propOrder = {
    +166         "notifier"
    +167     })
    +168     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +169     public static class Notifiers {
    +170 
    +171         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +172         protected List<Notifier> notifier;
    +173 
    +174         /**
    +175          * Gets the value of the notifier property.
    +176          *
    +177          * <p>
    +178          * This accessor method returns a reference to the live list,
    +179          * not a snapshot. Therefore any modification you make to the
    +180          * returned list will be present inside the JAXB object.
    +181          * This is why there is not a <CODE>set</CODE> method for the notifier property.
    +182          *
    +183          * <p>
    +184          * For example, to add a new item, do as follows:
    +185          * <pre>
    +186          *    getNotifier().add(newItem);
    +187          * </pre>
    +188          *
    +189          *
    +190          * <p>
    +191          * Objects of the following type(s) are allowed in the list
    +192          * {@link Notifier }
    +193          *
    +194          *
    +195          */
    +196         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +197         public List<Notifier> getNotifier() {
    +198             if (notifier == null) {
    +199                 notifier = new ArrayList<Notifier>();
    +200             }
    +201             return this.notifier;
    +202         }
    +203 
    +204     }
    +205 
    +206 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html new file mode 100644 index 000000000..93b6046c9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html @@ -0,0 +1,444 @@ + + + + +Contributor xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlType;
    +18  import org.w3c.dom.Element;
    +19  
    +20  
    +21  /**
    +22   *
    +23   *         Description of a person who has contributed to the project, but who does
    +24   *         not have commit privileges. Usually, these contributions come in the
    +25   *         form of patches submitted.
    +26   *
    +27   *
    +28   * <p>Java class for Contributor complex type.
    +29   *
    +30   * <p>The following schema fragment specifies the expected content contained within this class.
    +31   *
    +32   * <pre>
    +33   * &lt;complexType name="Contributor">
    +34   *   &lt;complexContent>
    +35   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +36   *       &lt;all>
    +37   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *         &lt;element name="email" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +39   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +40   *         &lt;element name="organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +41   *         &lt;element name="organizationUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +42   *         &lt;element name="roles" minOccurs="0">
    +43   *           &lt;complexType>
    +44   *             &lt;complexContent>
    +45   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +46   *                 &lt;sequence>
    +47   *                   &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +48   *                 &lt;/sequence>
    +49   *               &lt;/restriction>
    +50   *             &lt;/complexContent>
    +51   *           &lt;/complexType>
    +52   *         &lt;/element>
    +53   *         &lt;element name="timezone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +54   *         &lt;element name="properties" minOccurs="0">
    +55   *           &lt;complexType>
    +56   *             &lt;complexContent>
    +57   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +58   *                 &lt;sequence>
    +59   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +60   *                 &lt;/sequence>
    +61   *               &lt;/restriction>
    +62   *             &lt;/complexContent>
    +63   *           &lt;/complexType>
    +64   *         &lt;/element>
    +65   *       &lt;/all>
    +66   *     &lt;/restriction>
    +67   *   &lt;/complexContent>
    +68   * &lt;/complexType>
    +69   * </pre>
    +70   *
    +71   *
    +72   */
    +73  @XmlAccessorType(XmlAccessType.FIELD)
    +74  @XmlType(name = "Contributor", propOrder = {
    +75  
    +76  })
    +77  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +78  public class Contributor {
    +79  
    +80      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +81      protected String name;
    +82      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +83      protected String email;
    +84      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +85      protected String url;
    +86      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +87      protected String organization;
    +88      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +89      protected String organizationUrl;
    +90      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +91      protected Contributor.Roles roles;
    +92      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +93      protected String timezone;
    +94      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +95      protected Contributor.Properties properties;
    +96  
    +97      /**
    +98       * Gets the value of the name property.
    +99       *
    +100      * @return
    +101      *     possible object is
    +102      *     {@link String }
    +103      *
    +104      */
    +105     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +106     public String getName() {
    +107         return name;
    +108     }
    +109 
    +110     /**
    +111      * Sets the value of the name property.
    +112      *
    +113      * @param value
    +114      *     allowed object is
    +115      *     {@link String }
    +116      *
    +117      */
    +118     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +119     public void setName(String value) {
    +120         this.name = value;
    +121     }
    +122 
    +123     /**
    +124      * Gets the value of the email property.
    +125      *
    +126      * @return
    +127      *     possible object is
    +128      *     {@link String }
    +129      *
    +130      */
    +131     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +132     public String getEmail() {
    +133         return email;
    +134     }
    +135 
    +136     /**
    +137      * Sets the value of the email property.
    +138      *
    +139      * @param value
    +140      *     allowed object is
    +141      *     {@link String }
    +142      *
    +143      */
    +144     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +145     public void setEmail(String value) {
    +146         this.email = value;
    +147     }
    +148 
    +149     /**
    +150      * Gets the value of the url property.
    +151      *
    +152      * @return
    +153      *     possible object is
    +154      *     {@link String }
    +155      *
    +156      */
    +157     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +158     public String getUrl() {
    +159         return url;
    +160     }
    +161 
    +162     /**
    +163      * Sets the value of the url property.
    +164      *
    +165      * @param value
    +166      *     allowed object is
    +167      *     {@link String }
    +168      *
    +169      */
    +170     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +171     public void setUrl(String value) {
    +172         this.url = value;
    +173     }
    +174 
    +175     /**
    +176      * Gets the value of the organization property.
    +177      *
    +178      * @return
    +179      *     possible object is
    +180      *     {@link String }
    +181      *
    +182      */
    +183     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +184     public String getOrganization() {
    +185         return organization;
    +186     }
    +187 
    +188     /**
    +189      * Sets the value of the organization property.
    +190      *
    +191      * @param value
    +192      *     allowed object is
    +193      *     {@link String }
    +194      *
    +195      */
    +196     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +197     public void setOrganization(String value) {
    +198         this.organization = value;
    +199     }
    +200 
    +201     /**
    +202      * Gets the value of the organizationUrl property.
    +203      *
    +204      * @return
    +205      *     possible object is
    +206      *     {@link String }
    +207      *
    +208      */
    +209     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +210     public String getOrganizationUrl() {
    +211         return organizationUrl;
    +212     }
    +213 
    +214     /**
    +215      * Sets the value of the organizationUrl property.
    +216      *
    +217      * @param value
    +218      *     allowed object is
    +219      *     {@link String }
    +220      *
    +221      */
    +222     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +223     public void setOrganizationUrl(String value) {
    +224         this.organizationUrl = value;
    +225     }
    +226 
    +227     /**
    +228      * Gets the value of the roles property.
    +229      *
    +230      * @return
    +231      *     possible object is
    +232      *     {@link Contributor.Roles }
    +233      *
    +234      */
    +235     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +236     public Contributor.Roles getRoles() {
    +237         return roles;
    +238     }
    +239 
    +240     /**
    +241      * Sets the value of the roles property.
    +242      *
    +243      * @param value
    +244      *     allowed object is
    +245      *     {@link Contributor.Roles }
    +246      *
    +247      */
    +248     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +249     public void setRoles(Contributor.Roles value) {
    +250         this.roles = value;
    +251     }
    +252 
    +253     /**
    +254      * Gets the value of the timezone property.
    +255      *
    +256      * @return
    +257      *     possible object is
    +258      *     {@link String }
    +259      *
    +260      */
    +261     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +262     public String getTimezone() {
    +263         return timezone;
    +264     }
    +265 
    +266     /**
    +267      * Sets the value of the timezone property.
    +268      *
    +269      * @param value
    +270      *     allowed object is
    +271      *     {@link String }
    +272      *
    +273      */
    +274     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +275     public void setTimezone(String value) {
    +276         this.timezone = value;
    +277     }
    +278 
    +279     /**
    +280      * Gets the value of the properties property.
    +281      *
    +282      * @return
    +283      *     possible object is
    +284      *     {@link Contributor.Properties }
    +285      *
    +286      */
    +287     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +288     public Contributor.Properties getProperties() {
    +289         return properties;
    +290     }
    +291 
    +292     /**
    +293      * Sets the value of the properties property.
    +294      *
    +295      * @param value
    +296      *     allowed object is
    +297      *     {@link Contributor.Properties }
    +298      *
    +299      */
    +300     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +301     public void setProperties(Contributor.Properties value) {
    +302         this.properties = value;
    +303     }
    +304 
    +305 
    +306     /**
    +307      * <p>Java class for anonymous complex type.
    +308      *
    +309      * <p>The following schema fragment specifies the expected content contained within this class.
    +310      *
    +311      * <pre>
    +312      * &lt;complexType>
    +313      *   &lt;complexContent>
    +314      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +315      *       &lt;sequence>
    +316      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +317      *       &lt;/sequence>
    +318      *     &lt;/restriction>
    +319      *   &lt;/complexContent>
    +320      * &lt;/complexType>
    +321      * </pre>
    +322      *
    +323      *
    +324      */
    +325     @XmlAccessorType(XmlAccessType.FIELD)
    +326     @XmlType(name = "", propOrder = {
    +327         "any"
    +328     })
    +329     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +330     public static class Properties {
    +331 
    +332         @XmlAnyElement
    +333         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +334         protected List<Element> any;
    +335 
    +336         /**
    +337          * Gets the value of the any property.
    +338          *
    +339          * <p>
    +340          * This accessor method returns a reference to the live list,
    +341          * not a snapshot. Therefore any modification you make to the
    +342          * returned list will be present inside the JAXB object.
    +343          * This is why there is not a <CODE>set</CODE> method for the any property.
    +344          *
    +345          * <p>
    +346          * For example, to add a new item, do as follows:
    +347          * <pre>
    +348          *    getAny().add(newItem);
    +349          * </pre>
    +350          *
    +351          *
    +352          * <p>
    +353          * Objects of the following type(s) are allowed in the list
    +354          * {@link Element }
    +355          *
    +356          *
    +357          */
    +358         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +359         public List<Element> getAny() {
    +360             if (any == null) {
    +361                 any = new ArrayList<Element>();
    +362             }
    +363             return this.any;
    +364         }
    +365 
    +366     }
    +367 
    +368 
    +369     /**
    +370      * <p>Java class for anonymous complex type.
    +371      *
    +372      * <p>The following schema fragment specifies the expected content contained within this class.
    +373      *
    +374      * <pre>
    +375      * &lt;complexType>
    +376      *   &lt;complexContent>
    +377      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +378      *       &lt;sequence>
    +379      *         &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +380      *       &lt;/sequence>
    +381      *     &lt;/restriction>
    +382      *   &lt;/complexContent>
    +383      * &lt;/complexType>
    +384      * </pre>
    +385      *
    +386      *
    +387      */
    +388     @XmlAccessorType(XmlAccessType.FIELD)
    +389     @XmlType(name = "", propOrder = {
    +390         "role"
    +391     })
    +392     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +393     public static class Roles {
    +394 
    +395         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +396         protected List<String> role;
    +397 
    +398         /**
    +399          * Gets the value of the role property.
    +400          *
    +401          * <p>
    +402          * This accessor method returns a reference to the live list,
    +403          * not a snapshot. Therefore any modification you make to the
    +404          * returned list will be present inside the JAXB object.
    +405          * This is why there is not a <CODE>set</CODE> method for the role property.
    +406          *
    +407          * <p>
    +408          * For example, to add a new item, do as follows:
    +409          * <pre>
    +410          *    getRole().add(newItem);
    +411          * </pre>
    +412          *
    +413          *
    +414          * <p>
    +415          * Objects of the following type(s) are allowed in the list
    +416          * {@link String }
    +417          *
    +418          *
    +419          */
    +420         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +421         public List<String> getRole() {
    +422             if (role == null) {
    +423                 role = new ArrayList<String>();
    +424             }
    +425             return this.role;
    +426         }
    +427 
    +428     }
    +429 
    +430 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html new file mode 100644 index 000000000..8dec30227 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html @@ -0,0 +1,397 @@ + + + + +Dependency xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlElement;
    +17  import javax.xml.bind.annotation.XmlType;
    +18  
    +19  
    +20  /**
    +21   *  3.0.0+
    +22   *
    +23   * <p>Java class for Dependency complex type.
    +24   *
    +25   * <p>The following schema fragment specifies the expected content contained within this class.
    +26   *
    +27   * <pre>
    +28   * &lt;complexType name="Dependency">
    +29   *   &lt;complexContent>
    +30   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +31   *       &lt;all>
    +32   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="type" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="classifier" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="scope" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *         &lt;element name="systemPath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +39   *         &lt;element name="exclusions" minOccurs="0">
    +40   *           &lt;complexType>
    +41   *             &lt;complexContent>
    +42   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +43   *                 &lt;sequence>
    +44   *                   &lt;element name="exclusion" type="{http://maven.apache.org/POM/4.0.0}Exclusion" maxOccurs="unbounded" minOccurs="0"/>
    +45   *                 &lt;/sequence>
    +46   *               &lt;/restriction>
    +47   *             &lt;/complexContent>
    +48   *           &lt;/complexType>
    +49   *         &lt;/element>
    +50   *         &lt;element name="optional" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +51   *       &lt;/all>
    +52   *     &lt;/restriction>
    +53   *   &lt;/complexContent>
    +54   * &lt;/complexType>
    +55   * </pre>
    +56   *
    +57   *
    +58   */
    +59  @XmlAccessorType(XmlAccessType.FIELD)
    +60  @XmlType(name = "Dependency", propOrder = {
    +61  
    +62  })
    +63  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +64  public class Dependency {
    +65  
    +66      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +67      protected String groupId;
    +68      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +69      protected String artifactId;
    +70      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +71      protected String version;
    +72      @XmlElement(defaultValue = "jar")
    +73      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +74      protected String type;
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      protected String classifier;
    +77      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +78      protected String scope;
    +79      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +80      protected String systemPath;
    +81      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +82      protected Dependency.Exclusions exclusions;
    +83      @XmlElement(defaultValue = "false")
    +84      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +85      protected Boolean optional;
    +86  
    +87      /**
    +88       * Gets the value of the groupId property.
    +89       *
    +90       * @return
    +91       *     possible object is
    +92       *     {@link String }
    +93       *
    +94       */
    +95      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +96      public String getGroupId() {
    +97          return groupId;
    +98      }
    +99  
    +100     /**
    +101      * Sets the value of the groupId property.
    +102      *
    +103      * @param value
    +104      *     allowed object is
    +105      *     {@link String }
    +106      *
    +107      */
    +108     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +109     public void setGroupId(String value) {
    +110         this.groupId = value;
    +111     }
    +112 
    +113     /**
    +114      * Gets the value of the artifactId property.
    +115      *
    +116      * @return
    +117      *     possible object is
    +118      *     {@link String }
    +119      *
    +120      */
    +121     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +122     public String getArtifactId() {
    +123         return artifactId;
    +124     }
    +125 
    +126     /**
    +127      * Sets the value of the artifactId property.
    +128      *
    +129      * @param value
    +130      *     allowed object is
    +131      *     {@link String }
    +132      *
    +133      */
    +134     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +135     public void setArtifactId(String value) {
    +136         this.artifactId = value;
    +137     }
    +138 
    +139     /**
    +140      * Gets the value of the version property.
    +141      *
    +142      * @return
    +143      *     possible object is
    +144      *     {@link String }
    +145      *
    +146      */
    +147     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +148     public String getVersion() {
    +149         return version;
    +150     }
    +151 
    +152     /**
    +153      * Sets the value of the version property.
    +154      *
    +155      * @param value
    +156      *     allowed object is
    +157      *     {@link String }
    +158      *
    +159      */
    +160     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +161     public void setVersion(String value) {
    +162         this.version = value;
    +163     }
    +164 
    +165     /**
    +166      * Gets the value of the type property.
    +167      *
    +168      * @return
    +169      *     possible object is
    +170      *     {@link String }
    +171      *
    +172      */
    +173     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +174     public String getType() {
    +175         return type;
    +176     }
    +177 
    +178     /**
    +179      * Sets the value of the type property.
    +180      *
    +181      * @param value
    +182      *     allowed object is
    +183      *     {@link String }
    +184      *
    +185      */
    +186     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +187     public void setType(String value) {
    +188         this.type = value;
    +189     }
    +190 
    +191     /**
    +192      * Gets the value of the classifier property.
    +193      *
    +194      * @return
    +195      *     possible object is
    +196      *     {@link String }
    +197      *
    +198      */
    +199     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +200     public String getClassifier() {
    +201         return classifier;
    +202     }
    +203 
    +204     /**
    +205      * Sets the value of the classifier property.
    +206      *
    +207      * @param value
    +208      *     allowed object is
    +209      *     {@link String }
    +210      *
    +211      */
    +212     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +213     public void setClassifier(String value) {
    +214         this.classifier = value;
    +215     }
    +216 
    +217     /**
    +218      * Gets the value of the scope property.
    +219      *
    +220      * @return
    +221      *     possible object is
    +222      *     {@link String }
    +223      *
    +224      */
    +225     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +226     public String getScope() {
    +227         return scope;
    +228     }
    +229 
    +230     /**
    +231      * Sets the value of the scope property.
    +232      *
    +233      * @param value
    +234      *     allowed object is
    +235      *     {@link String }
    +236      *
    +237      */
    +238     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +239     public void setScope(String value) {
    +240         this.scope = value;
    +241     }
    +242 
    +243     /**
    +244      * Gets the value of the systemPath property.
    +245      *
    +246      * @return
    +247      *     possible object is
    +248      *     {@link String }
    +249      *
    +250      */
    +251     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +252     public String getSystemPath() {
    +253         return systemPath;
    +254     }
    +255 
    +256     /**
    +257      * Sets the value of the systemPath property.
    +258      *
    +259      * @param value
    +260      *     allowed object is
    +261      *     {@link String }
    +262      *
    +263      */
    +264     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +265     public void setSystemPath(String value) {
    +266         this.systemPath = value;
    +267     }
    +268 
    +269     /**
    +270      * Gets the value of the exclusions property.
    +271      *
    +272      * @return
    +273      *     possible object is
    +274      *     {@link Dependency.Exclusions }
    +275      *
    +276      */
    +277     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +278     public Dependency.Exclusions getExclusions() {
    +279         return exclusions;
    +280     }
    +281 
    +282     /**
    +283      * Sets the value of the exclusions property.
    +284      *
    +285      * @param value
    +286      *     allowed object is
    +287      *     {@link Dependency.Exclusions }
    +288      *
    +289      */
    +290     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +291     public void setExclusions(Dependency.Exclusions value) {
    +292         this.exclusions = value;
    +293     }
    +294 
    +295     /**
    +296      * Gets the value of the optional property.
    +297      *
    +298      * @return
    +299      *     possible object is
    +300      *     {@link Boolean }
    +301      *
    +302      */
    +303     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +304     public Boolean isOptional() {
    +305         return optional;
    +306     }
    +307 
    +308     /**
    +309      * Sets the value of the optional property.
    +310      *
    +311      * @param value
    +312      *     allowed object is
    +313      *     {@link Boolean }
    +314      *
    +315      */
    +316     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +317     public void setOptional(Boolean value) {
    +318         this.optional = value;
    +319     }
    +320 
    +321 
    +322     /**
    +323      * <p>Java class for anonymous complex type.
    +324      *
    +325      * <p>The following schema fragment specifies the expected content contained within this class.
    +326      *
    +327      * <pre>
    +328      * &lt;complexType>
    +329      *   &lt;complexContent>
    +330      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +331      *       &lt;sequence>
    +332      *         &lt;element name="exclusion" type="{http://maven.apache.org/POM/4.0.0}Exclusion" maxOccurs="unbounded" minOccurs="0"/>
    +333      *       &lt;/sequence>
    +334      *     &lt;/restriction>
    +335      *   &lt;/complexContent>
    +336      * &lt;/complexType>
    +337      * </pre>
    +338      *
    +339      *
    +340      */
    +341     @XmlAccessorType(XmlAccessType.FIELD)
    +342     @XmlType(name = "", propOrder = {
    +343         "exclusion"
    +344     })
    +345     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +346     public static class Exclusions {
    +347 
    +348         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +349         protected List<Exclusion> exclusion;
    +350 
    +351         /**
    +352          * Gets the value of the exclusion property.
    +353          *
    +354          * <p>
    +355          * This accessor method returns a reference to the live list,
    +356          * not a snapshot. Therefore any modification you make to the
    +357          * returned list will be present inside the JAXB object.
    +358          * This is why there is not a <CODE>set</CODE> method for the exclusion property.
    +359          *
    +360          * <p>
    +361          * For example, to add a new item, do as follows:
    +362          * <pre>
    +363          *    getExclusion().add(newItem);
    +364          * </pre>
    +365          *
    +366          *
    +367          * <p>
    +368          * Objects of the following type(s) are allowed in the list
    +369          * {@link Exclusion }
    +370          *
    +371          *
    +372          */
    +373         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +374         public List<Exclusion> getExclusion() {
    +375             if (exclusion == null) {
    +376                 exclusion = new ArrayList<Exclusion>();
    +377             }
    +378             return this.exclusion;
    +379         }
    +380 
    +381     }
    +382 
    +383 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html new file mode 100644 index 000000000..49afb301c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html @@ -0,0 +1,164 @@ + + + + +DependencyManagement xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlType;
    +17  
    +18  
    +19  /**
    +20   *
    +21   *         Section for management of default dependency information for use in a group of POMs.
    +22   *
    +23   *
    +24   * <p>Java class for DependencyManagement complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="DependencyManagement">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="dependencies" minOccurs="0">
    +34   *           &lt;complexType>
    +35   *             &lt;complexContent>
    +36   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +37   *                 &lt;sequence>
    +38   *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +39   *                 &lt;/sequence>
    +40   *               &lt;/restriction>
    +41   *             &lt;/complexContent>
    +42   *           &lt;/complexType>
    +43   *         &lt;/element>
    +44   *       &lt;/all>
    +45   *     &lt;/restriction>
    +46   *   &lt;/complexContent>
    +47   * &lt;/complexType>
    +48   * </pre>
    +49   *
    +50   *
    +51   */
    +52  @XmlAccessorType(XmlAccessType.FIELD)
    +53  @XmlType(name = "DependencyManagement", propOrder = {
    +54  
    +55  })
    +56  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57  public class DependencyManagement {
    +58  
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      protected DependencyManagement.Dependencies dependencies;
    +61  
    +62      /**
    +63       * Gets the value of the dependencies property.
    +64       *
    +65       * @return
    +66       *     possible object is
    +67       *     {@link DependencyManagement.Dependencies }
    +68       *
    +69       */
    +70      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +71      public DependencyManagement.Dependencies getDependencies() {
    +72          return dependencies;
    +73      }
    +74  
    +75      /**
    +76       * Sets the value of the dependencies property.
    +77       *
    +78       * @param value
    +79       *     allowed object is
    +80       *     {@link DependencyManagement.Dependencies }
    +81       *
    +82       */
    +83      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +84      public void setDependencies(DependencyManagement.Dependencies value) {
    +85          this.dependencies = value;
    +86      }
    +87  
    +88  
    +89      /**
    +90       * <p>Java class for anonymous complex type.
    +91       *
    +92       * <p>The following schema fragment specifies the expected content contained within this class.
    +93       *
    +94       * <pre>
    +95       * &lt;complexType>
    +96       *   &lt;complexContent>
    +97       *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +98       *       &lt;sequence>
    +99       *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +100      *       &lt;/sequence>
    +101      *     &lt;/restriction>
    +102      *   &lt;/complexContent>
    +103      * &lt;/complexType>
    +104      * </pre>
    +105      *
    +106      *
    +107      */
    +108     @XmlAccessorType(XmlAccessType.FIELD)
    +109     @XmlType(name = "", propOrder = {
    +110         "dependency"
    +111     })
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     public static class Dependencies {
    +114 
    +115         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +116         protected List<Dependency> dependency;
    +117 
    +118         /**
    +119          * Gets the value of the dependency property.
    +120          *
    +121          * <p>
    +122          * This accessor method returns a reference to the live list,
    +123          * not a snapshot. Therefore any modification you make to the
    +124          * returned list will be present inside the JAXB object.
    +125          * This is why there is not a <CODE>set</CODE> method for the dependency property.
    +126          *
    +127          * <p>
    +128          * For example, to add a new item, do as follows:
    +129          * <pre>
    +130          *    getDependency().add(newItem);
    +131          * </pre>
    +132          *
    +133          *
    +134          * <p>
    +135          * Objects of the following type(s) are allowed in the list
    +136          * {@link Dependency }
    +137          *
    +138          *
    +139          */
    +140         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +141         public List<Dependency> getDependency() {
    +142             if (dependency == null) {
    +143                 dependency = new ArrayList<Dependency>();
    +144             }
    +145             return this.dependency;
    +146         }
    +147 
    +148     }
    +149 
    +150 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html new file mode 100644 index 000000000..ad51b2f0b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html @@ -0,0 +1,209 @@ + + + + +DeploymentRepository xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   *
    +20   *         Repository contains the information needed for deploying to the remote repository.
    +21   *
    +22   *
    +23   * <p>Java class for DeploymentRepository complex type.
    +24   *
    +25   * <p>The following schema fragment specifies the expected content contained within this class.
    +26   *
    +27   * <pre>
    +28   * &lt;complexType name="DeploymentRepository">
    +29   *   &lt;complexContent>
    +30   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +31   *       &lt;all>
    +32   *         &lt;element name="uniqueVersion" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +33   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="layout" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *       &lt;/all>
    +38   *     &lt;/restriction>
    +39   *   &lt;/complexContent>
    +40   * &lt;/complexType>
    +41   * </pre>
    +42   *
    +43   *
    +44   */
    +45  @XmlAccessorType(XmlAccessType.FIELD)
    +46  @XmlType(name = "DeploymentRepository", propOrder = {
    +47  
    +48  })
    +49  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50  public class DeploymentRepository {
    +51  
    +52      @XmlElement(defaultValue = "true")
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected Boolean uniqueVersion;
    +55      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +56      protected String id;
    +57      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +58      protected String name;
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      protected String url;
    +61      @XmlElement(defaultValue = "default")
    +62      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +63      protected String layout;
    +64  
    +65      /**
    +66       * Gets the value of the uniqueVersion property.
    +67       *
    +68       * @return
    +69       *     possible object is
    +70       *     {@link Boolean }
    +71       *
    +72       */
    +73      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +74      public Boolean isUniqueVersion() {
    +75          return uniqueVersion;
    +76      }
    +77  
    +78      /**
    +79       * Sets the value of the uniqueVersion property.
    +80       *
    +81       * @param value
    +82       *     allowed object is
    +83       *     {@link Boolean }
    +84       *
    +85       */
    +86      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +87      public void setUniqueVersion(Boolean value) {
    +88          this.uniqueVersion = value;
    +89      }
    +90  
    +91      /**
    +92       * Gets the value of the id property.
    +93       *
    +94       * @return
    +95       *     possible object is
    +96       *     {@link String }
    +97       *
    +98       */
    +99      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +100     public String getId() {
    +101         return id;
    +102     }
    +103 
    +104     /**
    +105      * Sets the value of the id property.
    +106      *
    +107      * @param value
    +108      *     allowed object is
    +109      *     {@link String }
    +110      *
    +111      */
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     public void setId(String value) {
    +114         this.id = value;
    +115     }
    +116 
    +117     /**
    +118      * Gets the value of the name property.
    +119      *
    +120      * @return
    +121      *     possible object is
    +122      *     {@link String }
    +123      *
    +124      */
    +125     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +126     public String getName() {
    +127         return name;
    +128     }
    +129 
    +130     /**
    +131      * Sets the value of the name property.
    +132      *
    +133      * @param value
    +134      *     allowed object is
    +135      *     {@link String }
    +136      *
    +137      */
    +138     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +139     public void setName(String value) {
    +140         this.name = value;
    +141     }
    +142 
    +143     /**
    +144      * Gets the value of the url property.
    +145      *
    +146      * @return
    +147      *     possible object is
    +148      *     {@link String }
    +149      *
    +150      */
    +151     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +152     public String getUrl() {
    +153         return url;
    +154     }
    +155 
    +156     /**
    +157      * Sets the value of the url property.
    +158      *
    +159      * @param value
    +160      *     allowed object is
    +161      *     {@link String }
    +162      *
    +163      */
    +164     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +165     public void setUrl(String value) {
    +166         this.url = value;
    +167     }
    +168 
    +169     /**
    +170      * Gets the value of the layout property.
    +171      *
    +172      * @return
    +173      *     possible object is
    +174      *     {@link String }
    +175      *
    +176      */
    +177     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +178     public String getLayout() {
    +179         return layout;
    +180     }
    +181 
    +182     /**
    +183      * Sets the value of the layout property.
    +184      *
    +185      * @param value
    +186      *     allowed object is
    +187      *     {@link String }
    +188      *
    +189      */
    +190     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +191     public void setLayout(String value) {
    +192         this.layout = value;
    +193     }
    +194 
    +195 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html new file mode 100644 index 000000000..40f94bcd7 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html @@ -0,0 +1,471 @@ + + + + +Developer xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlType;
    +18  import org.w3c.dom.Element;
    +19  
    +20  
    +21  /**
    +22   *
    +23   *         Information about one of the committers on this project.
    +24   *
    +25   *
    +26   * <p>Java class for Developer complex type.
    +27   *
    +28   * <p>The following schema fragment specifies the expected content contained within this class.
    +29   *
    +30   * <pre>
    +31   * &lt;complexType name="Developer">
    +32   *   &lt;complexContent>
    +33   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +34   *       &lt;all>
    +35   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="email" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +39   *         &lt;element name="organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +40   *         &lt;element name="organizationUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +41   *         &lt;element name="roles" minOccurs="0">
    +42   *           &lt;complexType>
    +43   *             &lt;complexContent>
    +44   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +45   *                 &lt;sequence>
    +46   *                   &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +47   *                 &lt;/sequence>
    +48   *               &lt;/restriction>
    +49   *             &lt;/complexContent>
    +50   *           &lt;/complexType>
    +51   *         &lt;/element>
    +52   *         &lt;element name="timezone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +53   *         &lt;element name="properties" minOccurs="0">
    +54   *           &lt;complexType>
    +55   *             &lt;complexContent>
    +56   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +57   *                 &lt;sequence>
    +58   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +59   *                 &lt;/sequence>
    +60   *               &lt;/restriction>
    +61   *             &lt;/complexContent>
    +62   *           &lt;/complexType>
    +63   *         &lt;/element>
    +64   *       &lt;/all>
    +65   *     &lt;/restriction>
    +66   *   &lt;/complexContent>
    +67   * &lt;/complexType>
    +68   * </pre>
    +69   *
    +70   *
    +71   */
    +72  @XmlAccessorType(XmlAccessType.FIELD)
    +73  @XmlType(name = "Developer", propOrder = {
    +74  
    +75  })
    +76  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +77  public class Developer {
    +78  
    +79      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +80      protected String id;
    +81      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +82      protected String name;
    +83      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +84      protected String email;
    +85      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +86      protected String url;
    +87      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +88      protected String organization;
    +89      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +90      protected String organizationUrl;
    +91      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +92      protected Developer.Roles roles;
    +93      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +94      protected String timezone;
    +95      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +96      protected Developer.Properties properties;
    +97  
    +98      /**
    +99       * Gets the value of the id property.
    +100      *
    +101      * @return
    +102      *     possible object is
    +103      *     {@link String }
    +104      *
    +105      */
    +106     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +107     public String getId() {
    +108         return id;
    +109     }
    +110 
    +111     /**
    +112      * Sets the value of the id property.
    +113      *
    +114      * @param value
    +115      *     allowed object is
    +116      *     {@link String }
    +117      *
    +118      */
    +119     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +120     public void setId(String value) {
    +121         this.id = value;
    +122     }
    +123 
    +124     /**
    +125      * Gets the value of the name property.
    +126      *
    +127      * @return
    +128      *     possible object is
    +129      *     {@link String }
    +130      *
    +131      */
    +132     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +133     public String getName() {
    +134         return name;
    +135     }
    +136 
    +137     /**
    +138      * Sets the value of the name property.
    +139      *
    +140      * @param value
    +141      *     allowed object is
    +142      *     {@link String }
    +143      *
    +144      */
    +145     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +146     public void setName(String value) {
    +147         this.name = value;
    +148     }
    +149 
    +150     /**
    +151      * Gets the value of the email property.
    +152      *
    +153      * @return
    +154      *     possible object is
    +155      *     {@link String }
    +156      *
    +157      */
    +158     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +159     public String getEmail() {
    +160         return email;
    +161     }
    +162 
    +163     /**
    +164      * Sets the value of the email property.
    +165      *
    +166      * @param value
    +167      *     allowed object is
    +168      *     {@link String }
    +169      *
    +170      */
    +171     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +172     public void setEmail(String value) {
    +173         this.email = value;
    +174     }
    +175 
    +176     /**
    +177      * Gets the value of the url property.
    +178      *
    +179      * @return
    +180      *     possible object is
    +181      *     {@link String }
    +182      *
    +183      */
    +184     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +185     public String getUrl() {
    +186         return url;
    +187     }
    +188 
    +189     /**
    +190      * Sets the value of the url property.
    +191      *
    +192      * @param value
    +193      *     allowed object is
    +194      *     {@link String }
    +195      *
    +196      */
    +197     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +198     public void setUrl(String value) {
    +199         this.url = value;
    +200     }
    +201 
    +202     /**
    +203      * Gets the value of the organization property.
    +204      *
    +205      * @return
    +206      *     possible object is
    +207      *     {@link String }
    +208      *
    +209      */
    +210     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +211     public String getOrganization() {
    +212         return organization;
    +213     }
    +214 
    +215     /**
    +216      * Sets the value of the organization property.
    +217      *
    +218      * @param value
    +219      *     allowed object is
    +220      *     {@link String }
    +221      *
    +222      */
    +223     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +224     public void setOrganization(String value) {
    +225         this.organization = value;
    +226     }
    +227 
    +228     /**
    +229      * Gets the value of the organizationUrl property.
    +230      *
    +231      * @return
    +232      *     possible object is
    +233      *     {@link String }
    +234      *
    +235      */
    +236     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +237     public String getOrganizationUrl() {
    +238         return organizationUrl;
    +239     }
    +240 
    +241     /**
    +242      * Sets the value of the organizationUrl property.
    +243      *
    +244      * @param value
    +245      *     allowed object is
    +246      *     {@link String }
    +247      *
    +248      */
    +249     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +250     public void setOrganizationUrl(String value) {
    +251         this.organizationUrl = value;
    +252     }
    +253 
    +254     /**
    +255      * Gets the value of the roles property.
    +256      *
    +257      * @return
    +258      *     possible object is
    +259      *     {@link Developer.Roles }
    +260      *
    +261      */
    +262     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +263     public Developer.Roles getRoles() {
    +264         return roles;
    +265     }
    +266 
    +267     /**
    +268      * Sets the value of the roles property.
    +269      *
    +270      * @param value
    +271      *     allowed object is
    +272      *     {@link Developer.Roles }
    +273      *
    +274      */
    +275     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +276     public void setRoles(Developer.Roles value) {
    +277         this.roles = value;
    +278     }
    +279 
    +280     /**
    +281      * Gets the value of the timezone property.
    +282      *
    +283      * @return
    +284      *     possible object is
    +285      *     {@link String }
    +286      *
    +287      */
    +288     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +289     public String getTimezone() {
    +290         return timezone;
    +291     }
    +292 
    +293     /**
    +294      * Sets the value of the timezone property.
    +295      *
    +296      * @param value
    +297      *     allowed object is
    +298      *     {@link String }
    +299      *
    +300      */
    +301     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +302     public void setTimezone(String value) {
    +303         this.timezone = value;
    +304     }
    +305 
    +306     /**
    +307      * Gets the value of the properties property.
    +308      *
    +309      * @return
    +310      *     possible object is
    +311      *     {@link Developer.Properties }
    +312      *
    +313      */
    +314     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +315     public Developer.Properties getProperties() {
    +316         return properties;
    +317     }
    +318 
    +319     /**
    +320      * Sets the value of the properties property.
    +321      *
    +322      * @param value
    +323      *     allowed object is
    +324      *     {@link Developer.Properties }
    +325      *
    +326      */
    +327     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +328     public void setProperties(Developer.Properties value) {
    +329         this.properties = value;
    +330     }
    +331 
    +332 
    +333     /**
    +334      * <p>Java class for anonymous complex type.
    +335      *
    +336      * <p>The following schema fragment specifies the expected content contained within this class.
    +337      *
    +338      * <pre>
    +339      * &lt;complexType>
    +340      *   &lt;complexContent>
    +341      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +342      *       &lt;sequence>
    +343      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +344      *       &lt;/sequence>
    +345      *     &lt;/restriction>
    +346      *   &lt;/complexContent>
    +347      * &lt;/complexType>
    +348      * </pre>
    +349      *
    +350      *
    +351      */
    +352     @XmlAccessorType(XmlAccessType.FIELD)
    +353     @XmlType(name = "", propOrder = {
    +354         "any"
    +355     })
    +356     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +357     public static class Properties {
    +358 
    +359         @XmlAnyElement
    +360         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +361         protected List<Element> any;
    +362 
    +363         /**
    +364          * Gets the value of the any property.
    +365          *
    +366          * <p>
    +367          * This accessor method returns a reference to the live list,
    +368          * not a snapshot. Therefore any modification you make to the
    +369          * returned list will be present inside the JAXB object.
    +370          * This is why there is not a <CODE>set</CODE> method for the any property.
    +371          *
    +372          * <p>
    +373          * For example, to add a new item, do as follows:
    +374          * <pre>
    +375          *    getAny().add(newItem);
    +376          * </pre>
    +377          *
    +378          *
    +379          * <p>
    +380          * Objects of the following type(s) are allowed in the list
    +381          * {@link Element }
    +382          *
    +383          *
    +384          */
    +385         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +386         public List<Element> getAny() {
    +387             if (any == null) {
    +388                 any = new ArrayList<Element>();
    +389             }
    +390             return this.any;
    +391         }
    +392 
    +393     }
    +394 
    +395 
    +396     /**
    +397      * <p>Java class for anonymous complex type.
    +398      *
    +399      * <p>The following schema fragment specifies the expected content contained within this class.
    +400      *
    +401      * <pre>
    +402      * &lt;complexType>
    +403      *   &lt;complexContent>
    +404      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +405      *       &lt;sequence>
    +406      *         &lt;element name="role" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +407      *       &lt;/sequence>
    +408      *     &lt;/restriction>
    +409      *   &lt;/complexContent>
    +410      * &lt;/complexType>
    +411      * </pre>
    +412      *
    +413      *
    +414      */
    +415     @XmlAccessorType(XmlAccessType.FIELD)
    +416     @XmlType(name = "", propOrder = {
    +417         "role"
    +418     })
    +419     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +420     public static class Roles {
    +421 
    +422         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +423         protected List<String> role;
    +424 
    +425         /**
    +426          * Gets the value of the role property.
    +427          *
    +428          * <p>
    +429          * This accessor method returns a reference to the live list,
    +430          * not a snapshot. Therefore any modification you make to the
    +431          * returned list will be present inside the JAXB object.
    +432          * This is why there is not a <CODE>set</CODE> method for the role property.
    +433          *
    +434          * <p>
    +435          * For example, to add a new item, do as follows:
    +436          * <pre>
    +437          *    getRole().add(newItem);
    +438          * </pre>
    +439          *
    +440          *
    +441          * <p>
    +442          * Objects of the following type(s) are allowed in the list
    +443          * {@link String }
    +444          *
    +445          *
    +446          */
    +447         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +448         public List<String> getRole() {
    +449             if (role == null) {
    +450                 role = new ArrayList<String>();
    +451             }
    +452             return this.role;
    +453         }
    +454 
    +455     }
    +456 
    +457 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html new file mode 100644 index 000000000..a664b810d --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html @@ -0,0 +1,237 @@ + + + + +DistributionManagement xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *         This elements describes all that pertains to distribution for a project.
    +20   *         It is primarily used for deployment of artifacts and the site
    +21   *         produced by the build.
    +22   *
    +23   *
    +24   * <p>Java class for DistributionManagement complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="DistributionManagement">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}DeploymentRepository" minOccurs="0"/>
    +34   *         &lt;element name="snapshotRepository" type="{http://maven.apache.org/POM/4.0.0}DeploymentRepository" minOccurs="0"/>
    +35   *         &lt;element name="site" type="{http://maven.apache.org/POM/4.0.0}Site" minOccurs="0"/>
    +36   *         &lt;element name="downloadUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="relocation" type="{http://maven.apache.org/POM/4.0.0}Relocation" minOccurs="0"/>
    +38   *         &lt;element name="status" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +39   *       &lt;/all>
    +40   *     &lt;/restriction>
    +41   *   &lt;/complexContent>
    +42   * &lt;/complexType>
    +43   * </pre>
    +44   *
    +45   *
    +46   */
    +47  @XmlAccessorType(XmlAccessType.FIELD)
    +48  @XmlType(name = "DistributionManagement", propOrder = {
    +49  
    +50  })
    +51  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52  public class DistributionManagement {
    +53  
    +54      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +55      protected DeploymentRepository repository;
    +56      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57      protected DeploymentRepository snapshotRepository;
    +58      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +59      protected Site site;
    +60      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +61      protected String downloadUrl;
    +62      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +63      protected Relocation relocation;
    +64      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +65      protected String status;
    +66  
    +67      /**
    +68       * Gets the value of the repository property.
    +69       *
    +70       * @return
    +71       *     possible object is
    +72       *     {@link DeploymentRepository }
    +73       *
    +74       */
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      public DeploymentRepository getRepository() {
    +77          return repository;
    +78      }
    +79  
    +80      /**
    +81       * Sets the value of the repository property.
    +82       *
    +83       * @param value
    +84       *     allowed object is
    +85       *     {@link DeploymentRepository }
    +86       *
    +87       */
    +88      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +89      public void setRepository(DeploymentRepository value) {
    +90          this.repository = value;
    +91      }
    +92  
    +93      /**
    +94       * Gets the value of the snapshotRepository property.
    +95       *
    +96       * @return
    +97       *     possible object is
    +98       *     {@link DeploymentRepository }
    +99       *
    +100      */
    +101     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +102     public DeploymentRepository getSnapshotRepository() {
    +103         return snapshotRepository;
    +104     }
    +105 
    +106     /**
    +107      * Sets the value of the snapshotRepository property.
    +108      *
    +109      * @param value
    +110      *     allowed object is
    +111      *     {@link DeploymentRepository }
    +112      *
    +113      */
    +114     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +115     public void setSnapshotRepository(DeploymentRepository value) {
    +116         this.snapshotRepository = value;
    +117     }
    +118 
    +119     /**
    +120      * Gets the value of the site property.
    +121      *
    +122      * @return
    +123      *     possible object is
    +124      *     {@link Site }
    +125      *
    +126      */
    +127     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +128     public Site getSite() {
    +129         return site;
    +130     }
    +131 
    +132     /**
    +133      * Sets the value of the site property.
    +134      *
    +135      * @param value
    +136      *     allowed object is
    +137      *     {@link Site }
    +138      *
    +139      */
    +140     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +141     public void setSite(Site value) {
    +142         this.site = value;
    +143     }
    +144 
    +145     /**
    +146      * Gets the value of the downloadUrl property.
    +147      *
    +148      * @return
    +149      *     possible object is
    +150      *     {@link String }
    +151      *
    +152      */
    +153     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +154     public String getDownloadUrl() {
    +155         return downloadUrl;
    +156     }
    +157 
    +158     /**
    +159      * Sets the value of the downloadUrl property.
    +160      *
    +161      * @param value
    +162      *     allowed object is
    +163      *     {@link String }
    +164      *
    +165      */
    +166     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +167     public void setDownloadUrl(String value) {
    +168         this.downloadUrl = value;
    +169     }
    +170 
    +171     /**
    +172      * Gets the value of the relocation property.
    +173      *
    +174      * @return
    +175      *     possible object is
    +176      *     {@link Relocation }
    +177      *
    +178      */
    +179     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +180     public Relocation getRelocation() {
    +181         return relocation;
    +182     }
    +183 
    +184     /**
    +185      * Sets the value of the relocation property.
    +186      *
    +187      * @param value
    +188      *     allowed object is
    +189      *     {@link Relocation }
    +190      *
    +191      */
    +192     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +193     public void setRelocation(Relocation value) {
    +194         this.relocation = value;
    +195     }
    +196 
    +197     /**
    +198      * Gets the value of the status property.
    +199      *
    +200      * @return
    +201      *     possible object is
    +202      *     {@link String }
    +203      *
    +204      */
    +205     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +206     public String getStatus() {
    +207         return status;
    +208     }
    +209 
    +210     /**
    +211      * Sets the value of the status property.
    +212      *
    +213      * @param value
    +214      *     allowed object is
    +215      *     {@link String }
    +216      *
    +217      */
    +218     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +219     public void setStatus(String value) {
    +220         this.status = value;
    +221     }
    +222 
    +223 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html new file mode 100644 index 000000000..49e6181e9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html @@ -0,0 +1,117 @@ + + + + +Exclusion xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *  4.0.0
    +19   *
    +20   * <p>Java class for Exclusion complex type.
    +21   *
    +22   * <p>The following schema fragment specifies the expected content contained within this class.
    +23   *
    +24   * <pre>
    +25   * &lt;complexType name="Exclusion">
    +26   *   &lt;complexContent>
    +27   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +28   *       &lt;all>
    +29   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +30   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *       &lt;/all>
    +32   *     &lt;/restriction>
    +33   *   &lt;/complexContent>
    +34   * &lt;/complexType>
    +35   * </pre>
    +36   *
    +37   *
    +38   */
    +39  @XmlAccessorType(XmlAccessType.FIELD)
    +40  @XmlType(name = "Exclusion", propOrder = {
    +41  
    +42  })
    +43  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +44  public class Exclusion {
    +45  
    +46      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +47      protected String artifactId;
    +48      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +49      protected String groupId;
    +50  
    +51      /**
    +52       * Gets the value of the artifactId property.
    +53       *
    +54       * @return
    +55       *     possible object is
    +56       *     {@link String }
    +57       *
    +58       */
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      public String getArtifactId() {
    +61          return artifactId;
    +62      }
    +63  
    +64      /**
    +65       * Sets the value of the artifactId property.
    +66       *
    +67       * @param value
    +68       *     allowed object is
    +69       *     {@link String }
    +70       *
    +71       */
    +72      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +73      public void setArtifactId(String value) {
    +74          this.artifactId = value;
    +75      }
    +76  
    +77      /**
    +78       * Gets the value of the groupId property.
    +79       *
    +80       * @return
    +81       *     possible object is
    +82       *     {@link String }
    +83       *
    +84       */
    +85      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +86      public String getGroupId() {
    +87          return groupId;
    +88      }
    +89  
    +90      /**
    +91       * Sets the value of the groupId property.
    +92       *
    +93       * @param value
    +94       *     allowed object is
    +95       *     {@link String }
    +96       *
    +97       */
    +98      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +99      public void setGroupId(String value) {
    +100         this.groupId = value;
    +101     }
    +102 
    +103 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html new file mode 100644 index 000000000..2cf26f756 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html @@ -0,0 +1,146 @@ + + + + +Extension xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   * Describes a build extension to utilise.
    +19   *
    +20   * <p>Java class for Extension complex type.
    +21   *
    +22   * <p>The following schema fragment specifies the expected content contained within this class.
    +23   *
    +24   * <pre>
    +25   * &lt;complexType name="Extension">
    +26   *   &lt;complexContent>
    +27   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +28   *       &lt;all>
    +29   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +30   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *       &lt;/all>
    +33   *     &lt;/restriction>
    +34   *   &lt;/complexContent>
    +35   * &lt;/complexType>
    +36   * </pre>
    +37   *
    +38   *
    +39   */
    +40  @XmlAccessorType(XmlAccessType.FIELD)
    +41  @XmlType(name = "Extension", propOrder = {
    +42  
    +43  })
    +44  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +45  public class Extension {
    +46  
    +47      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +48      protected String groupId;
    +49      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50      protected String artifactId;
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String version;
    +53  
    +54      /**
    +55       * Gets the value of the groupId property.
    +56       *
    +57       * @return
    +58       *     possible object is
    +59       *     {@link String }
    +60       *
    +61       */
    +62      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +63      public String getGroupId() {
    +64          return groupId;
    +65      }
    +66  
    +67      /**
    +68       * Sets the value of the groupId property.
    +69       *
    +70       * @param value
    +71       *     allowed object is
    +72       *     {@link String }
    +73       *
    +74       */
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      public void setGroupId(String value) {
    +77          this.groupId = value;
    +78      }
    +79  
    +80      /**
    +81       * Gets the value of the artifactId property.
    +82       *
    +83       * @return
    +84       *     possible object is
    +85       *     {@link String }
    +86       *
    +87       */
    +88      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +89      public String getArtifactId() {
    +90          return artifactId;
    +91      }
    +92  
    +93      /**
    +94       * Sets the value of the artifactId property.
    +95       *
    +96       * @param value
    +97       *     allowed object is
    +98       *     {@link String }
    +99       *
    +100      */
    +101     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +102     public void setArtifactId(String value) {
    +103         this.artifactId = value;
    +104     }
    +105 
    +106     /**
    +107      * Gets the value of the version property.
    +108      *
    +109      * @return
    +110      *     possible object is
    +111      *     {@link String }
    +112      *
    +113      */
    +114     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +115     public String getVersion() {
    +116         return version;
    +117     }
    +118 
    +119     /**
    +120      * Sets the value of the version property.
    +121      *
    +122      * @param value
    +123      *     allowed object is
    +124      *     {@link String }
    +125      *
    +126      */
    +127     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +128     public void setVersion(String value) {
    +129         this.version = value;
    +130     }
    +131 
    +132 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html new file mode 100644 index 000000000..348cbaa69 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html @@ -0,0 +1,119 @@ + + + + +IssueManagement xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *         Information about the issue tracking (or bug tracking) system used to manage this project.
    +20   *
    +21   *
    +22   * <p>Java class for IssueManagement complex type.
    +23   *
    +24   * <p>The following schema fragment specifies the expected content contained within this class.
    +25   *
    +26   * <pre>
    +27   * &lt;complexType name="IssueManagement">
    +28   *   &lt;complexContent>
    +29   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +30   *       &lt;all>
    +31   *         &lt;element name="system" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *       &lt;/all>
    +34   *     &lt;/restriction>
    +35   *   &lt;/complexContent>
    +36   * &lt;/complexType>
    +37   * </pre>
    +38   *
    +39   *
    +40   */
    +41  @XmlAccessorType(XmlAccessType.FIELD)
    +42  @XmlType(name = "IssueManagement", propOrder = {
    +43  
    +44  })
    +45  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +46  public class IssueManagement {
    +47  
    +48      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +49      protected String system;
    +50      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +51      protected String url;
    +52  
    +53      /**
    +54       * Gets the value of the system property.
    +55       *
    +56       * @return
    +57       *     possible object is
    +58       *     {@link String }
    +59       *
    +60       */
    +61      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +62      public String getSystem() {
    +63          return system;
    +64      }
    +65  
    +66      /**
    +67       * Sets the value of the system property.
    +68       *
    +69       * @param value
    +70       *     allowed object is
    +71       *     {@link String }
    +72       *
    +73       */
    +74      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +75      public void setSystem(String value) {
    +76          this.system = value;
    +77      }
    +78  
    +79      /**
    +80       * Gets the value of the url property.
    +81       *
    +82       * @return
    +83       *     possible object is
    +84       *     {@link String }
    +85       *
    +86       */
    +87      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +88      public String getUrl() {
    +89          return url;
    +90      }
    +91  
    +92      /**
    +93       * Sets the value of the url property.
    +94       *
    +95       * @param value
    +96       *     allowed object is
    +97       *     {@link String }
    +98       *
    +99       */
    +100     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +101     public void setUrl(String value) {
    +102         this.url = value;
    +103     }
    +104 
    +105 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html new file mode 100644 index 000000000..42e2f40f0 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html @@ -0,0 +1,179 @@ + + + + +License xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *         Describes the licenses for this project.  This is used to generate
    +20   *         the license page of the project's web site, as well as being taken into consideration in other reporting and
    +21   *         validation. The licenses listed for the project are that of the project itself, and not of dependencies.
    +22   *
    +23   *
    +24   * <p>Java class for License complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="License">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="distribution" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="comments" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *       &lt;/all>
    +38   *     &lt;/restriction>
    +39   *   &lt;/complexContent>
    +40   * &lt;/complexType>
    +41   * </pre>
    +42   *
    +43   *
    +44   */
    +45  @XmlAccessorType(XmlAccessType.FIELD)
    +46  @XmlType(name = "License", propOrder = {
    +47  
    +48  })
    +49  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50  public class License {
    +51  
    +52      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +53      protected String name;
    +54      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +55      protected String url;
    +56      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57      protected String distribution;
    +58      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +59      protected String comments;
    +60  
    +61      /**
    +62       * Gets the value of the name property.
    +63       *
    +64       * @return
    +65       *     possible object is
    +66       *     {@link String }
    +67       *
    +68       */
    +69      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +70      public String getName() {
    +71          return name;
    +72      }
    +73  
    +74      /**
    +75       * Sets the value of the name property.
    +76       *
    +77       * @param value
    +78       *     allowed object is
    +79       *     {@link String }
    +80       *
    +81       */
    +82      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +83      public void setName(String value) {
    +84          this.name = value;
    +85      }
    +86  
    +87      /**
    +88       * Gets the value of the url property.
    +89       *
    +90       * @return
    +91       *     possible object is
    +92       *     {@link String }
    +93       *
    +94       */
    +95      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +96      public String getUrl() {
    +97          return url;
    +98      }
    +99  
    +100     /**
    +101      * Sets the value of the url property.
    +102      *
    +103      * @param value
    +104      *     allowed object is
    +105      *     {@link String }
    +106      *
    +107      */
    +108     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +109     public void setUrl(String value) {
    +110         this.url = value;
    +111     }
    +112 
    +113     /**
    +114      * Gets the value of the distribution property.
    +115      *
    +116      * @return
    +117      *     possible object is
    +118      *     {@link String }
    +119      *
    +120      */
    +121     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +122     public String getDistribution() {
    +123         return distribution;
    +124     }
    +125 
    +126     /**
    +127      * Sets the value of the distribution property.
    +128      *
    +129      * @param value
    +130      *     allowed object is
    +131      *     {@link String }
    +132      *
    +133      */
    +134     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +135     public void setDistribution(String value) {
    +136         this.distribution = value;
    +137     }
    +138 
    +139     /**
    +140      * Gets the value of the comments property.
    +141      *
    +142      * @return
    +143      *     possible object is
    +144      *     {@link String }
    +145      *
    +146      */
    +147     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +148     public String getComments() {
    +149         return comments;
    +150     }
    +151 
    +152     /**
    +153      * Sets the value of the comments property.
    +154      *
    +155      * @param value
    +156      *     allowed object is
    +157      *     {@link String }
    +158      *
    +159      */
    +160     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +161     public void setComments(String value) {
    +162         this.comments = value;
    +163     }
    +164 
    +165 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html new file mode 100644 index 000000000..555a01790 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html @@ -0,0 +1,310 @@ + + + + +MailingList xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlType;
    +17  
    +18  
    +19  /**
    +20   *
    +21   *         This element describes all of the mailing lists associated with
    +22   *         a project. The auto-generated site references this information.
    +23   *
    +24   *
    +25   * <p>Java class for MailingList complex type.
    +26   *
    +27   * <p>The following schema fragment specifies the expected content contained within this class.
    +28   *
    +29   * <pre>
    +30   * &lt;complexType name="MailingList">
    +31   *   &lt;complexContent>
    +32   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +33   *       &lt;all>
    +34   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="subscribe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="unsubscribe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="post" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *         &lt;element name="archive" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +39   *         &lt;element name="otherArchives" minOccurs="0">
    +40   *           &lt;complexType>
    +41   *             &lt;complexContent>
    +42   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +43   *                 &lt;sequence>
    +44   *                   &lt;element name="otherArchive" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +45   *                 &lt;/sequence>
    +46   *               &lt;/restriction>
    +47   *             &lt;/complexContent>
    +48   *           &lt;/complexType>
    +49   *         &lt;/element>
    +50   *       &lt;/all>
    +51   *     &lt;/restriction>
    +52   *   &lt;/complexContent>
    +53   * &lt;/complexType>
    +54   * </pre>
    +55   *
    +56   *
    +57   */
    +58  @XmlAccessorType(XmlAccessType.FIELD)
    +59  @XmlType(name = "MailingList", propOrder = {
    +60  
    +61  })
    +62  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +63  public class MailingList {
    +64  
    +65      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +66      protected String name;
    +67      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +68      protected String subscribe;
    +69      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +70      protected String unsubscribe;
    +71      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +72      protected String post;
    +73      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +74      protected String archive;
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      protected MailingList.OtherArchives otherArchives;
    +77  
    +78      /**
    +79       * Gets the value of the name property.
    +80       *
    +81       * @return
    +82       *     possible object is
    +83       *     {@link String }
    +84       *
    +85       */
    +86      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +87      public String getName() {
    +88          return name;
    +89      }
    +90  
    +91      /**
    +92       * Sets the value of the name property.
    +93       *
    +94       * @param value
    +95       *     allowed object is
    +96       *     {@link String }
    +97       *
    +98       */
    +99      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +100     public void setName(String value) {
    +101         this.name = value;
    +102     }
    +103 
    +104     /**
    +105      * Gets the value of the subscribe property.
    +106      *
    +107      * @return
    +108      *     possible object is
    +109      *     {@link String }
    +110      *
    +111      */
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     public String getSubscribe() {
    +114         return subscribe;
    +115     }
    +116 
    +117     /**
    +118      * Sets the value of the subscribe property.
    +119      *
    +120      * @param value
    +121      *     allowed object is
    +122      *     {@link String }
    +123      *
    +124      */
    +125     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +126     public void setSubscribe(String value) {
    +127         this.subscribe = value;
    +128     }
    +129 
    +130     /**
    +131      * Gets the value of the unsubscribe property.
    +132      *
    +133      * @return
    +134      *     possible object is
    +135      *     {@link String }
    +136      *
    +137      */
    +138     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +139     public String getUnsubscribe() {
    +140         return unsubscribe;
    +141     }
    +142 
    +143     /**
    +144      * Sets the value of the unsubscribe property.
    +145      *
    +146      * @param value
    +147      *     allowed object is
    +148      *     {@link String }
    +149      *
    +150      */
    +151     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +152     public void setUnsubscribe(String value) {
    +153         this.unsubscribe = value;
    +154     }
    +155 
    +156     /**
    +157      * Gets the value of the post property.
    +158      *
    +159      * @return
    +160      *     possible object is
    +161      *     {@link String }
    +162      *
    +163      */
    +164     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +165     public String getPost() {
    +166         return post;
    +167     }
    +168 
    +169     /**
    +170      * Sets the value of the post property.
    +171      *
    +172      * @param value
    +173      *     allowed object is
    +174      *     {@link String }
    +175      *
    +176      */
    +177     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +178     public void setPost(String value) {
    +179         this.post = value;
    +180     }
    +181 
    +182     /**
    +183      * Gets the value of the archive property.
    +184      *
    +185      * @return
    +186      *     possible object is
    +187      *     {@link String }
    +188      *
    +189      */
    +190     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +191     public String getArchive() {
    +192         return archive;
    +193     }
    +194 
    +195     /**
    +196      * Sets the value of the archive property.
    +197      *
    +198      * @param value
    +199      *     allowed object is
    +200      *     {@link String }
    +201      *
    +202      */
    +203     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +204     public void setArchive(String value) {
    +205         this.archive = value;
    +206     }
    +207 
    +208     /**
    +209      * Gets the value of the otherArchives property.
    +210      *
    +211      * @return
    +212      *     possible object is
    +213      *     {@link MailingList.OtherArchives }
    +214      *
    +215      */
    +216     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +217     public MailingList.OtherArchives getOtherArchives() {
    +218         return otherArchives;
    +219     }
    +220 
    +221     /**
    +222      * Sets the value of the otherArchives property.
    +223      *
    +224      * @param value
    +225      *     allowed object is
    +226      *     {@link MailingList.OtherArchives }
    +227      *
    +228      */
    +229     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +230     public void setOtherArchives(MailingList.OtherArchives value) {
    +231         this.otherArchives = value;
    +232     }
    +233 
    +234 
    +235     /**
    +236      * <p>Java class for anonymous complex type.
    +237      *
    +238      * <p>The following schema fragment specifies the expected content contained within this class.
    +239      *
    +240      * <pre>
    +241      * &lt;complexType>
    +242      *   &lt;complexContent>
    +243      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +244      *       &lt;sequence>
    +245      *         &lt;element name="otherArchive" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +246      *       &lt;/sequence>
    +247      *     &lt;/restriction>
    +248      *   &lt;/complexContent>
    +249      * &lt;/complexType>
    +250      * </pre>
    +251      *
    +252      *
    +253      */
    +254     @XmlAccessorType(XmlAccessType.FIELD)
    +255     @XmlType(name = "", propOrder = {
    +256         "otherArchive"
    +257     })
    +258     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +259     public static class OtherArchives {
    +260 
    +261         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +262         protected List<String> otherArchive;
    +263 
    +264         /**
    +265          * Gets the value of the otherArchive property.
    +266          *
    +267          * <p>
    +268          * This accessor method returns a reference to the live list,
    +269          * not a snapshot. Therefore any modification you make to the
    +270          * returned list will be present inside the JAXB object.
    +271          * This is why there is not a <CODE>set</CODE> method for the otherArchive property.
    +272          *
    +273          * <p>
    +274          * For example, to add a new item, do as follows:
    +275          * <pre>
    +276          *    getOtherArchive().add(newItem);
    +277          * </pre>
    +278          *
    +279          *
    +280          * <p>
    +281          * Objects of the following type(s) are allowed in the list
    +282          * {@link String }
    +283          *
    +284          *
    +285          */
    +286         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +287         public List<String> getOtherArchive() {
    +288             if (otherArchive == null) {
    +289                 otherArchive = new ArrayList<String>();
    +290             }
    +291             return this.otherArchive;
    +292         }
    +293 
    +294     }
    +295 
    +296 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html new file mode 100644 index 000000000..8fea69dd8 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html @@ -0,0 +1,1732 @@ + + + + +Model xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlElement;
    +18  import javax.xml.bind.annotation.XmlType;
    +19  import org.w3c.dom.Element;
    +20  
    +21  
    +22  /**
    +23   *
    +24   *          The <code>&lt;project&gt;</code> element is the root of the descriptor.
    +25   *          The following table lists all of the possible child elements.
    +26   *
    +27   *
    +28   * <p>Java class for Model complex type.
    +29   *
    +30   * <p>The following schema fragment specifies the expected content contained within this class.
    +31   *
    +32   * <pre>
    +33   * &lt;complexType name="Model">
    +34   *   &lt;complexContent>
    +35   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +36   *       &lt;all>
    +37   *         &lt;element name="parent" type="{http://maven.apache.org/POM/4.0.0}Parent" minOccurs="0"/>
    +38   *         &lt;element name="modelVersion" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +39   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +40   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +41   *         &lt;element name="packaging" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +42   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +43   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +44   *         &lt;element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +45   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +46   *         &lt;element name="prerequisites" type="{http://maven.apache.org/POM/4.0.0}Prerequisites" minOccurs="0"/>
    +47   *         &lt;element name="issueManagement" type="{http://maven.apache.org/POM/4.0.0}IssueManagement" minOccurs="0"/>
    +48   *         &lt;element name="ciManagement" type="{http://maven.apache.org/POM/4.0.0}CiManagement" minOccurs="0"/>
    +49   *         &lt;element name="inceptionYear" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +50   *         &lt;element name="mailingLists" minOccurs="0">
    +51   *           &lt;complexType>
    +52   *             &lt;complexContent>
    +53   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +54   *                 &lt;sequence>
    +55   *                   &lt;element name="mailingList" type="{http://maven.apache.org/POM/4.0.0}MailingList" maxOccurs="unbounded" minOccurs="0"/>
    +56   *                 &lt;/sequence>
    +57   *               &lt;/restriction>
    +58   *             &lt;/complexContent>
    +59   *           &lt;/complexType>
    +60   *         &lt;/element>
    +61   *         &lt;element name="developers" minOccurs="0">
    +62   *           &lt;complexType>
    +63   *             &lt;complexContent>
    +64   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +65   *                 &lt;sequence>
    +66   *                   &lt;element name="developer" type="{http://maven.apache.org/POM/4.0.0}Developer" maxOccurs="unbounded" minOccurs="0"/>
    +67   *                 &lt;/sequence>
    +68   *               &lt;/restriction>
    +69   *             &lt;/complexContent>
    +70   *           &lt;/complexType>
    +71   *         &lt;/element>
    +72   *         &lt;element name="contributors" minOccurs="0">
    +73   *           &lt;complexType>
    +74   *             &lt;complexContent>
    +75   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +76   *                 &lt;sequence>
    +77   *                   &lt;element name="contributor" type="{http://maven.apache.org/POM/4.0.0}Contributor" maxOccurs="unbounded" minOccurs="0"/>
    +78   *                 &lt;/sequence>
    +79   *               &lt;/restriction>
    +80   *             &lt;/complexContent>
    +81   *           &lt;/complexType>
    +82   *         &lt;/element>
    +83   *         &lt;element name="licenses" minOccurs="0">
    +84   *           &lt;complexType>
    +85   *             &lt;complexContent>
    +86   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +87   *                 &lt;sequence>
    +88   *                   &lt;element name="license" type="{http://maven.apache.org/POM/4.0.0}License" maxOccurs="unbounded" minOccurs="0"/>
    +89   *                 &lt;/sequence>
    +90   *               &lt;/restriction>
    +91   *             &lt;/complexContent>
    +92   *           &lt;/complexType>
    +93   *         &lt;/element>
    +94   *         &lt;element name="scm" type="{http://maven.apache.org/POM/4.0.0}Scm" minOccurs="0"/>
    +95   *         &lt;element name="organization" type="{http://maven.apache.org/POM/4.0.0}Organization" minOccurs="0"/>
    +96   *         &lt;element name="build" type="{http://maven.apache.org/POM/4.0.0}Build" minOccurs="0"/>
    +97   *         &lt;element name="profiles" minOccurs="0">
    +98   *           &lt;complexType>
    +99   *             &lt;complexContent>
    +100  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +101  *                 &lt;sequence>
    +102  *                   &lt;element name="profile" type="{http://maven.apache.org/POM/4.0.0}Profile" maxOccurs="unbounded" minOccurs="0"/>
    +103  *                 &lt;/sequence>
    +104  *               &lt;/restriction>
    +105  *             &lt;/complexContent>
    +106  *           &lt;/complexType>
    +107  *         &lt;/element>
    +108  *         &lt;element name="modules" minOccurs="0">
    +109  *           &lt;complexType>
    +110  *             &lt;complexContent>
    +111  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +112  *                 &lt;sequence>
    +113  *                   &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +114  *                 &lt;/sequence>
    +115  *               &lt;/restriction>
    +116  *             &lt;/complexContent>
    +117  *           &lt;/complexType>
    +118  *         &lt;/element>
    +119  *         &lt;element name="repositories" minOccurs="0">
    +120  *           &lt;complexType>
    +121  *             &lt;complexContent>
    +122  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +123  *                 &lt;sequence>
    +124  *                   &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +125  *                 &lt;/sequence>
    +126  *               &lt;/restriction>
    +127  *             &lt;/complexContent>
    +128  *           &lt;/complexType>
    +129  *         &lt;/element>
    +130  *         &lt;element name="pluginRepositories" minOccurs="0">
    +131  *           &lt;complexType>
    +132  *             &lt;complexContent>
    +133  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +134  *                 &lt;sequence>
    +135  *                   &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +136  *                 &lt;/sequence>
    +137  *               &lt;/restriction>
    +138  *             &lt;/complexContent>
    +139  *           &lt;/complexType>
    +140  *         &lt;/element>
    +141  *         &lt;element name="dependencies" minOccurs="0">
    +142  *           &lt;complexType>
    +143  *             &lt;complexContent>
    +144  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +145  *                 &lt;sequence>
    +146  *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +147  *                 &lt;/sequence>
    +148  *               &lt;/restriction>
    +149  *             &lt;/complexContent>
    +150  *           &lt;/complexType>
    +151  *         &lt;/element>
    +152  *         &lt;element name="reports" minOccurs="0">
    +153  *           &lt;complexType>
    +154  *             &lt;complexContent>
    +155  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +156  *                 &lt;sequence>
    +157  *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +158  *                 &lt;/sequence>
    +159  *               &lt;/restriction>
    +160  *             &lt;/complexContent>
    +161  *           &lt;/complexType>
    +162  *         &lt;/element>
    +163  *         &lt;element name="reporting" type="{http://maven.apache.org/POM/4.0.0}Reporting" minOccurs="0"/>
    +164  *         &lt;element name="dependencyManagement" type="{http://maven.apache.org/POM/4.0.0}DependencyManagement" minOccurs="0"/>
    +165  *         &lt;element name="distributionManagement" type="{http://maven.apache.org/POM/4.0.0}DistributionManagement" minOccurs="0"/>
    +166  *         &lt;element name="properties" minOccurs="0">
    +167  *           &lt;complexType>
    +168  *             &lt;complexContent>
    +169  *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +170  *                 &lt;sequence>
    +171  *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +172  *                 &lt;/sequence>
    +173  *               &lt;/restriction>
    +174  *             &lt;/complexContent>
    +175  *           &lt;/complexType>
    +176  *         &lt;/element>
    +177  *       &lt;/all>
    +178  *     &lt;/restriction>
    +179  *   &lt;/complexContent>
    +180  * &lt;/complexType>
    +181  * </pre>
    +182  *
    +183  *
    +184  */
    +185 @XmlAccessorType(XmlAccessType.FIELD)
    +186 @XmlType(name = "Model", propOrder = {
    +187 
    +188 })
    +189 @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +190 public class Model {
    +191 
    +192     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +193     protected Parent parent;
    +194     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +195     protected String modelVersion;
    +196     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +197     protected String groupId;
    +198     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +199     protected String artifactId;
    +200     @XmlElement(defaultValue = "jar")
    +201     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +202     protected String packaging;
    +203     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +204     protected String name;
    +205     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +206     protected String version;
    +207     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +208     protected String description;
    +209     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +210     protected String url;
    +211     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +212     protected Prerequisites prerequisites;
    +213     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +214     protected IssueManagement issueManagement;
    +215     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +216     protected CiManagement ciManagement;
    +217     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +218     protected String inceptionYear;
    +219     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +220     protected Model.MailingLists mailingLists;
    +221     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +222     protected Model.Developers developers;
    +223     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +224     protected Model.Contributors contributors;
    +225     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +226     protected Model.Licenses licenses;
    +227     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +228     protected Scm scm;
    +229     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +230     protected Organization organization;
    +231     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +232     protected Build build;
    +233     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +234     protected Model.Profiles profiles;
    +235     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +236     protected Model.Modules modules;
    +237     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +238     protected Model.Repositories repositories;
    +239     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +240     protected Model.PluginRepositories pluginRepositories;
    +241     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +242     protected Model.Dependencies dependencies;
    +243     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +244     protected Model.Reports reports;
    +245     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +246     protected Reporting reporting;
    +247     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +248     protected DependencyManagement dependencyManagement;
    +249     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +250     protected DistributionManagement distributionManagement;
    +251     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +252     protected Model.Properties properties;
    +253 
    +254     /**
    +255      * Gets the value of the parent property.
    +256      *
    +257      * @return
    +258      *     possible object is
    +259      *     {@link Parent }
    +260      *
    +261      */
    +262     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +263     public Parent getParent() {
    +264         return parent;
    +265     }
    +266 
    +267     /**
    +268      * Sets the value of the parent property.
    +269      *
    +270      * @param value
    +271      *     allowed object is
    +272      *     {@link Parent }
    +273      *
    +274      */
    +275     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +276     public void setParent(Parent value) {
    +277         this.parent = value;
    +278     }
    +279 
    +280     /**
    +281      * Gets the value of the modelVersion property.
    +282      *
    +283      * @return
    +284      *     possible object is
    +285      *     {@link String }
    +286      *
    +287      */
    +288     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +289     public String getModelVersion() {
    +290         return modelVersion;
    +291     }
    +292 
    +293     /**
    +294      * Sets the value of the modelVersion property.
    +295      *
    +296      * @param value
    +297      *     allowed object is
    +298      *     {@link String }
    +299      *
    +300      */
    +301     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +302     public void setModelVersion(String value) {
    +303         this.modelVersion = value;
    +304     }
    +305 
    +306     /**
    +307      * Gets the value of the groupId property.
    +308      *
    +309      * @return
    +310      *     possible object is
    +311      *     {@link String }
    +312      *
    +313      */
    +314     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +315     public String getGroupId() {
    +316         return groupId;
    +317     }
    +318 
    +319     /**
    +320      * Sets the value of the groupId property.
    +321      *
    +322      * @param value
    +323      *     allowed object is
    +324      *     {@link String }
    +325      *
    +326      */
    +327     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +328     public void setGroupId(String value) {
    +329         this.groupId = value;
    +330     }
    +331 
    +332     /**
    +333      * Gets the value of the artifactId property.
    +334      *
    +335      * @return
    +336      *     possible object is
    +337      *     {@link String }
    +338      *
    +339      */
    +340     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +341     public String getArtifactId() {
    +342         return artifactId;
    +343     }
    +344 
    +345     /**
    +346      * Sets the value of the artifactId property.
    +347      *
    +348      * @param value
    +349      *     allowed object is
    +350      *     {@link String }
    +351      *
    +352      */
    +353     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +354     public void setArtifactId(String value) {
    +355         this.artifactId = value;
    +356     }
    +357 
    +358     /**
    +359      * Gets the value of the packaging property.
    +360      *
    +361      * @return
    +362      *     possible object is
    +363      *     {@link String }
    +364      *
    +365      */
    +366     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +367     public String getPackaging() {
    +368         return packaging;
    +369     }
    +370 
    +371     /**
    +372      * Sets the value of the packaging property.
    +373      *
    +374      * @param value
    +375      *     allowed object is
    +376      *     {@link String }
    +377      *
    +378      */
    +379     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +380     public void setPackaging(String value) {
    +381         this.packaging = value;
    +382     }
    +383 
    +384     /**
    +385      * Gets the value of the name property.
    +386      *
    +387      * @return
    +388      *     possible object is
    +389      *     {@link String }
    +390      *
    +391      */
    +392     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +393     public String getName() {
    +394         return name;
    +395     }
    +396 
    +397     /**
    +398      * Sets the value of the name property.
    +399      *
    +400      * @param value
    +401      *     allowed object is
    +402      *     {@link String }
    +403      *
    +404      */
    +405     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +406     public void setName(String value) {
    +407         this.name = value;
    +408     }
    +409 
    +410     /**
    +411      * Gets the value of the version property.
    +412      *
    +413      * @return
    +414      *     possible object is
    +415      *     {@link String }
    +416      *
    +417      */
    +418     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +419     public String getVersion() {
    +420         return version;
    +421     }
    +422 
    +423     /**
    +424      * Sets the value of the version property.
    +425      *
    +426      * @param value
    +427      *     allowed object is
    +428      *     {@link String }
    +429      *
    +430      */
    +431     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +432     public void setVersion(String value) {
    +433         this.version = value;
    +434     }
    +435 
    +436     /**
    +437      * Gets the value of the description property.
    +438      *
    +439      * @return
    +440      *     possible object is
    +441      *     {@link String }
    +442      *
    +443      */
    +444     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +445     public String getDescription() {
    +446         return description;
    +447     }
    +448 
    +449     /**
    +450      * Sets the value of the description property.
    +451      *
    +452      * @param value
    +453      *     allowed object is
    +454      *     {@link String }
    +455      *
    +456      */
    +457     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +458     public void setDescription(String value) {
    +459         this.description = value;
    +460     }
    +461 
    +462     /**
    +463      * Gets the value of the url property.
    +464      *
    +465      * @return
    +466      *     possible object is
    +467      *     {@link String }
    +468      *
    +469      */
    +470     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +471     public String getUrl() {
    +472         return url;
    +473     }
    +474 
    +475     /**
    +476      * Sets the value of the url property.
    +477      *
    +478      * @param value
    +479      *     allowed object is
    +480      *     {@link String }
    +481      *
    +482      */
    +483     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +484     public void setUrl(String value) {
    +485         this.url = value;
    +486     }
    +487 
    +488     /**
    +489      * Gets the value of the prerequisites property.
    +490      *
    +491      * @return
    +492      *     possible object is
    +493      *     {@link Prerequisites }
    +494      *
    +495      */
    +496     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +497     public Prerequisites getPrerequisites() {
    +498         return prerequisites;
    +499     }
    +500 
    +501     /**
    +502      * Sets the value of the prerequisites property.
    +503      *
    +504      * @param value
    +505      *     allowed object is
    +506      *     {@link Prerequisites }
    +507      *
    +508      */
    +509     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +510     public void setPrerequisites(Prerequisites value) {
    +511         this.prerequisites = value;
    +512     }
    +513 
    +514     /**
    +515      * Gets the value of the issueManagement property.
    +516      *
    +517      * @return
    +518      *     possible object is
    +519      *     {@link IssueManagement }
    +520      *
    +521      */
    +522     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +523     public IssueManagement getIssueManagement() {
    +524         return issueManagement;
    +525     }
    +526 
    +527     /**
    +528      * Sets the value of the issueManagement property.
    +529      *
    +530      * @param value
    +531      *     allowed object is
    +532      *     {@link IssueManagement }
    +533      *
    +534      */
    +535     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +536     public void setIssueManagement(IssueManagement value) {
    +537         this.issueManagement = value;
    +538     }
    +539 
    +540     /**
    +541      * Gets the value of the ciManagement property.
    +542      *
    +543      * @return
    +544      *     possible object is
    +545      *     {@link CiManagement }
    +546      *
    +547      */
    +548     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +549     public CiManagement getCiManagement() {
    +550         return ciManagement;
    +551     }
    +552 
    +553     /**
    +554      * Sets the value of the ciManagement property.
    +555      *
    +556      * @param value
    +557      *     allowed object is
    +558      *     {@link CiManagement }
    +559      *
    +560      */
    +561     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +562     public void setCiManagement(CiManagement value) {
    +563         this.ciManagement = value;
    +564     }
    +565 
    +566     /**
    +567      * Gets the value of the inceptionYear property.
    +568      *
    +569      * @return
    +570      *     possible object is
    +571      *     {@link String }
    +572      *
    +573      */
    +574     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +575     public String getInceptionYear() {
    +576         return inceptionYear;
    +577     }
    +578 
    +579     /**
    +580      * Sets the value of the inceptionYear property.
    +581      *
    +582      * @param value
    +583      *     allowed object is
    +584      *     {@link String }
    +585      *
    +586      */
    +587     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +588     public void setInceptionYear(String value) {
    +589         this.inceptionYear = value;
    +590     }
    +591 
    +592     /**
    +593      * Gets the value of the mailingLists property.
    +594      *
    +595      * @return
    +596      *     possible object is
    +597      *     {@link Model.MailingLists }
    +598      *
    +599      */
    +600     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +601     public Model.MailingLists getMailingLists() {
    +602         return mailingLists;
    +603     }
    +604 
    +605     /**
    +606      * Sets the value of the mailingLists property.
    +607      *
    +608      * @param value
    +609      *     allowed object is
    +610      *     {@link Model.MailingLists }
    +611      *
    +612      */
    +613     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +614     public void setMailingLists(Model.MailingLists value) {
    +615         this.mailingLists = value;
    +616     }
    +617 
    +618     /**
    +619      * Gets the value of the developers property.
    +620      *
    +621      * @return
    +622      *     possible object is
    +623      *     {@link Model.Developers }
    +624      *
    +625      */
    +626     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +627     public Model.Developers getDevelopers() {
    +628         return developers;
    +629     }
    +630 
    +631     /**
    +632      * Sets the value of the developers property.
    +633      *
    +634      * @param value
    +635      *     allowed object is
    +636      *     {@link Model.Developers }
    +637      *
    +638      */
    +639     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +640     public void setDevelopers(Model.Developers value) {
    +641         this.developers = value;
    +642     }
    +643 
    +644     /**
    +645      * Gets the value of the contributors property.
    +646      *
    +647      * @return
    +648      *     possible object is
    +649      *     {@link Model.Contributors }
    +650      *
    +651      */
    +652     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +653     public Model.Contributors getContributors() {
    +654         return contributors;
    +655     }
    +656 
    +657     /**
    +658      * Sets the value of the contributors property.
    +659      *
    +660      * @param value
    +661      *     allowed object is
    +662      *     {@link Model.Contributors }
    +663      *
    +664      */
    +665     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +666     public void setContributors(Model.Contributors value) {
    +667         this.contributors = value;
    +668     }
    +669 
    +670     /**
    +671      * Gets the value of the licenses property.
    +672      *
    +673      * @return
    +674      *     possible object is
    +675      *     {@link Model.Licenses }
    +676      *
    +677      */
    +678     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +679     public Model.Licenses getLicenses() {
    +680         return licenses;
    +681     }
    +682 
    +683     /**
    +684      * Sets the value of the licenses property.
    +685      *
    +686      * @param value
    +687      *     allowed object is
    +688      *     {@link Model.Licenses }
    +689      *
    +690      */
    +691     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +692     public void setLicenses(Model.Licenses value) {
    +693         this.licenses = value;
    +694     }
    +695 
    +696     /**
    +697      * Gets the value of the scm property.
    +698      *
    +699      * @return
    +700      *     possible object is
    +701      *     {@link Scm }
    +702      *
    +703      */
    +704     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +705     public Scm getScm() {
    +706         return scm;
    +707     }
    +708 
    +709     /**
    +710      * Sets the value of the scm property.
    +711      *
    +712      * @param value
    +713      *     allowed object is
    +714      *     {@link Scm }
    +715      *
    +716      */
    +717     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +718     public void setScm(Scm value) {
    +719         this.scm = value;
    +720     }
    +721 
    +722     /**
    +723      * Gets the value of the organization property.
    +724      *
    +725      * @return
    +726      *     possible object is
    +727      *     {@link Organization }
    +728      *
    +729      */
    +730     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +731     public Organization getOrganization() {
    +732         return organization;
    +733     }
    +734 
    +735     /**
    +736      * Sets the value of the organization property.
    +737      *
    +738      * @param value
    +739      *     allowed object is
    +740      *     {@link Organization }
    +741      *
    +742      */
    +743     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +744     public void setOrganization(Organization value) {
    +745         this.organization = value;
    +746     }
    +747 
    +748     /**
    +749      * Gets the value of the build property.
    +750      *
    +751      * @return
    +752      *     possible object is
    +753      *     {@link Build }
    +754      *
    +755      */
    +756     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +757     public Build getBuild() {
    +758         return build;
    +759     }
    +760 
    +761     /**
    +762      * Sets the value of the build property.
    +763      *
    +764      * @param value
    +765      *     allowed object is
    +766      *     {@link Build }
    +767      *
    +768      */
    +769     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +770     public void setBuild(Build value) {
    +771         this.build = value;
    +772     }
    +773 
    +774     /**
    +775      * Gets the value of the profiles property.
    +776      *
    +777      * @return
    +778      *     possible object is
    +779      *     {@link Model.Profiles }
    +780      *
    +781      */
    +782     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +783     public Model.Profiles getProfiles() {
    +784         return profiles;
    +785     }
    +786 
    +787     /**
    +788      * Sets the value of the profiles property.
    +789      *
    +790      * @param value
    +791      *     allowed object is
    +792      *     {@link Model.Profiles }
    +793      *
    +794      */
    +795     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +796     public void setProfiles(Model.Profiles value) {
    +797         this.profiles = value;
    +798     }
    +799 
    +800     /**
    +801      * Gets the value of the modules property.
    +802      *
    +803      * @return
    +804      *     possible object is
    +805      *     {@link Model.Modules }
    +806      *
    +807      */
    +808     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +809     public Model.Modules getModules() {
    +810         return modules;
    +811     }
    +812 
    +813     /**
    +814      * Sets the value of the modules property.
    +815      *
    +816      * @param value
    +817      *     allowed object is
    +818      *     {@link Model.Modules }
    +819      *
    +820      */
    +821     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +822     public void setModules(Model.Modules value) {
    +823         this.modules = value;
    +824     }
    +825 
    +826     /**
    +827      * Gets the value of the repositories property.
    +828      *
    +829      * @return
    +830      *     possible object is
    +831      *     {@link Model.Repositories }
    +832      *
    +833      */
    +834     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +835     public Model.Repositories getRepositories() {
    +836         return repositories;
    +837     }
    +838 
    +839     /**
    +840      * Sets the value of the repositories property.
    +841      *
    +842      * @param value
    +843      *     allowed object is
    +844      *     {@link Model.Repositories }
    +845      *
    +846      */
    +847     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +848     public void setRepositories(Model.Repositories value) {
    +849         this.repositories = value;
    +850     }
    +851 
    +852     /**
    +853      * Gets the value of the pluginRepositories property.
    +854      *
    +855      * @return
    +856      *     possible object is
    +857      *     {@link Model.PluginRepositories }
    +858      *
    +859      */
    +860     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +861     public Model.PluginRepositories getPluginRepositories() {
    +862         return pluginRepositories;
    +863     }
    +864 
    +865     /**
    +866      * Sets the value of the pluginRepositories property.
    +867      *
    +868      * @param value
    +869      *     allowed object is
    +870      *     {@link Model.PluginRepositories }
    +871      *
    +872      */
    +873     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +874     public void setPluginRepositories(Model.PluginRepositories value) {
    +875         this.pluginRepositories = value;
    +876     }
    +877 
    +878     /**
    +879      * Gets the value of the dependencies property.
    +880      *
    +881      * @return
    +882      *     possible object is
    +883      *     {@link Model.Dependencies }
    +884      *
    +885      */
    +886     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +887     public Model.Dependencies getDependencies() {
    +888         return dependencies;
    +889     }
    +890 
    +891     /**
    +892      * Sets the value of the dependencies property.
    +893      *
    +894      * @param value
    +895      *     allowed object is
    +896      *     {@link Model.Dependencies }
    +897      *
    +898      */
    +899     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +900     public void setDependencies(Model.Dependencies value) {
    +901         this.dependencies = value;
    +902     }
    +903 
    +904     /**
    +905      * Gets the value of the reports property.
    +906      *
    +907      * @return
    +908      *     possible object is
    +909      *     {@link Model.Reports }
    +910      *
    +911      */
    +912     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +913     public Model.Reports getReports() {
    +914         return reports;
    +915     }
    +916 
    +917     /**
    +918      * Sets the value of the reports property.
    +919      *
    +920      * @param value
    +921      *     allowed object is
    +922      *     {@link Model.Reports }
    +923      *
    +924      */
    +925     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +926     public void setReports(Model.Reports value) {
    +927         this.reports = value;
    +928     }
    +929 
    +930     /**
    +931      * Gets the value of the reporting property.
    +932      *
    +933      * @return
    +934      *     possible object is
    +935      *     {@link Reporting }
    +936      *
    +937      */
    +938     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +939     public Reporting getReporting() {
    +940         return reporting;
    +941     }
    +942 
    +943     /**
    +944      * Sets the value of the reporting property.
    +945      *
    +946      * @param value
    +947      *     allowed object is
    +948      *     {@link Reporting }
    +949      *
    +950      */
    +951     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +952     public void setReporting(Reporting value) {
    +953         this.reporting = value;
    +954     }
    +955 
    +956     /**
    +957      * Gets the value of the dependencyManagement property.
    +958      *
    +959      * @return
    +960      *     possible object is
    +961      *     {@link DependencyManagement }
    +962      *
    +963      */
    +964     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +965     public DependencyManagement getDependencyManagement() {
    +966         return dependencyManagement;
    +967     }
    +968 
    +969     /**
    +970      * Sets the value of the dependencyManagement property.
    +971      *
    +972      * @param value
    +973      *     allowed object is
    +974      *     {@link DependencyManagement }
    +975      *
    +976      */
    +977     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +978     public void setDependencyManagement(DependencyManagement value) {
    +979         this.dependencyManagement = value;
    +980     }
    +981 
    +982     /**
    +983      * Gets the value of the distributionManagement property.
    +984      *
    +985      * @return
    +986      *     possible object is
    +987      *     {@link DistributionManagement }
    +988      *
    +989      */
    +990     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +991     public DistributionManagement getDistributionManagement() {
    +992         return distributionManagement;
    +993     }
    +994 
    +995     /**
    +996      * Sets the value of the distributionManagement property.
    +997      *
    +998      * @param value
    +999      *     allowed object is
    +1000      *     {@link DistributionManagement }
    +1001      *
    +1002      */
    +1003     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1004     public void setDistributionManagement(DistributionManagement value) {
    +1005         this.distributionManagement = value;
    +1006     }
    +1007 
    +1008     /**
    +1009      * Gets the value of the properties property.
    +1010      *
    +1011      * @return
    +1012      *     possible object is
    +1013      *     {@link Model.Properties }
    +1014      *
    +1015      */
    +1016     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1017     public Model.Properties getProperties() {
    +1018         return properties;
    +1019     }
    +1020 
    +1021     /**
    +1022      * Sets the value of the properties property.
    +1023      *
    +1024      * @param value
    +1025      *     allowed object is
    +1026      *     {@link Model.Properties }
    +1027      *
    +1028      */
    +1029     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1030     public void setProperties(Model.Properties value) {
    +1031         this.properties = value;
    +1032     }
    +1033 
    +1034 
    +1035     /**
    +1036      * <p>Java class for anonymous complex type.
    +1037      *
    +1038      * <p>The following schema fragment specifies the expected content contained within this class.
    +1039      *
    +1040      * <pre>
    +1041      * &lt;complexType>
    +1042      *   &lt;complexContent>
    +1043      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1044      *       &lt;sequence>
    +1045      *         &lt;element name="contributor" type="{http://maven.apache.org/POM/4.0.0}Contributor" maxOccurs="unbounded" minOccurs="0"/>
    +1046      *       &lt;/sequence>
    +1047      *     &lt;/restriction>
    +1048      *   &lt;/complexContent>
    +1049      * &lt;/complexType>
    +1050      * </pre>
    +1051      *
    +1052      *
    +1053      */
    +1054     @XmlAccessorType(XmlAccessType.FIELD)
    +1055     @XmlType(name = "", propOrder = {
    +1056         "contributor"
    +1057     })
    +1058     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1059     public static class Contributors {
    +1060 
    +1061         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1062         protected List<Contributor> contributor;
    +1063 
    +1064         /**
    +1065          * Gets the value of the contributor property.
    +1066          *
    +1067          * <p>
    +1068          * This accessor method returns a reference to the live list,
    +1069          * not a snapshot. Therefore any modification you make to the
    +1070          * returned list will be present inside the JAXB object.
    +1071          * This is why there is not a <CODE>set</CODE> method for the contributor property.
    +1072          *
    +1073          * <p>
    +1074          * For example, to add a new item, do as follows:
    +1075          * <pre>
    +1076          *    getContributor().add(newItem);
    +1077          * </pre>
    +1078          *
    +1079          *
    +1080          * <p>
    +1081          * Objects of the following type(s) are allowed in the list
    +1082          * {@link Contributor }
    +1083          *
    +1084          *
    +1085          */
    +1086         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1087         public List<Contributor> getContributor() {
    +1088             if (contributor == null) {
    +1089                 contributor = new ArrayList<Contributor>();
    +1090             }
    +1091             return this.contributor;
    +1092         }
    +1093 
    +1094     }
    +1095 
    +1096 
    +1097     /**
    +1098      * <p>Java class for anonymous complex type.
    +1099      *
    +1100      * <p>The following schema fragment specifies the expected content contained within this class.
    +1101      *
    +1102      * <pre>
    +1103      * &lt;complexType>
    +1104      *   &lt;complexContent>
    +1105      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1106      *       &lt;sequence>
    +1107      *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +1108      *       &lt;/sequence>
    +1109      *     &lt;/restriction>
    +1110      *   &lt;/complexContent>
    +1111      * &lt;/complexType>
    +1112      * </pre>
    +1113      *
    +1114      *
    +1115      */
    +1116     @XmlAccessorType(XmlAccessType.FIELD)
    +1117     @XmlType(name = "", propOrder = {
    +1118         "dependency"
    +1119     })
    +1120     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1121     public static class Dependencies {
    +1122 
    +1123         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1124         protected List<Dependency> dependency;
    +1125 
    +1126         /**
    +1127          * Gets the value of the dependency property.
    +1128          *
    +1129          * <p>
    +1130          * This accessor method returns a reference to the live list,
    +1131          * not a snapshot. Therefore any modification you make to the
    +1132          * returned list will be present inside the JAXB object.
    +1133          * This is why there is not a <CODE>set</CODE> method for the dependency property.
    +1134          *
    +1135          * <p>
    +1136          * For example, to add a new item, do as follows:
    +1137          * <pre>
    +1138          *    getDependency().add(newItem);
    +1139          * </pre>
    +1140          *
    +1141          *
    +1142          * <p>
    +1143          * Objects of the following type(s) are allowed in the list
    +1144          * {@link Dependency }
    +1145          *
    +1146          *
    +1147          */
    +1148         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1149         public List<Dependency> getDependency() {
    +1150             if (dependency == null) {
    +1151                 dependency = new ArrayList<Dependency>();
    +1152             }
    +1153             return this.dependency;
    +1154         }
    +1155 
    +1156     }
    +1157 
    +1158 
    +1159     /**
    +1160      * <p>Java class for anonymous complex type.
    +1161      *
    +1162      * <p>The following schema fragment specifies the expected content contained within this class.
    +1163      *
    +1164      * <pre>
    +1165      * &lt;complexType>
    +1166      *   &lt;complexContent>
    +1167      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1168      *       &lt;sequence>
    +1169      *         &lt;element name="developer" type="{http://maven.apache.org/POM/4.0.0}Developer" maxOccurs="unbounded" minOccurs="0"/>
    +1170      *       &lt;/sequence>
    +1171      *     &lt;/restriction>
    +1172      *   &lt;/complexContent>
    +1173      * &lt;/complexType>
    +1174      * </pre>
    +1175      *
    +1176      *
    +1177      */
    +1178     @XmlAccessorType(XmlAccessType.FIELD)
    +1179     @XmlType(name = "", propOrder = {
    +1180         "developer"
    +1181     })
    +1182     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1183     public static class Developers {
    +1184 
    +1185         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1186         protected List<Developer> developer;
    +1187 
    +1188         /**
    +1189          * Gets the value of the developer property.
    +1190          *
    +1191          * <p>
    +1192          * This accessor method returns a reference to the live list,
    +1193          * not a snapshot. Therefore any modification you make to the
    +1194          * returned list will be present inside the JAXB object.
    +1195          * This is why there is not a <CODE>set</CODE> method for the developer property.
    +1196          *
    +1197          * <p>
    +1198          * For example, to add a new item, do as follows:
    +1199          * <pre>
    +1200          *    getDeveloper().add(newItem);
    +1201          * </pre>
    +1202          *
    +1203          *
    +1204          * <p>
    +1205          * Objects of the following type(s) are allowed in the list
    +1206          * {@link Developer }
    +1207          *
    +1208          *
    +1209          */
    +1210         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1211         public List<Developer> getDeveloper() {
    +1212             if (developer == null) {
    +1213                 developer = new ArrayList<Developer>();
    +1214             }
    +1215             return this.developer;
    +1216         }
    +1217 
    +1218     }
    +1219 
    +1220 
    +1221     /**
    +1222      * <p>Java class for anonymous complex type.
    +1223      *
    +1224      * <p>The following schema fragment specifies the expected content contained within this class.
    +1225      *
    +1226      * <pre>
    +1227      * &lt;complexType>
    +1228      *   &lt;complexContent>
    +1229      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1230      *       &lt;sequence>
    +1231      *         &lt;element name="license" type="{http://maven.apache.org/POM/4.0.0}License" maxOccurs="unbounded" minOccurs="0"/>
    +1232      *       &lt;/sequence>
    +1233      *     &lt;/restriction>
    +1234      *   &lt;/complexContent>
    +1235      * &lt;/complexType>
    +1236      * </pre>
    +1237      *
    +1238      *
    +1239      */
    +1240     @XmlAccessorType(XmlAccessType.FIELD)
    +1241     @XmlType(name = "", propOrder = {
    +1242         "license"
    +1243     })
    +1244     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1245     public static class Licenses {
    +1246 
    +1247         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1248         protected List<License> license;
    +1249 
    +1250         /**
    +1251          * Gets the value of the license property.
    +1252          *
    +1253          * <p>
    +1254          * This accessor method returns a reference to the live list,
    +1255          * not a snapshot. Therefore any modification you make to the
    +1256          * returned list will be present inside the JAXB object.
    +1257          * This is why there is not a <CODE>set</CODE> method for the license property.
    +1258          *
    +1259          * <p>
    +1260          * For example, to add a new item, do as follows:
    +1261          * <pre>
    +1262          *    getLicense().add(newItem);
    +1263          * </pre>
    +1264          *
    +1265          *
    +1266          * <p>
    +1267          * Objects of the following type(s) are allowed in the list
    +1268          * {@link License }
    +1269          *
    +1270          *
    +1271          */
    +1272         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1273         public List<License> getLicense() {
    +1274             if (license == null) {
    +1275                 license = new ArrayList<License>();
    +1276             }
    +1277             return this.license;
    +1278         }
    +1279 
    +1280     }
    +1281 
    +1282 
    +1283     /**
    +1284      * <p>Java class for anonymous complex type.
    +1285      *
    +1286      * <p>The following schema fragment specifies the expected content contained within this class.
    +1287      *
    +1288      * <pre>
    +1289      * &lt;complexType>
    +1290      *   &lt;complexContent>
    +1291      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1292      *       &lt;sequence>
    +1293      *         &lt;element name="mailingList" type="{http://maven.apache.org/POM/4.0.0}MailingList" maxOccurs="unbounded" minOccurs="0"/>
    +1294      *       &lt;/sequence>
    +1295      *     &lt;/restriction>
    +1296      *   &lt;/complexContent>
    +1297      * &lt;/complexType>
    +1298      * </pre>
    +1299      *
    +1300      *
    +1301      */
    +1302     @XmlAccessorType(XmlAccessType.FIELD)
    +1303     @XmlType(name = "", propOrder = {
    +1304         "mailingList"
    +1305     })
    +1306     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1307     public static class MailingLists {
    +1308 
    +1309         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1310         protected List<MailingList> mailingList;
    +1311 
    +1312         /**
    +1313          * Gets the value of the mailingList property.
    +1314          *
    +1315          * <p>
    +1316          * This accessor method returns a reference to the live list,
    +1317          * not a snapshot. Therefore any modification you make to the
    +1318          * returned list will be present inside the JAXB object.
    +1319          * This is why there is not a <CODE>set</CODE> method for the mailingList property.
    +1320          *
    +1321          * <p>
    +1322          * For example, to add a new item, do as follows:
    +1323          * <pre>
    +1324          *    getMailingList().add(newItem);
    +1325          * </pre>
    +1326          *
    +1327          *
    +1328          * <p>
    +1329          * Objects of the following type(s) are allowed in the list
    +1330          * {@link MailingList }
    +1331          *
    +1332          *
    +1333          */
    +1334         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1335         public List<MailingList> getMailingList() {
    +1336             if (mailingList == null) {
    +1337                 mailingList = new ArrayList<MailingList>();
    +1338             }
    +1339             return this.mailingList;
    +1340         }
    +1341 
    +1342     }
    +1343 
    +1344 
    +1345     /**
    +1346      * <p>Java class for anonymous complex type.
    +1347      *
    +1348      * <p>The following schema fragment specifies the expected content contained within this class.
    +1349      *
    +1350      * <pre>
    +1351      * &lt;complexType>
    +1352      *   &lt;complexContent>
    +1353      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1354      *       &lt;sequence>
    +1355      *         &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +1356      *       &lt;/sequence>
    +1357      *     &lt;/restriction>
    +1358      *   &lt;/complexContent>
    +1359      * &lt;/complexType>
    +1360      * </pre>
    +1361      *
    +1362      *
    +1363      */
    +1364     @XmlAccessorType(XmlAccessType.FIELD)
    +1365     @XmlType(name = "", propOrder = {
    +1366         "module"
    +1367     })
    +1368     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1369     public static class Modules {
    +1370 
    +1371         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1372         protected List<String> module;
    +1373 
    +1374         /**
    +1375          * Gets the value of the module property.
    +1376          *
    +1377          * <p>
    +1378          * This accessor method returns a reference to the live list,
    +1379          * not a snapshot. Therefore any modification you make to the
    +1380          * returned list will be present inside the JAXB object.
    +1381          * This is why there is not a <CODE>set</CODE> method for the module property.
    +1382          *
    +1383          * <p>
    +1384          * For example, to add a new item, do as follows:
    +1385          * <pre>
    +1386          *    getModule().add(newItem);
    +1387          * </pre>
    +1388          *
    +1389          *
    +1390          * <p>
    +1391          * Objects of the following type(s) are allowed in the list
    +1392          * {@link String }
    +1393          *
    +1394          *
    +1395          */
    +1396         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1397         public List<String> getModule() {
    +1398             if (module == null) {
    +1399                 module = new ArrayList<String>();
    +1400             }
    +1401             return this.module;
    +1402         }
    +1403 
    +1404     }
    +1405 
    +1406 
    +1407     /**
    +1408      * <p>Java class for anonymous complex type.
    +1409      *
    +1410      * <p>The following schema fragment specifies the expected content contained within this class.
    +1411      *
    +1412      * <pre>
    +1413      * &lt;complexType>
    +1414      *   &lt;complexContent>
    +1415      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1416      *       &lt;sequence>
    +1417      *         &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +1418      *       &lt;/sequence>
    +1419      *     &lt;/restriction>
    +1420      *   &lt;/complexContent>
    +1421      * &lt;/complexType>
    +1422      * </pre>
    +1423      *
    +1424      *
    +1425      */
    +1426     @XmlAccessorType(XmlAccessType.FIELD)
    +1427     @XmlType(name = "", propOrder = {
    +1428         "pluginRepository"
    +1429     })
    +1430     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1431     public static class PluginRepositories {
    +1432 
    +1433         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1434         protected List<Repository> pluginRepository;
    +1435 
    +1436         /**
    +1437          * Gets the value of the pluginRepository property.
    +1438          *
    +1439          * <p>
    +1440          * This accessor method returns a reference to the live list,
    +1441          * not a snapshot. Therefore any modification you make to the
    +1442          * returned list will be present inside the JAXB object.
    +1443          * This is why there is not a <CODE>set</CODE> method for the pluginRepository property.
    +1444          *
    +1445          * <p>
    +1446          * For example, to add a new item, do as follows:
    +1447          * <pre>
    +1448          *    getPluginRepository().add(newItem);
    +1449          * </pre>
    +1450          *
    +1451          *
    +1452          * <p>
    +1453          * Objects of the following type(s) are allowed in the list
    +1454          * {@link Repository }
    +1455          *
    +1456          *
    +1457          */
    +1458         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1459         public List<Repository> getPluginRepository() {
    +1460             if (pluginRepository == null) {
    +1461                 pluginRepository = new ArrayList<Repository>();
    +1462             }
    +1463             return this.pluginRepository;
    +1464         }
    +1465 
    +1466     }
    +1467 
    +1468 
    +1469     /**
    +1470      * <p>Java class for anonymous complex type.
    +1471      *
    +1472      * <p>The following schema fragment specifies the expected content contained within this class.
    +1473      *
    +1474      * <pre>
    +1475      * &lt;complexType>
    +1476      *   &lt;complexContent>
    +1477      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1478      *       &lt;sequence>
    +1479      *         &lt;element name="profile" type="{http://maven.apache.org/POM/4.0.0}Profile" maxOccurs="unbounded" minOccurs="0"/>
    +1480      *       &lt;/sequence>
    +1481      *     &lt;/restriction>
    +1482      *   &lt;/complexContent>
    +1483      * &lt;/complexType>
    +1484      * </pre>
    +1485      *
    +1486      *
    +1487      */
    +1488     @XmlAccessorType(XmlAccessType.FIELD)
    +1489     @XmlType(name = "", propOrder = {
    +1490         "profile"
    +1491     })
    +1492     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1493     public static class Profiles {
    +1494 
    +1495         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1496         protected List<Profile> profile;
    +1497 
    +1498         /**
    +1499          * Gets the value of the profile property.
    +1500          *
    +1501          * <p>
    +1502          * This accessor method returns a reference to the live list,
    +1503          * not a snapshot. Therefore any modification you make to the
    +1504          * returned list will be present inside the JAXB object.
    +1505          * This is why there is not a <CODE>set</CODE> method for the profile property.
    +1506          *
    +1507          * <p>
    +1508          * For example, to add a new item, do as follows:
    +1509          * <pre>
    +1510          *    getProfile().add(newItem);
    +1511          * </pre>
    +1512          *
    +1513          *
    +1514          * <p>
    +1515          * Objects of the following type(s) are allowed in the list
    +1516          * {@link Profile }
    +1517          *
    +1518          *
    +1519          */
    +1520         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1521         public List<Profile> getProfile() {
    +1522             if (profile == null) {
    +1523                 profile = new ArrayList<Profile>();
    +1524             }
    +1525             return this.profile;
    +1526         }
    +1527 
    +1528     }
    +1529 
    +1530 
    +1531     /**
    +1532      * <p>Java class for anonymous complex type.
    +1533      *
    +1534      * <p>The following schema fragment specifies the expected content contained within this class.
    +1535      *
    +1536      * <pre>
    +1537      * &lt;complexType>
    +1538      *   &lt;complexContent>
    +1539      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1540      *       &lt;sequence>
    +1541      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +1542      *       &lt;/sequence>
    +1543      *     &lt;/restriction>
    +1544      *   &lt;/complexContent>
    +1545      * &lt;/complexType>
    +1546      * </pre>
    +1547      *
    +1548      *
    +1549      */
    +1550     @XmlAccessorType(XmlAccessType.FIELD)
    +1551     @XmlType(name = "", propOrder = {
    +1552         "any"
    +1553     })
    +1554     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1555     public static class Properties {
    +1556 
    +1557         @XmlAnyElement
    +1558         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1559         protected List<Element> any;
    +1560 
    +1561         /**
    +1562          * Gets the value of the any property.
    +1563          *
    +1564          * <p>
    +1565          * This accessor method returns a reference to the live list,
    +1566          * not a snapshot. Therefore any modification you make to the
    +1567          * returned list will be present inside the JAXB object.
    +1568          * This is why there is not a <CODE>set</CODE> method for the any property.
    +1569          *
    +1570          * <p>
    +1571          * For example, to add a new item, do as follows:
    +1572          * <pre>
    +1573          *    getAny().add(newItem);
    +1574          * </pre>
    +1575          *
    +1576          *
    +1577          * <p>
    +1578          * Objects of the following type(s) are allowed in the list
    +1579          * {@link Element }
    +1580          *
    +1581          *
    +1582          */
    +1583         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1584         public List<Element> getAny() {
    +1585             if (any == null) {
    +1586                 any = new ArrayList<Element>();
    +1587             }
    +1588             return this.any;
    +1589         }
    +1590 
    +1591     }
    +1592 
    +1593 
    +1594     /**
    +1595      * <p>Java class for anonymous complex type.
    +1596      *
    +1597      * <p>The following schema fragment specifies the expected content contained within this class.
    +1598      *
    +1599      * <pre>
    +1600      * &lt;complexType>
    +1601      *   &lt;complexContent>
    +1602      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1603      *       &lt;sequence>
    +1604      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +1605      *       &lt;/sequence>
    +1606      *     &lt;/restriction>
    +1607      *   &lt;/complexContent>
    +1608      * &lt;/complexType>
    +1609      * </pre>
    +1610      *
    +1611      *
    +1612      */
    +1613     @XmlAccessorType(XmlAccessType.FIELD)
    +1614     @XmlType(name = "", propOrder = {
    +1615         "any"
    +1616     })
    +1617     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1618     public static class Reports {
    +1619 
    +1620         @XmlAnyElement
    +1621         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1622         protected List<Element> any;
    +1623 
    +1624         /**
    +1625          * Gets the value of the any property.
    +1626          *
    +1627          * <p>
    +1628          * This accessor method returns a reference to the live list,
    +1629          * not a snapshot. Therefore any modification you make to the
    +1630          * returned list will be present inside the JAXB object.
    +1631          * This is why there is not a <CODE>set</CODE> method for the any property.
    +1632          *
    +1633          * <p>
    +1634          * For example, to add a new item, do as follows:
    +1635          * <pre>
    +1636          *    getAny().add(newItem);
    +1637          * </pre>
    +1638          *
    +1639          *
    +1640          * <p>
    +1641          * Objects of the following type(s) are allowed in the list
    +1642          * {@link Element }
    +1643          *
    +1644          *
    +1645          */
    +1646         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1647         public List<Element> getAny() {
    +1648             if (any == null) {
    +1649                 any = new ArrayList<Element>();
    +1650             }
    +1651             return this.any;
    +1652         }
    +1653 
    +1654     }
    +1655 
    +1656 
    +1657     /**
    +1658      * <p>Java class for anonymous complex type.
    +1659      *
    +1660      * <p>The following schema fragment specifies the expected content contained within this class.
    +1661      *
    +1662      * <pre>
    +1663      * &lt;complexType>
    +1664      *   &lt;complexContent>
    +1665      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +1666      *       &lt;sequence>
    +1667      *         &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +1668      *       &lt;/sequence>
    +1669      *     &lt;/restriction>
    +1670      *   &lt;/complexContent>
    +1671      * &lt;/complexType>
    +1672      * </pre>
    +1673      *
    +1674      *
    +1675      */
    +1676     @XmlAccessorType(XmlAccessType.FIELD)
    +1677     @XmlType(name = "", propOrder = {
    +1678         "repository"
    +1679     })
    +1680     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1681     public static class Repositories {
    +1682 
    +1683         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1684         protected List<Repository> repository;
    +1685 
    +1686         /**
    +1687          * Gets the value of the repository property.
    +1688          *
    +1689          * <p>
    +1690          * This accessor method returns a reference to the live list,
    +1691          * not a snapshot. Therefore any modification you make to the
    +1692          * returned list will be present inside the JAXB object.
    +1693          * This is why there is not a <CODE>set</CODE> method for the repository property.
    +1694          *
    +1695          * <p>
    +1696          * For example, to add a new item, do as follows:
    +1697          * <pre>
    +1698          *    getRepository().add(newItem);
    +1699          * </pre>
    +1700          *
    +1701          *
    +1702          * <p>
    +1703          * Objects of the following type(s) are allowed in the list
    +1704          * {@link Repository }
    +1705          *
    +1706          *
    +1707          */
    +1708         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +1709         public List<Repository> getRepository() {
    +1710             if (repository == null) {
    +1711                 repository = new ArrayList<Repository>();
    +1712             }
    +1713             return this.repository;
    +1714         }
    +1715 
    +1716     }
    +1717 
    +1718 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html new file mode 100644 index 000000000..c58f63cfa --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html @@ -0,0 +1,347 @@ + + + + +Notifier xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlElement;
    +18  import javax.xml.bind.annotation.XmlType;
    +19  import org.w3c.dom.Element;
    +20  
    +21  
    +22  /**
    +23   *
    +24   *         Configures one method for notifying users/developers when a build breaks.
    +25   *
    +26   *
    +27   * <p>Java class for Notifier complex type.
    +28   *
    +29   * <p>The following schema fragment specifies the expected content contained within this class.
    +30   *
    +31   * <pre>
    +32   * &lt;complexType name="Notifier">
    +33   *   &lt;complexContent>
    +34   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +35   *       &lt;all>
    +36   *         &lt;element name="type" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="sendOnError" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +38   *         &lt;element name="sendOnFailure" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +39   *         &lt;element name="sendOnSuccess" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +40   *         &lt;element name="sendOnWarning" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +41   *         &lt;element name="address" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +42   *         &lt;element name="configuration" minOccurs="0">
    +43   *           &lt;complexType>
    +44   *             &lt;complexContent>
    +45   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +46   *                 &lt;sequence>
    +47   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +48   *                 &lt;/sequence>
    +49   *               &lt;/restriction>
    +50   *             &lt;/complexContent>
    +51   *           &lt;/complexType>
    +52   *         &lt;/element>
    +53   *       &lt;/all>
    +54   *     &lt;/restriction>
    +55   *   &lt;/complexContent>
    +56   * &lt;/complexType>
    +57   * </pre>
    +58   *
    +59   *
    +60   */
    +61  @XmlAccessorType(XmlAccessType.FIELD)
    +62  @XmlType(name = "Notifier", propOrder = {
    +63  
    +64  })
    +65  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +66  public class Notifier {
    +67  
    +68      @XmlElement(defaultValue = "mail")
    +69      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +70      protected String type;
    +71      @XmlElement(defaultValue = "true")
    +72      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +73      protected Boolean sendOnError;
    +74      @XmlElement(defaultValue = "true")
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      protected Boolean sendOnFailure;
    +77      @XmlElement(defaultValue = "true")
    +78      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +79      protected Boolean sendOnSuccess;
    +80      @XmlElement(defaultValue = "true")
    +81      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +82      protected Boolean sendOnWarning;
    +83      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +84      protected String address;
    +85      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +86      protected Notifier.Configuration configuration;
    +87  
    +88      /**
    +89       * Gets the value of the type property.
    +90       *
    +91       * @return
    +92       *     possible object is
    +93       *     {@link String }
    +94       *
    +95       */
    +96      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +97      public String getType() {
    +98          return type;
    +99      }
    +100 
    +101     /**
    +102      * Sets the value of the type property.
    +103      *
    +104      * @param value
    +105      *     allowed object is
    +106      *     {@link String }
    +107      *
    +108      */
    +109     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +110     public void setType(String value) {
    +111         this.type = value;
    +112     }
    +113 
    +114     /**
    +115      * Gets the value of the sendOnError property.
    +116      *
    +117      * @return
    +118      *     possible object is
    +119      *     {@link Boolean }
    +120      *
    +121      */
    +122     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +123     public Boolean isSendOnError() {
    +124         return sendOnError;
    +125     }
    +126 
    +127     /**
    +128      * Sets the value of the sendOnError property.
    +129      *
    +130      * @param value
    +131      *     allowed object is
    +132      *     {@link Boolean }
    +133      *
    +134      */
    +135     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +136     public void setSendOnError(Boolean value) {
    +137         this.sendOnError = value;
    +138     }
    +139 
    +140     /**
    +141      * Gets the value of the sendOnFailure property.
    +142      *
    +143      * @return
    +144      *     possible object is
    +145      *     {@link Boolean }
    +146      *
    +147      */
    +148     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +149     public Boolean isSendOnFailure() {
    +150         return sendOnFailure;
    +151     }
    +152 
    +153     /**
    +154      * Sets the value of the sendOnFailure property.
    +155      *
    +156      * @param value
    +157      *     allowed object is
    +158      *     {@link Boolean }
    +159      *
    +160      */
    +161     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +162     public void setSendOnFailure(Boolean value) {
    +163         this.sendOnFailure = value;
    +164     }
    +165 
    +166     /**
    +167      * Gets the value of the sendOnSuccess property.
    +168      *
    +169      * @return
    +170      *     possible object is
    +171      *     {@link Boolean }
    +172      *
    +173      */
    +174     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +175     public Boolean isSendOnSuccess() {
    +176         return sendOnSuccess;
    +177     }
    +178 
    +179     /**
    +180      * Sets the value of the sendOnSuccess property.
    +181      *
    +182      * @param value
    +183      *     allowed object is
    +184      *     {@link Boolean }
    +185      *
    +186      */
    +187     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +188     public void setSendOnSuccess(Boolean value) {
    +189         this.sendOnSuccess = value;
    +190     }
    +191 
    +192     /**
    +193      * Gets the value of the sendOnWarning property.
    +194      *
    +195      * @return
    +196      *     possible object is
    +197      *     {@link Boolean }
    +198      *
    +199      */
    +200     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +201     public Boolean isSendOnWarning() {
    +202         return sendOnWarning;
    +203     }
    +204 
    +205     /**
    +206      * Sets the value of the sendOnWarning property.
    +207      *
    +208      * @param value
    +209      *     allowed object is
    +210      *     {@link Boolean }
    +211      *
    +212      */
    +213     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +214     public void setSendOnWarning(Boolean value) {
    +215         this.sendOnWarning = value;
    +216     }
    +217 
    +218     /**
    +219      * Gets the value of the address property.
    +220      *
    +221      * @return
    +222      *     possible object is
    +223      *     {@link String }
    +224      *
    +225      */
    +226     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +227     public String getAddress() {
    +228         return address;
    +229     }
    +230 
    +231     /**
    +232      * Sets the value of the address property.
    +233      *
    +234      * @param value
    +235      *     allowed object is
    +236      *     {@link String }
    +237      *
    +238      */
    +239     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +240     public void setAddress(String value) {
    +241         this.address = value;
    +242     }
    +243 
    +244     /**
    +245      * Gets the value of the configuration property.
    +246      *
    +247      * @return
    +248      *     possible object is
    +249      *     {@link Notifier.Configuration }
    +250      *
    +251      */
    +252     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +253     public Notifier.Configuration getConfiguration() {
    +254         return configuration;
    +255     }
    +256 
    +257     /**
    +258      * Sets the value of the configuration property.
    +259      *
    +260      * @param value
    +261      *     allowed object is
    +262      *     {@link Notifier.Configuration }
    +263      *
    +264      */
    +265     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +266     public void setConfiguration(Notifier.Configuration value) {
    +267         this.configuration = value;
    +268     }
    +269 
    +270 
    +271     /**
    +272      * <p>Java class for anonymous complex type.
    +273      *
    +274      * <p>The following schema fragment specifies the expected content contained within this class.
    +275      *
    +276      * <pre>
    +277      * &lt;complexType>
    +278      *   &lt;complexContent>
    +279      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +280      *       &lt;sequence>
    +281      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +282      *       &lt;/sequence>
    +283      *     &lt;/restriction>
    +284      *   &lt;/complexContent>
    +285      * &lt;/complexType>
    +286      * </pre>
    +287      *
    +288      *
    +289      */
    +290     @XmlAccessorType(XmlAccessType.FIELD)
    +291     @XmlType(name = "", propOrder = {
    +292         "any"
    +293     })
    +294     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +295     public static class Configuration {
    +296 
    +297         @XmlAnyElement
    +298         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +299         protected List<Element> any;
    +300 
    +301         /**
    +302          * Gets the value of the any property.
    +303          *
    +304          * <p>
    +305          * This accessor method returns a reference to the live list,
    +306          * not a snapshot. Therefore any modification you make to the
    +307          * returned list will be present inside the JAXB object.
    +308          * This is why there is not a <CODE>set</CODE> method for the any property.
    +309          *
    +310          * <p>
    +311          * For example, to add a new item, do as follows:
    +312          * <pre>
    +313          *    getAny().add(newItem);
    +314          * </pre>
    +315          *
    +316          *
    +317          * <p>
    +318          * Objects of the following type(s) are allowed in the list
    +319          * {@link Element }
    +320          *
    +321          *
    +322          */
    +323         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +324         public List<Element> getAny() {
    +325             if (any == null) {
    +326                 any = new ArrayList<Element>();
    +327             }
    +328             return this.any;
    +329         }
    +330 
    +331     }
    +332 
    +333 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html new file mode 100644 index 000000000..2f06ef27e --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html @@ -0,0 +1,746 @@ + + + + +ObjectFactory xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.xml.bind.JAXBElement;
    +12  import javax.xml.bind.annotation.XmlElementDecl;
    +13  import javax.xml.bind.annotation.XmlRegistry;
    +14  import javax.xml.namespace.QName;
    +15  
    +16  
    +17  /**
    +18   * This object contains factory methods for each
    +19   * Java content interface and Java element interface
    +20   * generated in the org.owasp.dependencycheck.analyzer.pom.generated package.
    +21   * <p>An ObjectFactory allows you to programmatically
    +22   * construct new instances of the Java representation
    +23   * for XML content. The Java representation of XML
    +24   * content can consist of schema derived interfaces
    +25   * and classes representing the binding of schema
    +26   * type definitions, element declarations and model
    +27   * groups.  Factory methods for each of these are
    +28   * provided in this class.
    +29   *
    +30   */
    +31  @XmlRegistry
    +32  public class ObjectFactory {
    +33  
    +34      private final static QName _Project_QNAME = new QName("http://maven.apache.org/POM/4.0.0", "project");
    +35  
    +36      /**
    +37       * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.owasp.dependencycheck.analyzer.pom.generated
    +38       *
    +39       */
    +40      public ObjectFactory() {
    +41      }
    +42  
    +43      /**
    +44       * Create an instance of {@link Model }
    +45       *
    +46       */
    +47      public Model createModel() {
    +48          return new Model();
    +49      }
    +50  
    +51      /**
    +52       * Create an instance of {@link Reporting }
    +53       *
    +54       */
    +55      public Reporting createReporting() {
    +56          return new Reporting();
    +57      }
    +58  
    +59      /**
    +60       * Create an instance of {@link Exclusion }
    +61       *
    +62       */
    +63      public Exclusion createExclusion() {
    +64          return new Exclusion();
    +65      }
    +66  
    +67      /**
    +68       * Create an instance of {@link Build.Filters }
    +69       *
    +70       */
    +71      public Build.Filters createBuildFilters() {
    +72          return new Build.Filters();
    +73      }
    +74  
    +75      /**
    +76       * Create an instance of {@link ReportPlugin.Configuration }
    +77       *
    +78       */
    +79      public ReportPlugin.Configuration createReportPluginConfiguration() {
    +80          return new ReportPlugin.Configuration();
    +81      }
    +82  
    +83      /**
    +84       * Create an instance of {@link IssueManagement }
    +85       *
    +86       */
    +87      public IssueManagement createIssueManagement() {
    +88          return new IssueManagement();
    +89      }
    +90  
    +91      /**
    +92       * Create an instance of {@link PluginExecution.Goals }
    +93       *
    +94       */
    +95      public PluginExecution.Goals createPluginExecutionGoals() {
    +96          return new PluginExecution.Goals();
    +97      }
    +98  
    +99      /**
    +100      * Create an instance of {@link ReportPlugin }
    +101      *
    +102      */
    +103     public ReportPlugin createReportPlugin() {
    +104         return new ReportPlugin();
    +105     }
    +106 
    +107     /**
    +108      * Create an instance of {@link Profile.Properties }
    +109      *
    +110      */
    +111     public Profile.Properties createProfileProperties() {
    +112         return new Profile.Properties();
    +113     }
    +114 
    +115     /**
    +116      * Create an instance of {@link ActivationProperty }
    +117      *
    +118      */
    +119     public ActivationProperty createActivationProperty() {
    +120         return new ActivationProperty();
    +121     }
    +122 
    +123     /**
    +124      * Create an instance of {@link Build.Extensions }
    +125      *
    +126      */
    +127     public Build.Extensions createBuildExtensions() {
    +128         return new Build.Extensions();
    +129     }
    +130 
    +131     /**
    +132      * Create an instance of {@link Plugin }
    +133      *
    +134      */
    +135     public Plugin createPlugin() {
    +136         return new Plugin();
    +137     }
    +138 
    +139     /**
    +140      * Create an instance of {@link Profile.Dependencies }
    +141      *
    +142      */
    +143     public Profile.Dependencies createProfileDependencies() {
    +144         return new Profile.Dependencies();
    +145     }
    +146 
    +147     /**
    +148      * Create an instance of {@link Resource.Excludes }
    +149      *
    +150      */
    +151     public Resource.Excludes createResourceExcludes() {
    +152         return new Resource.Excludes();
    +153     }
    +154 
    +155     /**
    +156      * Create an instance of {@link Scm }
    +157      *
    +158      */
    +159     public Scm createScm() {
    +160         return new Scm();
    +161     }
    +162 
    +163     /**
    +164      * Create an instance of {@link ReportSet.Reports }
    +165      *
    +166      */
    +167     public ReportSet.Reports createReportSetReports() {
    +168         return new ReportSet.Reports();
    +169     }
    +170 
    +171     /**
    +172      * Create an instance of {@link PluginManagement }
    +173      *
    +174      */
    +175     public PluginManagement createPluginManagement() {
    +176         return new PluginManagement();
    +177     }
    +178 
    +179     /**
    +180      * Create an instance of {@link CiManagement.Notifiers }
    +181      *
    +182      */
    +183     public CiManagement.Notifiers createCiManagementNotifiers() {
    +184         return new CiManagement.Notifiers();
    +185     }
    +186 
    +187     /**
    +188      * Create an instance of {@link Model.PluginRepositories }
    +189      *
    +190      */
    +191     public Model.PluginRepositories createModelPluginRepositories() {
    +192         return new Model.PluginRepositories();
    +193     }
    +194 
    +195     /**
    +196      * Create an instance of {@link ActivationFile }
    +197      *
    +198      */
    +199     public ActivationFile createActivationFile() {
    +200         return new ActivationFile();
    +201     }
    +202 
    +203     /**
    +204      * Create an instance of {@link Developer.Roles }
    +205      *
    +206      */
    +207     public Developer.Roles createDeveloperRoles() {
    +208         return new Developer.Roles();
    +209     }
    +210 
    +211     /**
    +212      * Create an instance of {@link DeploymentRepository }
    +213      *
    +214      */
    +215     public DeploymentRepository createDeploymentRepository() {
    +216         return new DeploymentRepository();
    +217     }
    +218 
    +219     /**
    +220      * Create an instance of {@link Contributor.Properties }
    +221      *
    +222      */
    +223     public Contributor.Properties createContributorProperties() {
    +224         return new Contributor.Properties();
    +225     }
    +226 
    +227     /**
    +228      * Create an instance of {@link DistributionManagement }
    +229      *
    +230      */
    +231     public DistributionManagement createDistributionManagement() {
    +232         return new DistributionManagement();
    +233     }
    +234 
    +235     /**
    +236      * Create an instance of {@link RepositoryPolicy }
    +237      *
    +238      */
    +239     public RepositoryPolicy createRepositoryPolicy() {
    +240         return new RepositoryPolicy();
    +241     }
    +242 
    +243     /**
    +244      * Create an instance of {@link Model.Licenses }
    +245      *
    +246      */
    +247     public Model.Licenses createModelLicenses() {
    +248         return new Model.Licenses();
    +249     }
    +250 
    +251     /**
    +252      * Create an instance of {@link Build.TestResources }
    +253      *
    +254      */
    +255     public Build.TestResources createBuildTestResources() {
    +256         return new Build.TestResources();
    +257     }
    +258 
    +259     /**
    +260      * Create an instance of {@link Plugin.Goals }
    +261      *
    +262      */
    +263     public Plugin.Goals createPluginGoals() {
    +264         return new Plugin.Goals();
    +265     }
    +266 
    +267     /**
    +268      * Create an instance of {@link Plugin.Executions }
    +269      *
    +270      */
    +271     public Plugin.Executions createPluginExecutions() {
    +272         return new Plugin.Executions();
    +273     }
    +274 
    +275     /**
    +276      * Create an instance of {@link DependencyManagement }
    +277      *
    +278      */
    +279     public DependencyManagement createDependencyManagement() {
    +280         return new DependencyManagement();
    +281     }
    +282 
    +283     /**
    +284      * Create an instance of {@link Model.Reports }
    +285      *
    +286      */
    +287     public Model.Reports createModelReports() {
    +288         return new Model.Reports();
    +289     }
    +290 
    +291     /**
    +292      * Create an instance of {@link Build }
    +293      *
    +294      */
    +295     public Build createBuild() {
    +296         return new Build();
    +297     }
    +298 
    +299     /**
    +300      * Create an instance of {@link Build.Resources }
    +301      *
    +302      */
    +303     public Build.Resources createBuildResources() {
    +304         return new Build.Resources();
    +305     }
    +306 
    +307     /**
    +308      * Create an instance of {@link DependencyManagement.Dependencies }
    +309      *
    +310      */
    +311     public DependencyManagement.Dependencies createDependencyManagementDependencies() {
    +312         return new DependencyManagement.Dependencies();
    +313     }
    +314 
    +315     /**
    +316      * Create an instance of {@link Model.Contributors }
    +317      *
    +318      */
    +319     public Model.Contributors createModelContributors() {
    +320         return new Model.Contributors();
    +321     }
    +322 
    +323     /**
    +324      * Create an instance of {@link Build.Plugins }
    +325      *
    +326      */
    +327     public Build.Plugins createBuildPlugins() {
    +328         return new Build.Plugins();
    +329     }
    +330 
    +331     /**
    +332      * Create an instance of {@link Extension }
    +333      *
    +334      */
    +335     public Extension createExtension() {
    +336         return new Extension();
    +337     }
    +338 
    +339     /**
    +340      * Create an instance of {@link Organization }
    +341      *
    +342      */
    +343     public Organization createOrganization() {
    +344         return new Organization();
    +345     }
    +346 
    +347     /**
    +348      * Create an instance of {@link License }
    +349      *
    +350      */
    +351     public License createLicense() {
    +352         return new License();
    +353     }
    +354 
    +355     /**
    +356      * Create an instance of {@link Activation }
    +357      *
    +358      */
    +359     public Activation createActivation() {
    +360         return new Activation();
    +361     }
    +362 
    +363     /**
    +364      * Create an instance of {@link ActivationOS }
    +365      *
    +366      */
    +367     public ActivationOS createActivationOS() {
    +368         return new ActivationOS();
    +369     }
    +370 
    +371     /**
    +372      * Create an instance of {@link Model.Modules }
    +373      *
    +374      */
    +375     public Model.Modules createModelModules() {
    +376         return new Model.Modules();
    +377     }
    +378 
    +379     /**
    +380      * Create an instance of {@link Profile.Repositories }
    +381      *
    +382      */
    +383     public Profile.Repositories createProfileRepositories() {
    +384         return new Profile.Repositories();
    +385     }
    +386 
    +387     /**
    +388      * Create an instance of {@link Model.Dependencies }
    +389      *
    +390      */
    +391     public Model.Dependencies createModelDependencies() {
    +392         return new Model.Dependencies();
    +393     }
    +394 
    +395     /**
    +396      * Create an instance of {@link BuildBase.Resources }
    +397      *
    +398      */
    +399     public BuildBase.Resources createBuildBaseResources() {
    +400         return new BuildBase.Resources();
    +401     }
    +402 
    +403     /**
    +404      * Create an instance of {@link Site }
    +405      *
    +406      */
    +407     public Site createSite() {
    +408         return new Site();
    +409     }
    +410 
    +411     /**
    +412      * Create an instance of {@link ReportPlugin.ReportSets }
    +413      *
    +414      */
    +415     public ReportPlugin.ReportSets createReportPluginReportSets() {
    +416         return new ReportPlugin.ReportSets();
    +417     }
    +418 
    +419     /**
    +420      * Create an instance of {@link Plugin.Configuration }
    +421      *
    +422      */
    +423     public Plugin.Configuration createPluginConfiguration() {
    +424         return new Plugin.Configuration();
    +425     }
    +426 
    +427     /**
    +428      * Create an instance of {@link Profile.PluginRepositories }
    +429      *
    +430      */
    +431     public Profile.PluginRepositories createProfilePluginRepositories() {
    +432         return new Profile.PluginRepositories();
    +433     }
    +434 
    +435     /**
    +436      * Create an instance of {@link Dependency.Exclusions }
    +437      *
    +438      */
    +439     public Dependency.Exclusions createDependencyExclusions() {
    +440         return new Dependency.Exclusions();
    +441     }
    +442 
    +443     /**
    +444      * Create an instance of {@link Prerequisites }
    +445      *
    +446      */
    +447     public Prerequisites createPrerequisites() {
    +448         return new Prerequisites();
    +449     }
    +450 
    +451     /**
    +452      * Create an instance of {@link Model.Profiles }
    +453      *
    +454      */
    +455     public Model.Profiles createModelProfiles() {
    +456         return new Model.Profiles();
    +457     }
    +458 
    +459     /**
    +460      * Create an instance of {@link Model.Properties }
    +461      *
    +462      */
    +463     public Model.Properties createModelProperties() {
    +464         return new Model.Properties();
    +465     }
    +466 
    +467     /**
    +468      * Create an instance of {@link BuildBase.Plugins }
    +469      *
    +470      */
    +471     public BuildBase.Plugins createBuildBasePlugins() {
    +472         return new BuildBase.Plugins();
    +473     }
    +474 
    +475     /**
    +476      * Create an instance of {@link BuildBase }
    +477      *
    +478      */
    +479     public BuildBase createBuildBase() {
    +480         return new BuildBase();
    +481     }
    +482 
    +483     /**
    +484      * Create an instance of {@link PluginManagement.Plugins }
    +485      *
    +486      */
    +487     public PluginManagement.Plugins createPluginManagementPlugins() {
    +488         return new PluginManagement.Plugins();
    +489     }
    +490 
    +491     /**
    +492      * Create an instance of {@link Contributor.Roles }
    +493      *
    +494      */
    +495     public Contributor.Roles createContributorRoles() {
    +496         return new Contributor.Roles();
    +497     }
    +498 
    +499     /**
    +500      * Create an instance of {@link MailingList }
    +501      *
    +502      */
    +503     public MailingList createMailingList() {
    +504         return new MailingList();
    +505     }
    +506 
    +507     /**
    +508      * Create an instance of {@link CiManagement }
    +509      *
    +510      */
    +511     public CiManagement createCiManagement() {
    +512         return new CiManagement();
    +513     }
    +514 
    +515     /**
    +516      * Create an instance of {@link Model.MailingLists }
    +517      *
    +518      */
    +519     public Model.MailingLists createModelMailingLists() {
    +520         return new Model.MailingLists();
    +521     }
    +522 
    +523     /**
    +524      * Create an instance of {@link Model.Developers }
    +525      *
    +526      */
    +527     public Model.Developers createModelDevelopers() {
    +528         return new Model.Developers();
    +529     }
    +530 
    +531     /**
    +532      * Create an instance of {@link Reporting.Plugins }
    +533      *
    +534      */
    +535     public Reporting.Plugins createReportingPlugins() {
    +536         return new Reporting.Plugins();
    +537     }
    +538 
    +539     /**
    +540      * Create an instance of {@link Contributor }
    +541      *
    +542      */
    +543     public Contributor createContributor() {
    +544         return new Contributor();
    +545     }
    +546 
    +547     /**
    +548      * Create an instance of {@link Profile.Reports }
    +549      *
    +550      */
    +551     public Profile.Reports createProfileReports() {
    +552         return new Profile.Reports();
    +553     }
    +554 
    +555     /**
    +556      * Create an instance of {@link BuildBase.TestResources }
    +557      *
    +558      */
    +559     public BuildBase.TestResources createBuildBaseTestResources() {
    +560         return new BuildBase.TestResources();
    +561     }
    +562 
    +563     /**
    +564      * Create an instance of {@link Developer.Properties }
    +565      *
    +566      */
    +567     public Developer.Properties createDeveloperProperties() {
    +568         return new Developer.Properties();
    +569     }
    +570 
    +571     /**
    +572      * Create an instance of {@link Plugin.Dependencies }
    +573      *
    +574      */
    +575     public Plugin.Dependencies createPluginDependencies() {
    +576         return new Plugin.Dependencies();
    +577     }
    +578 
    +579     /**
    +580      * Create an instance of {@link Resource.Includes }
    +581      *
    +582      */
    +583     public Resource.Includes createResourceIncludes() {
    +584         return new Resource.Includes();
    +585     }
    +586 
    +587     /**
    +588      * Create an instance of {@link Resource }
    +589      *
    +590      */
    +591     public Resource createResource() {
    +592         return new Resource();
    +593     }
    +594 
    +595     /**
    +596      * Create an instance of {@link Repository }
    +597      *
    +598      */
    +599     public Repository createRepository() {
    +600         return new Repository();
    +601     }
    +602 
    +603     /**
    +604      * Create an instance of {@link BuildBase.Filters }
    +605      *
    +606      */
    +607     public BuildBase.Filters createBuildBaseFilters() {
    +608         return new BuildBase.Filters();
    +609     }
    +610 
    +611     /**
    +612      * Create an instance of {@link ReportSet }
    +613      *
    +614      */
    +615     public ReportSet createReportSet() {
    +616         return new ReportSet();
    +617     }
    +618 
    +619     /**
    +620      * Create an instance of {@link Notifier.Configuration }
    +621      *
    +622      */
    +623     public Notifier.Configuration createNotifierConfiguration() {
    +624         return new Notifier.Configuration();
    +625     }
    +626 
    +627     /**
    +628      * Create an instance of {@link Model.Repositories }
    +629      *
    +630      */
    +631     public Model.Repositories createModelRepositories() {
    +632         return new Model.Repositories();
    +633     }
    +634 
    +635     /**
    +636      * Create an instance of {@link Dependency }
    +637      *
    +638      */
    +639     public Dependency createDependency() {
    +640         return new Dependency();
    +641     }
    +642 
    +643     /**
    +644      * Create an instance of {@link Relocation }
    +645      *
    +646      */
    +647     public Relocation createRelocation() {
    +648         return new Relocation();
    +649     }
    +650 
    +651     /**
    +652      * Create an instance of {@link MailingList.OtherArchives }
    +653      *
    +654      */
    +655     public MailingList.OtherArchives createMailingListOtherArchives() {
    +656         return new MailingList.OtherArchives();
    +657     }
    +658 
    +659     /**
    +660      * Create an instance of {@link ReportSet.Configuration }
    +661      *
    +662      */
    +663     public ReportSet.Configuration createReportSetConfiguration() {
    +664         return new ReportSet.Configuration();
    +665     }
    +666 
    +667     /**
    +668      * Create an instance of {@link Profile }
    +669      *
    +670      */
    +671     public Profile createProfile() {
    +672         return new Profile();
    +673     }
    +674 
    +675     /**
    +676      * Create an instance of {@link PluginExecution.Configuration }
    +677      *
    +678      */
    +679     public PluginExecution.Configuration createPluginExecutionConfiguration() {
    +680         return new PluginExecution.Configuration();
    +681     }
    +682 
    +683     /**
    +684      * Create an instance of {@link Notifier }
    +685      *
    +686      */
    +687     public Notifier createNotifier() {
    +688         return new Notifier();
    +689     }
    +690 
    +691     /**
    +692      * Create an instance of {@link Parent }
    +693      *
    +694      */
    +695     public Parent createParent() {
    +696         return new Parent();
    +697     }
    +698 
    +699     /**
    +700      * Create an instance of {@link PluginExecution }
    +701      *
    +702      */
    +703     public PluginExecution createPluginExecution() {
    +704         return new PluginExecution();
    +705     }
    +706 
    +707     /**
    +708      * Create an instance of {@link Developer }
    +709      *
    +710      */
    +711     public Developer createDeveloper() {
    +712         return new Developer();
    +713     }
    +714 
    +715     /**
    +716      * Create an instance of {@link Profile.Modules }
    +717      *
    +718      */
    +719     public Profile.Modules createProfileModules() {
    +720         return new Profile.Modules();
    +721     }
    +722 
    +723     /**
    +724      * Create an instance of {@link JAXBElement }{@code <}{@link Model }{@code >}}
    +725      *
    +726      */
    +727     @XmlElementDecl(namespace = "http://maven.apache.org/POM/4.0.0", name = "project")
    +728     public JAXBElement<Model> createProject(Model value) {
    +729         return new JAXBElement<Model>(_Project_QNAME, Model.class, null, value);
    +730     }
    +731 
    +732 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html new file mode 100644 index 000000000..b449f9b38 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html @@ -0,0 +1,117 @@ + + + + +Organization xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   * Specifies the organization that produces this project.
    +19   *
    +20   * <p>Java class for Organization complex type.
    +21   *
    +22   * <p>The following schema fragment specifies the expected content contained within this class.
    +23   *
    +24   * <pre>
    +25   * &lt;complexType name="Organization">
    +26   *   &lt;complexContent>
    +27   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +28   *       &lt;all>
    +29   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +30   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *       &lt;/all>
    +32   *     &lt;/restriction>
    +33   *   &lt;/complexContent>
    +34   * &lt;/complexType>
    +35   * </pre>
    +36   *
    +37   *
    +38   */
    +39  @XmlAccessorType(XmlAccessType.FIELD)
    +40  @XmlType(name = "Organization", propOrder = {
    +41  
    +42  })
    +43  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +44  public class Organization {
    +45  
    +46      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +47      protected String name;
    +48      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +49      protected String url;
    +50  
    +51      /**
    +52       * Gets the value of the name property.
    +53       *
    +54       * @return
    +55       *     possible object is
    +56       *     {@link String }
    +57       *
    +58       */
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      public String getName() {
    +61          return name;
    +62      }
    +63  
    +64      /**
    +65       * Sets the value of the name property.
    +66       *
    +67       * @param value
    +68       *     allowed object is
    +69       *     {@link String }
    +70       *
    +71       */
    +72      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +73      public void setName(String value) {
    +74          this.name = value;
    +75      }
    +76  
    +77      /**
    +78       * Gets the value of the url property.
    +79       *
    +80       * @return
    +81       *     possible object is
    +82       *     {@link String }
    +83       *
    +84       */
    +85      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +86      public String getUrl() {
    +87          return url;
    +88      }
    +89  
    +90      /**
    +91       * Sets the value of the url property.
    +92       *
    +93       * @param value
    +94       *     allowed object is
    +95       *     {@link String }
    +96       *
    +97       */
    +98      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +99      public void setUrl(String value) {
    +100         this.url = value;
    +101     }
    +102 
    +103 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html new file mode 100644 index 000000000..cbbd506f8 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html @@ -0,0 +1,177 @@ + + + + +Parent xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   *  4.0.0
    +20   *
    +21   * <p>Java class for Parent complex type.
    +22   *
    +23   * <p>The following schema fragment specifies the expected content contained within this class.
    +24   *
    +25   * <pre>
    +26   * &lt;complexType name="Parent">
    +27   *   &lt;complexContent>
    +28   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +29   *       &lt;all>
    +30   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="relativePath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *       &lt;/all>
    +35   *     &lt;/restriction>
    +36   *   &lt;/complexContent>
    +37   * &lt;/complexType>
    +38   * </pre>
    +39   *
    +40   *
    +41   */
    +42  @XmlAccessorType(XmlAccessType.FIELD)
    +43  @XmlType(name = "Parent", propOrder = {
    +44  
    +45  })
    +46  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +47  public class Parent {
    +48  
    +49      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50      protected String artifactId;
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String groupId;
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected String version;
    +55      @XmlElement(defaultValue = "../pom.xml")
    +56      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57      protected String relativePath;
    +58  
    +59      /**
    +60       * Gets the value of the artifactId property.
    +61       *
    +62       * @return
    +63       *     possible object is
    +64       *     {@link String }
    +65       *
    +66       */
    +67      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +68      public String getArtifactId() {
    +69          return artifactId;
    +70      }
    +71  
    +72      /**
    +73       * Sets the value of the artifactId property.
    +74       *
    +75       * @param value
    +76       *     allowed object is
    +77       *     {@link String }
    +78       *
    +79       */
    +80      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +81      public void setArtifactId(String value) {
    +82          this.artifactId = value;
    +83      }
    +84  
    +85      /**
    +86       * Gets the value of the groupId property.
    +87       *
    +88       * @return
    +89       *     possible object is
    +90       *     {@link String }
    +91       *
    +92       */
    +93      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +94      public String getGroupId() {
    +95          return groupId;
    +96      }
    +97  
    +98      /**
    +99       * Sets the value of the groupId property.
    +100      *
    +101      * @param value
    +102      *     allowed object is
    +103      *     {@link String }
    +104      *
    +105      */
    +106     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +107     public void setGroupId(String value) {
    +108         this.groupId = value;
    +109     }
    +110 
    +111     /**
    +112      * Gets the value of the version property.
    +113      *
    +114      * @return
    +115      *     possible object is
    +116      *     {@link String }
    +117      *
    +118      */
    +119     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +120     public String getVersion() {
    +121         return version;
    +122     }
    +123 
    +124     /**
    +125      * Sets the value of the version property.
    +126      *
    +127      * @param value
    +128      *     allowed object is
    +129      *     {@link String }
    +130      *
    +131      */
    +132     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +133     public void setVersion(String value) {
    +134         this.version = value;
    +135     }
    +136 
    +137     /**
    +138      * Gets the value of the relativePath property.
    +139      *
    +140      * @return
    +141      *     possible object is
    +142      *     {@link String }
    +143      *
    +144      */
    +145     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +146     public String getRelativePath() {
    +147         return relativePath;
    +148     }
    +149 
    +150     /**
    +151      * Sets the value of the relativePath property.
    +152      *
    +153      * @param value
    +154      *     allowed object is
    +155      *     {@link String }
    +156      *
    +157      */
    +158     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +159     public void setRelativePath(String value) {
    +160         this.relativePath = value;
    +161     }
    +162 
    +163 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html new file mode 100644 index 000000000..422c8f2b4 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html @@ -0,0 +1,617 @@ + + + + +Plugin xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlElement;
    +18  import javax.xml.bind.annotation.XmlType;
    +19  import org.w3c.dom.Element;
    +20  
    +21  
    +22  /**
    +23   *  4.0.0
    +24   *
    +25   * <p>Java class for Plugin complex type.
    +26   *
    +27   * <p>The following schema fragment specifies the expected content contained within this class.
    +28   *
    +29   * <pre>
    +30   * &lt;complexType name="Plugin">
    +31   *   &lt;complexContent>
    +32   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +33   *       &lt;all>
    +34   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="extensions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +38   *         &lt;element name="executions" minOccurs="0">
    +39   *           &lt;complexType>
    +40   *             &lt;complexContent>
    +41   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +42   *                 &lt;sequence>
    +43   *                   &lt;element name="execution" type="{http://maven.apache.org/POM/4.0.0}PluginExecution" maxOccurs="unbounded" minOccurs="0"/>
    +44   *                 &lt;/sequence>
    +45   *               &lt;/restriction>
    +46   *             &lt;/complexContent>
    +47   *           &lt;/complexType>
    +48   *         &lt;/element>
    +49   *         &lt;element name="dependencies" minOccurs="0">
    +50   *           &lt;complexType>
    +51   *             &lt;complexContent>
    +52   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +53   *                 &lt;sequence>
    +54   *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +55   *                 &lt;/sequence>
    +56   *               &lt;/restriction>
    +57   *             &lt;/complexContent>
    +58   *           &lt;/complexType>
    +59   *         &lt;/element>
    +60   *         &lt;element name="goals" minOccurs="0">
    +61   *           &lt;complexType>
    +62   *             &lt;complexContent>
    +63   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +64   *                 &lt;sequence>
    +65   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +66   *                 &lt;/sequence>
    +67   *               &lt;/restriction>
    +68   *             &lt;/complexContent>
    +69   *           &lt;/complexType>
    +70   *         &lt;/element>
    +71   *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +72   *         &lt;element name="configuration" minOccurs="0">
    +73   *           &lt;complexType>
    +74   *             &lt;complexContent>
    +75   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +76   *                 &lt;sequence>
    +77   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +78   *                 &lt;/sequence>
    +79   *               &lt;/restriction>
    +80   *             &lt;/complexContent>
    +81   *           &lt;/complexType>
    +82   *         &lt;/element>
    +83   *       &lt;/all>
    +84   *     &lt;/restriction>
    +85   *   &lt;/complexContent>
    +86   * &lt;/complexType>
    +87   * </pre>
    +88   *
    +89   *
    +90   */
    +91  @XmlAccessorType(XmlAccessType.FIELD)
    +92  @XmlType(name = "Plugin", propOrder = {
    +93  
    +94  })
    +95  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +96  public class Plugin {
    +97  
    +98      @XmlElement(defaultValue = "org.apache.maven.plugins")
    +99      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +100     protected String groupId;
    +101     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +102     protected String artifactId;
    +103     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +104     protected String version;
    +105     @XmlElement(defaultValue = "false")
    +106     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +107     protected Boolean extensions;
    +108     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +109     protected Plugin.Executions executions;
    +110     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +111     protected Plugin.Dependencies dependencies;
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     protected Plugin.Goals goals;
    +114     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +115     protected String inherited;
    +116     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +117     protected Plugin.Configuration configuration;
    +118 
    +119     /**
    +120      * Gets the value of the groupId property.
    +121      *
    +122      * @return
    +123      *     possible object is
    +124      *     {@link String }
    +125      *
    +126      */
    +127     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +128     public String getGroupId() {
    +129         return groupId;
    +130     }
    +131 
    +132     /**
    +133      * Sets the value of the groupId property.
    +134      *
    +135      * @param value
    +136      *     allowed object is
    +137      *     {@link String }
    +138      *
    +139      */
    +140     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +141     public void setGroupId(String value) {
    +142         this.groupId = value;
    +143     }
    +144 
    +145     /**
    +146      * Gets the value of the artifactId property.
    +147      *
    +148      * @return
    +149      *     possible object is
    +150      *     {@link String }
    +151      *
    +152      */
    +153     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +154     public String getArtifactId() {
    +155         return artifactId;
    +156     }
    +157 
    +158     /**
    +159      * Sets the value of the artifactId property.
    +160      *
    +161      * @param value
    +162      *     allowed object is
    +163      *     {@link String }
    +164      *
    +165      */
    +166     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +167     public void setArtifactId(String value) {
    +168         this.artifactId = value;
    +169     }
    +170 
    +171     /**
    +172      * Gets the value of the version property.
    +173      *
    +174      * @return
    +175      *     possible object is
    +176      *     {@link String }
    +177      *
    +178      */
    +179     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +180     public String getVersion() {
    +181         return version;
    +182     }
    +183 
    +184     /**
    +185      * Sets the value of the version property.
    +186      *
    +187      * @param value
    +188      *     allowed object is
    +189      *     {@link String }
    +190      *
    +191      */
    +192     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +193     public void setVersion(String value) {
    +194         this.version = value;
    +195     }
    +196 
    +197     /**
    +198      * Gets the value of the extensions property.
    +199      *
    +200      * @return
    +201      *     possible object is
    +202      *     {@link Boolean }
    +203      *
    +204      */
    +205     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +206     public Boolean isExtensions() {
    +207         return extensions;
    +208     }
    +209 
    +210     /**
    +211      * Sets the value of the extensions property.
    +212      *
    +213      * @param value
    +214      *     allowed object is
    +215      *     {@link Boolean }
    +216      *
    +217      */
    +218     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +219     public void setExtensions(Boolean value) {
    +220         this.extensions = value;
    +221     }
    +222 
    +223     /**
    +224      * Gets the value of the executions property.
    +225      *
    +226      * @return
    +227      *     possible object is
    +228      *     {@link Plugin.Executions }
    +229      *
    +230      */
    +231     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +232     public Plugin.Executions getExecutions() {
    +233         return executions;
    +234     }
    +235 
    +236     /**
    +237      * Sets the value of the executions property.
    +238      *
    +239      * @param value
    +240      *     allowed object is
    +241      *     {@link Plugin.Executions }
    +242      *
    +243      */
    +244     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +245     public void setExecutions(Plugin.Executions value) {
    +246         this.executions = value;
    +247     }
    +248 
    +249     /**
    +250      * Gets the value of the dependencies property.
    +251      *
    +252      * @return
    +253      *     possible object is
    +254      *     {@link Plugin.Dependencies }
    +255      *
    +256      */
    +257     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +258     public Plugin.Dependencies getDependencies() {
    +259         return dependencies;
    +260     }
    +261 
    +262     /**
    +263      * Sets the value of the dependencies property.
    +264      *
    +265      * @param value
    +266      *     allowed object is
    +267      *     {@link Plugin.Dependencies }
    +268      *
    +269      */
    +270     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +271     public void setDependencies(Plugin.Dependencies value) {
    +272         this.dependencies = value;
    +273     }
    +274 
    +275     /**
    +276      * Gets the value of the goals property.
    +277      *
    +278      * @return
    +279      *     possible object is
    +280      *     {@link Plugin.Goals }
    +281      *
    +282      */
    +283     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +284     public Plugin.Goals getGoals() {
    +285         return goals;
    +286     }
    +287 
    +288     /**
    +289      * Sets the value of the goals property.
    +290      *
    +291      * @param value
    +292      *     allowed object is
    +293      *     {@link Plugin.Goals }
    +294      *
    +295      */
    +296     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +297     public void setGoals(Plugin.Goals value) {
    +298         this.goals = value;
    +299     }
    +300 
    +301     /**
    +302      * Gets the value of the inherited property.
    +303      *
    +304      * @return
    +305      *     possible object is
    +306      *     {@link String }
    +307      *
    +308      */
    +309     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +310     public String getInherited() {
    +311         return inherited;
    +312     }
    +313 
    +314     /**
    +315      * Sets the value of the inherited property.
    +316      *
    +317      * @param value
    +318      *     allowed object is
    +319      *     {@link String }
    +320      *
    +321      */
    +322     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +323     public void setInherited(String value) {
    +324         this.inherited = value;
    +325     }
    +326 
    +327     /**
    +328      * Gets the value of the configuration property.
    +329      *
    +330      * @return
    +331      *     possible object is
    +332      *     {@link Plugin.Configuration }
    +333      *
    +334      */
    +335     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +336     public Plugin.Configuration getConfiguration() {
    +337         return configuration;
    +338     }
    +339 
    +340     /**
    +341      * Sets the value of the configuration property.
    +342      *
    +343      * @param value
    +344      *     allowed object is
    +345      *     {@link Plugin.Configuration }
    +346      *
    +347      */
    +348     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +349     public void setConfiguration(Plugin.Configuration value) {
    +350         this.configuration = value;
    +351     }
    +352 
    +353 
    +354     /**
    +355      * <p>Java class for anonymous complex type.
    +356      *
    +357      * <p>The following schema fragment specifies the expected content contained within this class.
    +358      *
    +359      * <pre>
    +360      * &lt;complexType>
    +361      *   &lt;complexContent>
    +362      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +363      *       &lt;sequence>
    +364      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +365      *       &lt;/sequence>
    +366      *     &lt;/restriction>
    +367      *   &lt;/complexContent>
    +368      * &lt;/complexType>
    +369      * </pre>
    +370      *
    +371      *
    +372      */
    +373     @XmlAccessorType(XmlAccessType.FIELD)
    +374     @XmlType(name = "", propOrder = {
    +375         "any"
    +376     })
    +377     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +378     public static class Configuration {
    +379 
    +380         @XmlAnyElement
    +381         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +382         protected List<Element> any;
    +383 
    +384         /**
    +385          * Gets the value of the any property.
    +386          *
    +387          * <p>
    +388          * This accessor method returns a reference to the live list,
    +389          * not a snapshot. Therefore any modification you make to the
    +390          * returned list will be present inside the JAXB object.
    +391          * This is why there is not a <CODE>set</CODE> method for the any property.
    +392          *
    +393          * <p>
    +394          * For example, to add a new item, do as follows:
    +395          * <pre>
    +396          *    getAny().add(newItem);
    +397          * </pre>
    +398          *
    +399          *
    +400          * <p>
    +401          * Objects of the following type(s) are allowed in the list
    +402          * {@link Element }
    +403          *
    +404          *
    +405          */
    +406         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +407         public List<Element> getAny() {
    +408             if (any == null) {
    +409                 any = new ArrayList<Element>();
    +410             }
    +411             return this.any;
    +412         }
    +413 
    +414     }
    +415 
    +416 
    +417     /**
    +418      * <p>Java class for anonymous complex type.
    +419      *
    +420      * <p>The following schema fragment specifies the expected content contained within this class.
    +421      *
    +422      * <pre>
    +423      * &lt;complexType>
    +424      *   &lt;complexContent>
    +425      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +426      *       &lt;sequence>
    +427      *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +428      *       &lt;/sequence>
    +429      *     &lt;/restriction>
    +430      *   &lt;/complexContent>
    +431      * &lt;/complexType>
    +432      * </pre>
    +433      *
    +434      *
    +435      */
    +436     @XmlAccessorType(XmlAccessType.FIELD)
    +437     @XmlType(name = "", propOrder = {
    +438         "dependency"
    +439     })
    +440     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +441     public static class Dependencies {
    +442 
    +443         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +444         protected List<Dependency> dependency;
    +445 
    +446         /**
    +447          * Gets the value of the dependency property.
    +448          *
    +449          * <p>
    +450          * This accessor method returns a reference to the live list,
    +451          * not a snapshot. Therefore any modification you make to the
    +452          * returned list will be present inside the JAXB object.
    +453          * This is why there is not a <CODE>set</CODE> method for the dependency property.
    +454          *
    +455          * <p>
    +456          * For example, to add a new item, do as follows:
    +457          * <pre>
    +458          *    getDependency().add(newItem);
    +459          * </pre>
    +460          *
    +461          *
    +462          * <p>
    +463          * Objects of the following type(s) are allowed in the list
    +464          * {@link Dependency }
    +465          *
    +466          *
    +467          */
    +468         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +469         public List<Dependency> getDependency() {
    +470             if (dependency == null) {
    +471                 dependency = new ArrayList<Dependency>();
    +472             }
    +473             return this.dependency;
    +474         }
    +475 
    +476     }
    +477 
    +478 
    +479     /**
    +480      * <p>Java class for anonymous complex type.
    +481      *
    +482      * <p>The following schema fragment specifies the expected content contained within this class.
    +483      *
    +484      * <pre>
    +485      * &lt;complexType>
    +486      *   &lt;complexContent>
    +487      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +488      *       &lt;sequence>
    +489      *         &lt;element name="execution" type="{http://maven.apache.org/POM/4.0.0}PluginExecution" maxOccurs="unbounded" minOccurs="0"/>
    +490      *       &lt;/sequence>
    +491      *     &lt;/restriction>
    +492      *   &lt;/complexContent>
    +493      * &lt;/complexType>
    +494      * </pre>
    +495      *
    +496      *
    +497      */
    +498     @XmlAccessorType(XmlAccessType.FIELD)
    +499     @XmlType(name = "", propOrder = {
    +500         "execution"
    +501     })
    +502     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +503     public static class Executions {
    +504 
    +505         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +506         protected List<PluginExecution> execution;
    +507 
    +508         /**
    +509          * Gets the value of the execution property.
    +510          *
    +511          * <p>
    +512          * This accessor method returns a reference to the live list,
    +513          * not a snapshot. Therefore any modification you make to the
    +514          * returned list will be present inside the JAXB object.
    +515          * This is why there is not a <CODE>set</CODE> method for the execution property.
    +516          *
    +517          * <p>
    +518          * For example, to add a new item, do as follows:
    +519          * <pre>
    +520          *    getExecution().add(newItem);
    +521          * </pre>
    +522          *
    +523          *
    +524          * <p>
    +525          * Objects of the following type(s) are allowed in the list
    +526          * {@link PluginExecution }
    +527          *
    +528          *
    +529          */
    +530         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +531         public List<PluginExecution> getExecution() {
    +532             if (execution == null) {
    +533                 execution = new ArrayList<PluginExecution>();
    +534             }
    +535             return this.execution;
    +536         }
    +537 
    +538     }
    +539 
    +540 
    +541     /**
    +542      * <p>Java class for anonymous complex type.
    +543      *
    +544      * <p>The following schema fragment specifies the expected content contained within this class.
    +545      *
    +546      * <pre>
    +547      * &lt;complexType>
    +548      *   &lt;complexContent>
    +549      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +550      *       &lt;sequence>
    +551      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +552      *       &lt;/sequence>
    +553      *     &lt;/restriction>
    +554      *   &lt;/complexContent>
    +555      * &lt;/complexType>
    +556      * </pre>
    +557      *
    +558      *
    +559      */
    +560     @XmlAccessorType(XmlAccessType.FIELD)
    +561     @XmlType(name = "", propOrder = {
    +562         "any"
    +563     })
    +564     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +565     public static class Goals {
    +566 
    +567         @XmlAnyElement
    +568         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +569         protected List<Element> any;
    +570 
    +571         /**
    +572          * Gets the value of the any property.
    +573          *
    +574          * <p>
    +575          * This accessor method returns a reference to the live list,
    +576          * not a snapshot. Therefore any modification you make to the
    +577          * returned list will be present inside the JAXB object.
    +578          * This is why there is not a <CODE>set</CODE> method for the any property.
    +579          *
    +580          * <p>
    +581          * For example, to add a new item, do as follows:
    +582          * <pre>
    +583          *    getAny().add(newItem);
    +584          * </pre>
    +585          *
    +586          *
    +587          * <p>
    +588          * Objects of the following type(s) are allowed in the list
    +589          * {@link Element }
    +590          *
    +591          *
    +592          */
    +593         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +594         public List<Element> getAny() {
    +595             if (any == null) {
    +596                 any = new ArrayList<Element>();
    +597             }
    +598             return this.any;
    +599         }
    +600 
    +601     }
    +602 
    +603 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html new file mode 100644 index 000000000..c988ec752 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html @@ -0,0 +1,355 @@ + + + + +PluginExecution xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlElement;
    +18  import javax.xml.bind.annotation.XmlType;
    +19  import org.w3c.dom.Element;
    +20  
    +21  
    +22  /**
    +23   *  4.0.0
    +24   *
    +25   * <p>Java class for PluginExecution complex type.
    +26   *
    +27   * <p>The following schema fragment specifies the expected content contained within this class.
    +28   *
    +29   * <pre>
    +30   * &lt;complexType name="PluginExecution">
    +31   *   &lt;complexContent>
    +32   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +33   *       &lt;all>
    +34   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="phase" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="goals" minOccurs="0">
    +37   *           &lt;complexType>
    +38   *             &lt;complexContent>
    +39   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +40   *                 &lt;sequence>
    +41   *                   &lt;element name="goal" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +42   *                 &lt;/sequence>
    +43   *               &lt;/restriction>
    +44   *             &lt;/complexContent>
    +45   *           &lt;/complexType>
    +46   *         &lt;/element>
    +47   *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +48   *         &lt;element name="configuration" minOccurs="0">
    +49   *           &lt;complexType>
    +50   *             &lt;complexContent>
    +51   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +52   *                 &lt;sequence>
    +53   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +54   *                 &lt;/sequence>
    +55   *               &lt;/restriction>
    +56   *             &lt;/complexContent>
    +57   *           &lt;/complexType>
    +58   *         &lt;/element>
    +59   *       &lt;/all>
    +60   *     &lt;/restriction>
    +61   *   &lt;/complexContent>
    +62   * &lt;/complexType>
    +63   * </pre>
    +64   *
    +65   *
    +66   */
    +67  @XmlAccessorType(XmlAccessType.FIELD)
    +68  @XmlType(name = "PluginExecution", propOrder = {
    +69  
    +70  })
    +71  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +72  public class PluginExecution {
    +73  
    +74      @XmlElement(defaultValue = "default")
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      protected String id;
    +77      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +78      protected String phase;
    +79      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +80      protected PluginExecution.Goals goals;
    +81      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +82      protected String inherited;
    +83      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +84      protected PluginExecution.Configuration configuration;
    +85  
    +86      /**
    +87       * Gets the value of the id property.
    +88       *
    +89       * @return
    +90       *     possible object is
    +91       *     {@link String }
    +92       *
    +93       */
    +94      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +95      public String getId() {
    +96          return id;
    +97      }
    +98  
    +99      /**
    +100      * Sets the value of the id property.
    +101      *
    +102      * @param value
    +103      *     allowed object is
    +104      *     {@link String }
    +105      *
    +106      */
    +107     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +108     public void setId(String value) {
    +109         this.id = value;
    +110     }
    +111 
    +112     /**
    +113      * Gets the value of the phase property.
    +114      *
    +115      * @return
    +116      *     possible object is
    +117      *     {@link String }
    +118      *
    +119      */
    +120     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +121     public String getPhase() {
    +122         return phase;
    +123     }
    +124 
    +125     /**
    +126      * Sets the value of the phase property.
    +127      *
    +128      * @param value
    +129      *     allowed object is
    +130      *     {@link String }
    +131      *
    +132      */
    +133     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +134     public void setPhase(String value) {
    +135         this.phase = value;
    +136     }
    +137 
    +138     /**
    +139      * Gets the value of the goals property.
    +140      *
    +141      * @return
    +142      *     possible object is
    +143      *     {@link PluginExecution.Goals }
    +144      *
    +145      */
    +146     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +147     public PluginExecution.Goals getGoals() {
    +148         return goals;
    +149     }
    +150 
    +151     /**
    +152      * Sets the value of the goals property.
    +153      *
    +154      * @param value
    +155      *     allowed object is
    +156      *     {@link PluginExecution.Goals }
    +157      *
    +158      */
    +159     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +160     public void setGoals(PluginExecution.Goals value) {
    +161         this.goals = value;
    +162     }
    +163 
    +164     /**
    +165      * Gets the value of the inherited property.
    +166      *
    +167      * @return
    +168      *     possible object is
    +169      *     {@link String }
    +170      *
    +171      */
    +172     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +173     public String getInherited() {
    +174         return inherited;
    +175     }
    +176 
    +177     /**
    +178      * Sets the value of the inherited property.
    +179      *
    +180      * @param value
    +181      *     allowed object is
    +182      *     {@link String }
    +183      *
    +184      */
    +185     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +186     public void setInherited(String value) {
    +187         this.inherited = value;
    +188     }
    +189 
    +190     /**
    +191      * Gets the value of the configuration property.
    +192      *
    +193      * @return
    +194      *     possible object is
    +195      *     {@link PluginExecution.Configuration }
    +196      *
    +197      */
    +198     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +199     public PluginExecution.Configuration getConfiguration() {
    +200         return configuration;
    +201     }
    +202 
    +203     /**
    +204      * Sets the value of the configuration property.
    +205      *
    +206      * @param value
    +207      *     allowed object is
    +208      *     {@link PluginExecution.Configuration }
    +209      *
    +210      */
    +211     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +212     public void setConfiguration(PluginExecution.Configuration value) {
    +213         this.configuration = value;
    +214     }
    +215 
    +216 
    +217     /**
    +218      * <p>Java class for anonymous complex type.
    +219      *
    +220      * <p>The following schema fragment specifies the expected content contained within this class.
    +221      *
    +222      * <pre>
    +223      * &lt;complexType>
    +224      *   &lt;complexContent>
    +225      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +226      *       &lt;sequence>
    +227      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +228      *       &lt;/sequence>
    +229      *     &lt;/restriction>
    +230      *   &lt;/complexContent>
    +231      * &lt;/complexType>
    +232      * </pre>
    +233      *
    +234      *
    +235      */
    +236     @XmlAccessorType(XmlAccessType.FIELD)
    +237     @XmlType(name = "", propOrder = {
    +238         "any"
    +239     })
    +240     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +241     public static class Configuration {
    +242 
    +243         @XmlAnyElement
    +244         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +245         protected List<Element> any;
    +246 
    +247         /**
    +248          * Gets the value of the any property.
    +249          *
    +250          * <p>
    +251          * This accessor method returns a reference to the live list,
    +252          * not a snapshot. Therefore any modification you make to the
    +253          * returned list will be present inside the JAXB object.
    +254          * This is why there is not a <CODE>set</CODE> method for the any property.
    +255          *
    +256          * <p>
    +257          * For example, to add a new item, do as follows:
    +258          * <pre>
    +259          *    getAny().add(newItem);
    +260          * </pre>
    +261          *
    +262          *
    +263          * <p>
    +264          * Objects of the following type(s) are allowed in the list
    +265          * {@link Element }
    +266          *
    +267          *
    +268          */
    +269         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +270         public List<Element> getAny() {
    +271             if (any == null) {
    +272                 any = new ArrayList<Element>();
    +273             }
    +274             return this.any;
    +275         }
    +276 
    +277     }
    +278 
    +279 
    +280     /**
    +281      * <p>Java class for anonymous complex type.
    +282      *
    +283      * <p>The following schema fragment specifies the expected content contained within this class.
    +284      *
    +285      * <pre>
    +286      * &lt;complexType>
    +287      *   &lt;complexContent>
    +288      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +289      *       &lt;sequence>
    +290      *         &lt;element name="goal" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +291      *       &lt;/sequence>
    +292      *     &lt;/restriction>
    +293      *   &lt;/complexContent>
    +294      * &lt;/complexType>
    +295      * </pre>
    +296      *
    +297      *
    +298      */
    +299     @XmlAccessorType(XmlAccessType.FIELD)
    +300     @XmlType(name = "", propOrder = {
    +301         "goal"
    +302     })
    +303     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +304     public static class Goals {
    +305 
    +306         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +307         protected List<String> goal;
    +308 
    +309         /**
    +310          * Gets the value of the goal property.
    +311          *
    +312          * <p>
    +313          * This accessor method returns a reference to the live list,
    +314          * not a snapshot. Therefore any modification you make to the
    +315          * returned list will be present inside the JAXB object.
    +316          * This is why there is not a <CODE>set</CODE> method for the goal property.
    +317          *
    +318          * <p>
    +319          * For example, to add a new item, do as follows:
    +320          * <pre>
    +321          *    getGoal().add(newItem);
    +322          * </pre>
    +323          *
    +324          *
    +325          * <p>
    +326          * Objects of the following type(s) are allowed in the list
    +327          * {@link String }
    +328          *
    +329          *
    +330          */
    +331         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +332         public List<String> getGoal() {
    +333             if (goal == null) {
    +334                 goal = new ArrayList<String>();
    +335             }
    +336             return this.goal;
    +337         }
    +338 
    +339     }
    +340 
    +341 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html new file mode 100644 index 000000000..ea38027b9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html @@ -0,0 +1,164 @@ + + + + +PluginManagement xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlType;
    +17  
    +18  
    +19  /**
    +20   *
    +21   *         Section for management of default plugin information for use in a group of POMs.
    +22   *
    +23   *
    +24   * <p>Java class for PluginManagement complex type.
    +25   *
    +26   * <p>The following schema fragment specifies the expected content contained within this class.
    +27   *
    +28   * <pre>
    +29   * &lt;complexType name="PluginManagement">
    +30   *   &lt;complexContent>
    +31   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +32   *       &lt;all>
    +33   *         &lt;element name="plugins" minOccurs="0">
    +34   *           &lt;complexType>
    +35   *             &lt;complexContent>
    +36   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +37   *                 &lt;sequence>
    +38   *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +39   *                 &lt;/sequence>
    +40   *               &lt;/restriction>
    +41   *             &lt;/complexContent>
    +42   *           &lt;/complexType>
    +43   *         &lt;/element>
    +44   *       &lt;/all>
    +45   *     &lt;/restriction>
    +46   *   &lt;/complexContent>
    +47   * &lt;/complexType>
    +48   * </pre>
    +49   *
    +50   *
    +51   */
    +52  @XmlAccessorType(XmlAccessType.FIELD)
    +53  @XmlType(name = "PluginManagement", propOrder = {
    +54  
    +55  })
    +56  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57  public class PluginManagement {
    +58  
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      protected PluginManagement.Plugins plugins;
    +61  
    +62      /**
    +63       * Gets the value of the plugins property.
    +64       *
    +65       * @return
    +66       *     possible object is
    +67       *     {@link PluginManagement.Plugins }
    +68       *
    +69       */
    +70      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +71      public PluginManagement.Plugins getPlugins() {
    +72          return plugins;
    +73      }
    +74  
    +75      /**
    +76       * Sets the value of the plugins property.
    +77       *
    +78       * @param value
    +79       *     allowed object is
    +80       *     {@link PluginManagement.Plugins }
    +81       *
    +82       */
    +83      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +84      public void setPlugins(PluginManagement.Plugins value) {
    +85          this.plugins = value;
    +86      }
    +87  
    +88  
    +89      /**
    +90       * <p>Java class for anonymous complex type.
    +91       *
    +92       * <p>The following schema fragment specifies the expected content contained within this class.
    +93       *
    +94       * <pre>
    +95       * &lt;complexType>
    +96       *   &lt;complexContent>
    +97       *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +98       *       &lt;sequence>
    +99       *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}Plugin" maxOccurs="unbounded" minOccurs="0"/>
    +100      *       &lt;/sequence>
    +101      *     &lt;/restriction>
    +102      *   &lt;/complexContent>
    +103      * &lt;/complexType>
    +104      * </pre>
    +105      *
    +106      *
    +107      */
    +108     @XmlAccessorType(XmlAccessType.FIELD)
    +109     @XmlType(name = "", propOrder = {
    +110         "plugin"
    +111     })
    +112     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +113     public static class Plugins {
    +114 
    +115         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +116         protected List<Plugin> plugin;
    +117 
    +118         /**
    +119          * Gets the value of the plugin property.
    +120          *
    +121          * <p>
    +122          * This accessor method returns a reference to the live list,
    +123          * not a snapshot. Therefore any modification you make to the
    +124          * returned list will be present inside the JAXB object.
    +125          * This is why there is not a <CODE>set</CODE> method for the plugin property.
    +126          *
    +127          * <p>
    +128          * For example, to add a new item, do as follows:
    +129          * <pre>
    +130          *    getPlugin().add(newItem);
    +131          * </pre>
    +132          *
    +133          *
    +134          * <p>
    +135          * Objects of the following type(s) are allowed in the list
    +136          * {@link Plugin }
    +137          *
    +138          *
    +139          */
    +140         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +141         public List<Plugin> getPlugin() {
    +142             if (plugin == null) {
    +143                 plugin = new ArrayList<Plugin>();
    +144             }
    +145             return this.plugin;
    +146         }
    +147 
    +148     }
    +149 
    +150 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html new file mode 100644 index 000000000..b0d3fd7d9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html @@ -0,0 +1,90 @@ + + + + +Prerequisites xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   * Describes the prerequisites a project can have.
    +20   *
    +21   * <p>Java class for Prerequisites complex type.
    +22   *
    +23   * <p>The following schema fragment specifies the expected content contained within this class.
    +24   *
    +25   * <pre>
    +26   * &lt;complexType name="Prerequisites">
    +27   *   &lt;complexContent>
    +28   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +29   *       &lt;all>
    +30   *         &lt;element name="maven" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *       &lt;/all>
    +32   *     &lt;/restriction>
    +33   *   &lt;/complexContent>
    +34   * &lt;/complexType>
    +35   * </pre>
    +36   *
    +37   *
    +38   */
    +39  @XmlAccessorType(XmlAccessType.FIELD)
    +40  @XmlType(name = "Prerequisites", propOrder = {
    +41  
    +42  })
    +43  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +44  public class Prerequisites {
    +45  
    +46      @XmlElement(defaultValue = "2.0")
    +47      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +48      protected String maven;
    +49  
    +50      /**
    +51       * Gets the value of the maven property.
    +52       *
    +53       * @return
    +54       *     possible object is
    +55       *     {@link String }
    +56       *
    +57       */
    +58      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +59      public String getMaven() {
    +60          return maven;
    +61      }
    +62  
    +63      /**
    +64       * Sets the value of the maven property.
    +65       *
    +66       * @param value
    +67       *     allowed object is
    +68       *     {@link String }
    +69       *
    +70       */
    +71      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +72      public void setMaven(String value) {
    +73          this.maven = value;
    +74      }
    +75  
    +76  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html new file mode 100644 index 000000000..3efad59ad --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html @@ -0,0 +1,847 @@ + + + + +Profile xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlType;
    +18  import org.w3c.dom.Element;
    +19  
    +20  
    +21  /**
    +22   *
    +23   *         Modifications to the build process which is activated based on environmental parameters or command line arguments.
    +24   *
    +25   *
    +26   * <p>Java class for Profile complex type.
    +27   *
    +28   * <p>The following schema fragment specifies the expected content contained within this class.
    +29   *
    +30   * <pre>
    +31   * &lt;complexType name="Profile">
    +32   *   &lt;complexContent>
    +33   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +34   *       &lt;all>
    +35   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="activation" type="{http://maven.apache.org/POM/4.0.0}Activation" minOccurs="0"/>
    +37   *         &lt;element name="build" type="{http://maven.apache.org/POM/4.0.0}BuildBase" minOccurs="0"/>
    +38   *         &lt;element name="modules" minOccurs="0">
    +39   *           &lt;complexType>
    +40   *             &lt;complexContent>
    +41   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +42   *                 &lt;sequence>
    +43   *                   &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +44   *                 &lt;/sequence>
    +45   *               &lt;/restriction>
    +46   *             &lt;/complexContent>
    +47   *           &lt;/complexType>
    +48   *         &lt;/element>
    +49   *         &lt;element name="repositories" minOccurs="0">
    +50   *           &lt;complexType>
    +51   *             &lt;complexContent>
    +52   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +53   *                 &lt;sequence>
    +54   *                   &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +55   *                 &lt;/sequence>
    +56   *               &lt;/restriction>
    +57   *             &lt;/complexContent>
    +58   *           &lt;/complexType>
    +59   *         &lt;/element>
    +60   *         &lt;element name="pluginRepositories" minOccurs="0">
    +61   *           &lt;complexType>
    +62   *             &lt;complexContent>
    +63   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +64   *                 &lt;sequence>
    +65   *                   &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +66   *                 &lt;/sequence>
    +67   *               &lt;/restriction>
    +68   *             &lt;/complexContent>
    +69   *           &lt;/complexType>
    +70   *         &lt;/element>
    +71   *         &lt;element name="dependencies" minOccurs="0">
    +72   *           &lt;complexType>
    +73   *             &lt;complexContent>
    +74   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +75   *                 &lt;sequence>
    +76   *                   &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +77   *                 &lt;/sequence>
    +78   *               &lt;/restriction>
    +79   *             &lt;/complexContent>
    +80   *           &lt;/complexType>
    +81   *         &lt;/element>
    +82   *         &lt;element name="reports" minOccurs="0">
    +83   *           &lt;complexType>
    +84   *             &lt;complexContent>
    +85   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +86   *                 &lt;sequence>
    +87   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +88   *                 &lt;/sequence>
    +89   *               &lt;/restriction>
    +90   *             &lt;/complexContent>
    +91   *           &lt;/complexType>
    +92   *         &lt;/element>
    +93   *         &lt;element name="reporting" type="{http://maven.apache.org/POM/4.0.0}Reporting" minOccurs="0"/>
    +94   *         &lt;element name="dependencyManagement" type="{http://maven.apache.org/POM/4.0.0}DependencyManagement" minOccurs="0"/>
    +95   *         &lt;element name="distributionManagement" type="{http://maven.apache.org/POM/4.0.0}DistributionManagement" minOccurs="0"/>
    +96   *         &lt;element name="properties" minOccurs="0">
    +97   *           &lt;complexType>
    +98   *             &lt;complexContent>
    +99   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +100  *                 &lt;sequence>
    +101  *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +102  *                 &lt;/sequence>
    +103  *               &lt;/restriction>
    +104  *             &lt;/complexContent>
    +105  *           &lt;/complexType>
    +106  *         &lt;/element>
    +107  *       &lt;/all>
    +108  *     &lt;/restriction>
    +109  *   &lt;/complexContent>
    +110  * &lt;/complexType>
    +111  * </pre>
    +112  *
    +113  *
    +114  */
    +115 @XmlAccessorType(XmlAccessType.FIELD)
    +116 @XmlType(name = "Profile", propOrder = {
    +117 
    +118 })
    +119 @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +120 public class Profile {
    +121 
    +122     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +123     protected String id;
    +124     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +125     protected Activation activation;
    +126     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +127     protected BuildBase build;
    +128     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +129     protected Profile.Modules modules;
    +130     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +131     protected Profile.Repositories repositories;
    +132     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +133     protected Profile.PluginRepositories pluginRepositories;
    +134     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +135     protected Profile.Dependencies dependencies;
    +136     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +137     protected Profile.Reports reports;
    +138     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +139     protected Reporting reporting;
    +140     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +141     protected DependencyManagement dependencyManagement;
    +142     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +143     protected DistributionManagement distributionManagement;
    +144     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +145     protected Profile.Properties properties;
    +146 
    +147     /**
    +148      * Gets the value of the id property.
    +149      *
    +150      * @return
    +151      *     possible object is
    +152      *     {@link String }
    +153      *
    +154      */
    +155     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +156     public String getId() {
    +157         return id;
    +158     }
    +159 
    +160     /**
    +161      * Sets the value of the id property.
    +162      *
    +163      * @param value
    +164      *     allowed object is
    +165      *     {@link String }
    +166      *
    +167      */
    +168     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +169     public void setId(String value) {
    +170         this.id = value;
    +171     }
    +172 
    +173     /**
    +174      * Gets the value of the activation property.
    +175      *
    +176      * @return
    +177      *     possible object is
    +178      *     {@link Activation }
    +179      *
    +180      */
    +181     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +182     public Activation getActivation() {
    +183         return activation;
    +184     }
    +185 
    +186     /**
    +187      * Sets the value of the activation property.
    +188      *
    +189      * @param value
    +190      *     allowed object is
    +191      *     {@link Activation }
    +192      *
    +193      */
    +194     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +195     public void setActivation(Activation value) {
    +196         this.activation = value;
    +197     }
    +198 
    +199     /**
    +200      * Gets the value of the build property.
    +201      *
    +202      * @return
    +203      *     possible object is
    +204      *     {@link BuildBase }
    +205      *
    +206      */
    +207     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +208     public BuildBase getBuild() {
    +209         return build;
    +210     }
    +211 
    +212     /**
    +213      * Sets the value of the build property.
    +214      *
    +215      * @param value
    +216      *     allowed object is
    +217      *     {@link BuildBase }
    +218      *
    +219      */
    +220     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +221     public void setBuild(BuildBase value) {
    +222         this.build = value;
    +223     }
    +224 
    +225     /**
    +226      * Gets the value of the modules property.
    +227      *
    +228      * @return
    +229      *     possible object is
    +230      *     {@link Profile.Modules }
    +231      *
    +232      */
    +233     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +234     public Profile.Modules getModules() {
    +235         return modules;
    +236     }
    +237 
    +238     /**
    +239      * Sets the value of the modules property.
    +240      *
    +241      * @param value
    +242      *     allowed object is
    +243      *     {@link Profile.Modules }
    +244      *
    +245      */
    +246     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +247     public void setModules(Profile.Modules value) {
    +248         this.modules = value;
    +249     }
    +250 
    +251     /**
    +252      * Gets the value of the repositories property.
    +253      *
    +254      * @return
    +255      *     possible object is
    +256      *     {@link Profile.Repositories }
    +257      *
    +258      */
    +259     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +260     public Profile.Repositories getRepositories() {
    +261         return repositories;
    +262     }
    +263 
    +264     /**
    +265      * Sets the value of the repositories property.
    +266      *
    +267      * @param value
    +268      *     allowed object is
    +269      *     {@link Profile.Repositories }
    +270      *
    +271      */
    +272     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +273     public void setRepositories(Profile.Repositories value) {
    +274         this.repositories = value;
    +275     }
    +276 
    +277     /**
    +278      * Gets the value of the pluginRepositories property.
    +279      *
    +280      * @return
    +281      *     possible object is
    +282      *     {@link Profile.PluginRepositories }
    +283      *
    +284      */
    +285     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +286     public Profile.PluginRepositories getPluginRepositories() {
    +287         return pluginRepositories;
    +288     }
    +289 
    +290     /**
    +291      * Sets the value of the pluginRepositories property.
    +292      *
    +293      * @param value
    +294      *     allowed object is
    +295      *     {@link Profile.PluginRepositories }
    +296      *
    +297      */
    +298     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +299     public void setPluginRepositories(Profile.PluginRepositories value) {
    +300         this.pluginRepositories = value;
    +301     }
    +302 
    +303     /**
    +304      * Gets the value of the dependencies property.
    +305      *
    +306      * @return
    +307      *     possible object is
    +308      *     {@link Profile.Dependencies }
    +309      *
    +310      */
    +311     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +312     public Profile.Dependencies getDependencies() {
    +313         return dependencies;
    +314     }
    +315 
    +316     /**
    +317      * Sets the value of the dependencies property.
    +318      *
    +319      * @param value
    +320      *     allowed object is
    +321      *     {@link Profile.Dependencies }
    +322      *
    +323      */
    +324     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +325     public void setDependencies(Profile.Dependencies value) {
    +326         this.dependencies = value;
    +327     }
    +328 
    +329     /**
    +330      * Gets the value of the reports property.
    +331      *
    +332      * @return
    +333      *     possible object is
    +334      *     {@link Profile.Reports }
    +335      *
    +336      */
    +337     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +338     public Profile.Reports getReports() {
    +339         return reports;
    +340     }
    +341 
    +342     /**
    +343      * Sets the value of the reports property.
    +344      *
    +345      * @param value
    +346      *     allowed object is
    +347      *     {@link Profile.Reports }
    +348      *
    +349      */
    +350     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +351     public void setReports(Profile.Reports value) {
    +352         this.reports = value;
    +353     }
    +354 
    +355     /**
    +356      * Gets the value of the reporting property.
    +357      *
    +358      * @return
    +359      *     possible object is
    +360      *     {@link Reporting }
    +361      *
    +362      */
    +363     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +364     public Reporting getReporting() {
    +365         return reporting;
    +366     }
    +367 
    +368     /**
    +369      * Sets the value of the reporting property.
    +370      *
    +371      * @param value
    +372      *     allowed object is
    +373      *     {@link Reporting }
    +374      *
    +375      */
    +376     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +377     public void setReporting(Reporting value) {
    +378         this.reporting = value;
    +379     }
    +380 
    +381     /**
    +382      * Gets the value of the dependencyManagement property.
    +383      *
    +384      * @return
    +385      *     possible object is
    +386      *     {@link DependencyManagement }
    +387      *
    +388      */
    +389     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +390     public DependencyManagement getDependencyManagement() {
    +391         return dependencyManagement;
    +392     }
    +393 
    +394     /**
    +395      * Sets the value of the dependencyManagement property.
    +396      *
    +397      * @param value
    +398      *     allowed object is
    +399      *     {@link DependencyManagement }
    +400      *
    +401      */
    +402     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +403     public void setDependencyManagement(DependencyManagement value) {
    +404         this.dependencyManagement = value;
    +405     }
    +406 
    +407     /**
    +408      * Gets the value of the distributionManagement property.
    +409      *
    +410      * @return
    +411      *     possible object is
    +412      *     {@link DistributionManagement }
    +413      *
    +414      */
    +415     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +416     public DistributionManagement getDistributionManagement() {
    +417         return distributionManagement;
    +418     }
    +419 
    +420     /**
    +421      * Sets the value of the distributionManagement property.
    +422      *
    +423      * @param value
    +424      *     allowed object is
    +425      *     {@link DistributionManagement }
    +426      *
    +427      */
    +428     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +429     public void setDistributionManagement(DistributionManagement value) {
    +430         this.distributionManagement = value;
    +431     }
    +432 
    +433     /**
    +434      * Gets the value of the properties property.
    +435      *
    +436      * @return
    +437      *     possible object is
    +438      *     {@link Profile.Properties }
    +439      *
    +440      */
    +441     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +442     public Profile.Properties getProperties() {
    +443         return properties;
    +444     }
    +445 
    +446     /**
    +447      * Sets the value of the properties property.
    +448      *
    +449      * @param value
    +450      *     allowed object is
    +451      *     {@link Profile.Properties }
    +452      *
    +453      */
    +454     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +455     public void setProperties(Profile.Properties value) {
    +456         this.properties = value;
    +457     }
    +458 
    +459 
    +460     /**
    +461      * <p>Java class for anonymous complex type.
    +462      *
    +463      * <p>The following schema fragment specifies the expected content contained within this class.
    +464      *
    +465      * <pre>
    +466      * &lt;complexType>
    +467      *   &lt;complexContent>
    +468      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +469      *       &lt;sequence>
    +470      *         &lt;element name="dependency" type="{http://maven.apache.org/POM/4.0.0}Dependency" maxOccurs="unbounded" minOccurs="0"/>
    +471      *       &lt;/sequence>
    +472      *     &lt;/restriction>
    +473      *   &lt;/complexContent>
    +474      * &lt;/complexType>
    +475      * </pre>
    +476      *
    +477      *
    +478      */
    +479     @XmlAccessorType(XmlAccessType.FIELD)
    +480     @XmlType(name = "", propOrder = {
    +481         "dependency"
    +482     })
    +483     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +484     public static class Dependencies {
    +485 
    +486         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +487         protected List<Dependency> dependency;
    +488 
    +489         /**
    +490          * Gets the value of the dependency property.
    +491          *
    +492          * <p>
    +493          * This accessor method returns a reference to the live list,
    +494          * not a snapshot. Therefore any modification you make to the
    +495          * returned list will be present inside the JAXB object.
    +496          * This is why there is not a <CODE>set</CODE> method for the dependency property.
    +497          *
    +498          * <p>
    +499          * For example, to add a new item, do as follows:
    +500          * <pre>
    +501          *    getDependency().add(newItem);
    +502          * </pre>
    +503          *
    +504          *
    +505          * <p>
    +506          * Objects of the following type(s) are allowed in the list
    +507          * {@link Dependency }
    +508          *
    +509          *
    +510          */
    +511         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +512         public List<Dependency> getDependency() {
    +513             if (dependency == null) {
    +514                 dependency = new ArrayList<Dependency>();
    +515             }
    +516             return this.dependency;
    +517         }
    +518 
    +519     }
    +520 
    +521 
    +522     /**
    +523      * <p>Java class for anonymous complex type.
    +524      *
    +525      * <p>The following schema fragment specifies the expected content contained within this class.
    +526      *
    +527      * <pre>
    +528      * &lt;complexType>
    +529      *   &lt;complexContent>
    +530      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +531      *       &lt;sequence>
    +532      *         &lt;element name="module" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +533      *       &lt;/sequence>
    +534      *     &lt;/restriction>
    +535      *   &lt;/complexContent>
    +536      * &lt;/complexType>
    +537      * </pre>
    +538      *
    +539      *
    +540      */
    +541     @XmlAccessorType(XmlAccessType.FIELD)
    +542     @XmlType(name = "", propOrder = {
    +543         "module"
    +544     })
    +545     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +546     public static class Modules {
    +547 
    +548         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +549         protected List<String> module;
    +550 
    +551         /**
    +552          * Gets the value of the module property.
    +553          *
    +554          * <p>
    +555          * This accessor method returns a reference to the live list,
    +556          * not a snapshot. Therefore any modification you make to the
    +557          * returned list will be present inside the JAXB object.
    +558          * This is why there is not a <CODE>set</CODE> method for the module property.
    +559          *
    +560          * <p>
    +561          * For example, to add a new item, do as follows:
    +562          * <pre>
    +563          *    getModule().add(newItem);
    +564          * </pre>
    +565          *
    +566          *
    +567          * <p>
    +568          * Objects of the following type(s) are allowed in the list
    +569          * {@link String }
    +570          *
    +571          *
    +572          */
    +573         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +574         public List<String> getModule() {
    +575             if (module == null) {
    +576                 module = new ArrayList<String>();
    +577             }
    +578             return this.module;
    +579         }
    +580 
    +581     }
    +582 
    +583 
    +584     /**
    +585      * <p>Java class for anonymous complex type.
    +586      *
    +587      * <p>The following schema fragment specifies the expected content contained within this class.
    +588      *
    +589      * <pre>
    +590      * &lt;complexType>
    +591      *   &lt;complexContent>
    +592      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +593      *       &lt;sequence>
    +594      *         &lt;element name="pluginRepository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +595      *       &lt;/sequence>
    +596      *     &lt;/restriction>
    +597      *   &lt;/complexContent>
    +598      * &lt;/complexType>
    +599      * </pre>
    +600      *
    +601      *
    +602      */
    +603     @XmlAccessorType(XmlAccessType.FIELD)
    +604     @XmlType(name = "", propOrder = {
    +605         "pluginRepository"
    +606     })
    +607     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +608     public static class PluginRepositories {
    +609 
    +610         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +611         protected List<Repository> pluginRepository;
    +612 
    +613         /**
    +614          * Gets the value of the pluginRepository property.
    +615          *
    +616          * <p>
    +617          * This accessor method returns a reference to the live list,
    +618          * not a snapshot. Therefore any modification you make to the
    +619          * returned list will be present inside the JAXB object.
    +620          * This is why there is not a <CODE>set</CODE> method for the pluginRepository property.
    +621          *
    +622          * <p>
    +623          * For example, to add a new item, do as follows:
    +624          * <pre>
    +625          *    getPluginRepository().add(newItem);
    +626          * </pre>
    +627          *
    +628          *
    +629          * <p>
    +630          * Objects of the following type(s) are allowed in the list
    +631          * {@link Repository }
    +632          *
    +633          *
    +634          */
    +635         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +636         public List<Repository> getPluginRepository() {
    +637             if (pluginRepository == null) {
    +638                 pluginRepository = new ArrayList<Repository>();
    +639             }
    +640             return this.pluginRepository;
    +641         }
    +642 
    +643     }
    +644 
    +645 
    +646     /**
    +647      * <p>Java class for anonymous complex type.
    +648      *
    +649      * <p>The following schema fragment specifies the expected content contained within this class.
    +650      *
    +651      * <pre>
    +652      * &lt;complexType>
    +653      *   &lt;complexContent>
    +654      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +655      *       &lt;sequence>
    +656      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +657      *       &lt;/sequence>
    +658      *     &lt;/restriction>
    +659      *   &lt;/complexContent>
    +660      * &lt;/complexType>
    +661      * </pre>
    +662      *
    +663      *
    +664      */
    +665     @XmlAccessorType(XmlAccessType.FIELD)
    +666     @XmlType(name = "", propOrder = {
    +667         "any"
    +668     })
    +669     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +670     public static class Properties {
    +671 
    +672         @XmlAnyElement
    +673         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +674         protected List<Element> any;
    +675 
    +676         /**
    +677          * Gets the value of the any property.
    +678          *
    +679          * <p>
    +680          * This accessor method returns a reference to the live list,
    +681          * not a snapshot. Therefore any modification you make to the
    +682          * returned list will be present inside the JAXB object.
    +683          * This is why there is not a <CODE>set</CODE> method for the any property.
    +684          *
    +685          * <p>
    +686          * For example, to add a new item, do as follows:
    +687          * <pre>
    +688          *    getAny().add(newItem);
    +689          * </pre>
    +690          *
    +691          *
    +692          * <p>
    +693          * Objects of the following type(s) are allowed in the list
    +694          * {@link Element }
    +695          *
    +696          *
    +697          */
    +698         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +699         public List<Element> getAny() {
    +700             if (any == null) {
    +701                 any = new ArrayList<Element>();
    +702             }
    +703             return this.any;
    +704         }
    +705 
    +706     }
    +707 
    +708 
    +709     /**
    +710      * <p>Java class for anonymous complex type.
    +711      *
    +712      * <p>The following schema fragment specifies the expected content contained within this class.
    +713      *
    +714      * <pre>
    +715      * &lt;complexType>
    +716      *   &lt;complexContent>
    +717      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +718      *       &lt;sequence>
    +719      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +720      *       &lt;/sequence>
    +721      *     &lt;/restriction>
    +722      *   &lt;/complexContent>
    +723      * &lt;/complexType>
    +724      * </pre>
    +725      *
    +726      *
    +727      */
    +728     @XmlAccessorType(XmlAccessType.FIELD)
    +729     @XmlType(name = "", propOrder = {
    +730         "any"
    +731     })
    +732     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +733     public static class Reports {
    +734 
    +735         @XmlAnyElement
    +736         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +737         protected List<Element> any;
    +738 
    +739         /**
    +740          * Gets the value of the any property.
    +741          *
    +742          * <p>
    +743          * This accessor method returns a reference to the live list,
    +744          * not a snapshot. Therefore any modification you make to the
    +745          * returned list will be present inside the JAXB object.
    +746          * This is why there is not a <CODE>set</CODE> method for the any property.
    +747          *
    +748          * <p>
    +749          * For example, to add a new item, do as follows:
    +750          * <pre>
    +751          *    getAny().add(newItem);
    +752          * </pre>
    +753          *
    +754          *
    +755          * <p>
    +756          * Objects of the following type(s) are allowed in the list
    +757          * {@link Element }
    +758          *
    +759          *
    +760          */
    +761         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +762         public List<Element> getAny() {
    +763             if (any == null) {
    +764                 any = new ArrayList<Element>();
    +765             }
    +766             return this.any;
    +767         }
    +768 
    +769     }
    +770 
    +771 
    +772     /**
    +773      * <p>Java class for anonymous complex type.
    +774      *
    +775      * <p>The following schema fragment specifies the expected content contained within this class.
    +776      *
    +777      * <pre>
    +778      * &lt;complexType>
    +779      *   &lt;complexContent>
    +780      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +781      *       &lt;sequence>
    +782      *         &lt;element name="repository" type="{http://maven.apache.org/POM/4.0.0}Repository" maxOccurs="unbounded" minOccurs="0"/>
    +783      *       &lt;/sequence>
    +784      *     &lt;/restriction>
    +785      *   &lt;/complexContent>
    +786      * &lt;/complexType>
    +787      * </pre>
    +788      *
    +789      *
    +790      */
    +791     @XmlAccessorType(XmlAccessType.FIELD)
    +792     @XmlType(name = "", propOrder = {
    +793         "repository"
    +794     })
    +795     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +796     public static class Repositories {
    +797 
    +798         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +799         protected List<Repository> repository;
    +800 
    +801         /**
    +802          * Gets the value of the repository property.
    +803          *
    +804          * <p>
    +805          * This accessor method returns a reference to the live list,
    +806          * not a snapshot. Therefore any modification you make to the
    +807          * returned list will be present inside the JAXB object.
    +808          * This is why there is not a <CODE>set</CODE> method for the repository property.
    +809          *
    +810          * <p>
    +811          * For example, to add a new item, do as follows:
    +812          * <pre>
    +813          *    getRepository().add(newItem);
    +814          * </pre>
    +815          *
    +816          *
    +817          * <p>
    +818          * Objects of the following type(s) are allowed in the list
    +819          * {@link Repository }
    +820          *
    +821          *
    +822          */
    +823         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +824         public List<Repository> getRepository() {
    +825             if (repository == null) {
    +826                 repository = new ArrayList<Repository>();
    +827             }
    +828             return this.repository;
    +829         }
    +830 
    +831     }
    +832 
    +833 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html new file mode 100644 index 000000000..59068624f --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html @@ -0,0 +1,176 @@ + + + + +Relocation xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   * Describes where an artifact has moved to. If any of the values are omitted, it is assumed to be the
    +19   *         same as it was before.
    +20   *
    +21   * <p>Java class for Relocation complex type.
    +22   *
    +23   * <p>The following schema fragment specifies the expected content contained within this class.
    +24   *
    +25   * <pre>
    +26   * &lt;complexType name="Relocation">
    +27   *   &lt;complexContent>
    +28   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +29   *       &lt;all>
    +30   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="message" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *       &lt;/all>
    +35   *     &lt;/restriction>
    +36   *   &lt;/complexContent>
    +37   * &lt;/complexType>
    +38   * </pre>
    +39   *
    +40   *
    +41   */
    +42  @XmlAccessorType(XmlAccessType.FIELD)
    +43  @XmlType(name = "Relocation", propOrder = {
    +44  
    +45  })
    +46  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +47  public class Relocation {
    +48  
    +49      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50      protected String groupId;
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String artifactId;
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected String version;
    +55      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +56      protected String message;
    +57  
    +58      /**
    +59       * Gets the value of the groupId property.
    +60       *
    +61       * @return
    +62       *     possible object is
    +63       *     {@link String }
    +64       *
    +65       */
    +66      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +67      public String getGroupId() {
    +68          return groupId;
    +69      }
    +70  
    +71      /**
    +72       * Sets the value of the groupId property.
    +73       *
    +74       * @param value
    +75       *     allowed object is
    +76       *     {@link String }
    +77       *
    +78       */
    +79      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +80      public void setGroupId(String value) {
    +81          this.groupId = value;
    +82      }
    +83  
    +84      /**
    +85       * Gets the value of the artifactId property.
    +86       *
    +87       * @return
    +88       *     possible object is
    +89       *     {@link String }
    +90       *
    +91       */
    +92      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +93      public String getArtifactId() {
    +94          return artifactId;
    +95      }
    +96  
    +97      /**
    +98       * Sets the value of the artifactId property.
    +99       *
    +100      * @param value
    +101      *     allowed object is
    +102      *     {@link String }
    +103      *
    +104      */
    +105     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +106     public void setArtifactId(String value) {
    +107         this.artifactId = value;
    +108     }
    +109 
    +110     /**
    +111      * Gets the value of the version property.
    +112      *
    +113      * @return
    +114      *     possible object is
    +115      *     {@link String }
    +116      *
    +117      */
    +118     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +119     public String getVersion() {
    +120         return version;
    +121     }
    +122 
    +123     /**
    +124      * Sets the value of the version property.
    +125      *
    +126      * @param value
    +127      *     allowed object is
    +128      *     {@link String }
    +129      *
    +130      */
    +131     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +132     public void setVersion(String value) {
    +133         this.version = value;
    +134     }
    +135 
    +136     /**
    +137      * Gets the value of the message property.
    +138      *
    +139      * @return
    +140      *     possible object is
    +141      *     {@link String }
    +142      *
    +143      */
    +144     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +145     public String getMessage() {
    +146         return message;
    +147     }
    +148 
    +149     /**
    +150      * Sets the value of the message property.
    +151      *
    +152      * @param value
    +153      *     allowed object is
    +154      *     {@link String }
    +155      *
    +156      */
    +157     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +158     public void setMessage(String value) {
    +159         this.message = value;
    +160     }
    +161 
    +162 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html new file mode 100644 index 000000000..53b8c0ace --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html @@ -0,0 +1,384 @@ + + + + +ReportPlugin xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlElement;
    +18  import javax.xml.bind.annotation.XmlType;
    +19  import org.w3c.dom.Element;
    +20  
    +21  
    +22  /**
    +23   *  4.0.0
    +24   *
    +25   * <p>Java class for ReportPlugin complex type.
    +26   *
    +27   * <p>The following schema fragment specifies the expected content contained within this class.
    +28   *
    +29   * <pre>
    +30   * &lt;complexType name="ReportPlugin">
    +31   *   &lt;complexContent>
    +32   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +33   *       &lt;all>
    +34   *         &lt;element name="groupId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="artifactId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="version" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *         &lt;element name="configuration" minOccurs="0">
    +39   *           &lt;complexType>
    +40   *             &lt;complexContent>
    +41   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +42   *                 &lt;sequence>
    +43   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +44   *                 &lt;/sequence>
    +45   *               &lt;/restriction>
    +46   *             &lt;/complexContent>
    +47   *           &lt;/complexType>
    +48   *         &lt;/element>
    +49   *         &lt;element name="reportSets" minOccurs="0">
    +50   *           &lt;complexType>
    +51   *             &lt;complexContent>
    +52   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +53   *                 &lt;sequence>
    +54   *                   &lt;element name="reportSet" type="{http://maven.apache.org/POM/4.0.0}ReportSet" maxOccurs="unbounded" minOccurs="0"/>
    +55   *                 &lt;/sequence>
    +56   *               &lt;/restriction>
    +57   *             &lt;/complexContent>
    +58   *           &lt;/complexType>
    +59   *         &lt;/element>
    +60   *       &lt;/all>
    +61   *     &lt;/restriction>
    +62   *   &lt;/complexContent>
    +63   * &lt;/complexType>
    +64   * </pre>
    +65   *
    +66   *
    +67   */
    +68  @XmlAccessorType(XmlAccessType.FIELD)
    +69  @XmlType(name = "ReportPlugin", propOrder = {
    +70  
    +71  })
    +72  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +73  public class ReportPlugin {
    +74  
    +75      @XmlElement(defaultValue = "org.apache.maven.plugins")
    +76      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +77      protected String groupId;
    +78      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +79      protected String artifactId;
    +80      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +81      protected String version;
    +82      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +83      protected String inherited;
    +84      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +85      protected ReportPlugin.Configuration configuration;
    +86      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +87      protected ReportPlugin.ReportSets reportSets;
    +88  
    +89      /**
    +90       * Gets the value of the groupId property.
    +91       *
    +92       * @return
    +93       *     possible object is
    +94       *     {@link String }
    +95       *
    +96       */
    +97      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +98      public String getGroupId() {
    +99          return groupId;
    +100     }
    +101 
    +102     /**
    +103      * Sets the value of the groupId property.
    +104      *
    +105      * @param value
    +106      *     allowed object is
    +107      *     {@link String }
    +108      *
    +109      */
    +110     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +111     public void setGroupId(String value) {
    +112         this.groupId = value;
    +113     }
    +114 
    +115     /**
    +116      * Gets the value of the artifactId property.
    +117      *
    +118      * @return
    +119      *     possible object is
    +120      *     {@link String }
    +121      *
    +122      */
    +123     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +124     public String getArtifactId() {
    +125         return artifactId;
    +126     }
    +127 
    +128     /**
    +129      * Sets the value of the artifactId property.
    +130      *
    +131      * @param value
    +132      *     allowed object is
    +133      *     {@link String }
    +134      *
    +135      */
    +136     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +137     public void setArtifactId(String value) {
    +138         this.artifactId = value;
    +139     }
    +140 
    +141     /**
    +142      * Gets the value of the version property.
    +143      *
    +144      * @return
    +145      *     possible object is
    +146      *     {@link String }
    +147      *
    +148      */
    +149     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +150     public String getVersion() {
    +151         return version;
    +152     }
    +153 
    +154     /**
    +155      * Sets the value of the version property.
    +156      *
    +157      * @param value
    +158      *     allowed object is
    +159      *     {@link String }
    +160      *
    +161      */
    +162     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +163     public void setVersion(String value) {
    +164         this.version = value;
    +165     }
    +166 
    +167     /**
    +168      * Gets the value of the inherited property.
    +169      *
    +170      * @return
    +171      *     possible object is
    +172      *     {@link String }
    +173      *
    +174      */
    +175     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +176     public String getInherited() {
    +177         return inherited;
    +178     }
    +179 
    +180     /**
    +181      * Sets the value of the inherited property.
    +182      *
    +183      * @param value
    +184      *     allowed object is
    +185      *     {@link String }
    +186      *
    +187      */
    +188     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +189     public void setInherited(String value) {
    +190         this.inherited = value;
    +191     }
    +192 
    +193     /**
    +194      * Gets the value of the configuration property.
    +195      *
    +196      * @return
    +197      *     possible object is
    +198      *     {@link ReportPlugin.Configuration }
    +199      *
    +200      */
    +201     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +202     public ReportPlugin.Configuration getConfiguration() {
    +203         return configuration;
    +204     }
    +205 
    +206     /**
    +207      * Sets the value of the configuration property.
    +208      *
    +209      * @param value
    +210      *     allowed object is
    +211      *     {@link ReportPlugin.Configuration }
    +212      *
    +213      */
    +214     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +215     public void setConfiguration(ReportPlugin.Configuration value) {
    +216         this.configuration = value;
    +217     }
    +218 
    +219     /**
    +220      * Gets the value of the reportSets property.
    +221      *
    +222      * @return
    +223      *     possible object is
    +224      *     {@link ReportPlugin.ReportSets }
    +225      *
    +226      */
    +227     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +228     public ReportPlugin.ReportSets getReportSets() {
    +229         return reportSets;
    +230     }
    +231 
    +232     /**
    +233      * Sets the value of the reportSets property.
    +234      *
    +235      * @param value
    +236      *     allowed object is
    +237      *     {@link ReportPlugin.ReportSets }
    +238      *
    +239      */
    +240     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +241     public void setReportSets(ReportPlugin.ReportSets value) {
    +242         this.reportSets = value;
    +243     }
    +244 
    +245 
    +246     /**
    +247      * <p>Java class for anonymous complex type.
    +248      *
    +249      * <p>The following schema fragment specifies the expected content contained within this class.
    +250      *
    +251      * <pre>
    +252      * &lt;complexType>
    +253      *   &lt;complexContent>
    +254      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +255      *       &lt;sequence>
    +256      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +257      *       &lt;/sequence>
    +258      *     &lt;/restriction>
    +259      *   &lt;/complexContent>
    +260      * &lt;/complexType>
    +261      * </pre>
    +262      *
    +263      *
    +264      */
    +265     @XmlAccessorType(XmlAccessType.FIELD)
    +266     @XmlType(name = "", propOrder = {
    +267         "any"
    +268     })
    +269     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +270     public static class Configuration {
    +271 
    +272         @XmlAnyElement
    +273         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +274         protected List<Element> any;
    +275 
    +276         /**
    +277          * Gets the value of the any property.
    +278          *
    +279          * <p>
    +280          * This accessor method returns a reference to the live list,
    +281          * not a snapshot. Therefore any modification you make to the
    +282          * returned list will be present inside the JAXB object.
    +283          * This is why there is not a <CODE>set</CODE> method for the any property.
    +284          *
    +285          * <p>
    +286          * For example, to add a new item, do as follows:
    +287          * <pre>
    +288          *    getAny().add(newItem);
    +289          * </pre>
    +290          *
    +291          *
    +292          * <p>
    +293          * Objects of the following type(s) are allowed in the list
    +294          * {@link Element }
    +295          *
    +296          *
    +297          */
    +298         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +299         public List<Element> getAny() {
    +300             if (any == null) {
    +301                 any = new ArrayList<Element>();
    +302             }
    +303             return this.any;
    +304         }
    +305 
    +306     }
    +307 
    +308 
    +309     /**
    +310      * <p>Java class for anonymous complex type.
    +311      *
    +312      * <p>The following schema fragment specifies the expected content contained within this class.
    +313      *
    +314      * <pre>
    +315      * &lt;complexType>
    +316      *   &lt;complexContent>
    +317      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +318      *       &lt;sequence>
    +319      *         &lt;element name="reportSet" type="{http://maven.apache.org/POM/4.0.0}ReportSet" maxOccurs="unbounded" minOccurs="0"/>
    +320      *       &lt;/sequence>
    +321      *     &lt;/restriction>
    +322      *   &lt;/complexContent>
    +323      * &lt;/complexType>
    +324      * </pre>
    +325      *
    +326      *
    +327      */
    +328     @XmlAccessorType(XmlAccessType.FIELD)
    +329     @XmlType(name = "", propOrder = {
    +330         "reportSet"
    +331     })
    +332     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +333     public static class ReportSets {
    +334 
    +335         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +336         protected List<ReportSet> reportSet;
    +337 
    +338         /**
    +339          * Gets the value of the reportSet property.
    +340          *
    +341          * <p>
    +342          * This accessor method returns a reference to the live list,
    +343          * not a snapshot. Therefore any modification you make to the
    +344          * returned list will be present inside the JAXB object.
    +345          * This is why there is not a <CODE>set</CODE> method for the reportSet property.
    +346          *
    +347          * <p>
    +348          * For example, to add a new item, do as follows:
    +349          * <pre>
    +350          *    getReportSet().add(newItem);
    +351          * </pre>
    +352          *
    +353          *
    +354          * <p>
    +355          * Objects of the following type(s) are allowed in the list
    +356          * {@link ReportSet }
    +357          *
    +358          *
    +359          */
    +360         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +361         public List<ReportSet> getReportSet() {
    +362             if (reportSet == null) {
    +363                 reportSet = new ArrayList<ReportSet>();
    +364             }
    +365             return this.reportSet;
    +366         }
    +367 
    +368     }
    +369 
    +370 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html new file mode 100644 index 000000000..f0aa40d26 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html @@ -0,0 +1,326 @@ + + + + +ReportSet xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlAnyElement;
    +17  import javax.xml.bind.annotation.XmlElement;
    +18  import javax.xml.bind.annotation.XmlType;
    +19  import org.w3c.dom.Element;
    +20  
    +21  
    +22  /**
    +23   * Represents a set of reports and configuration to be used to generate them.
    +24   *
    +25   * <p>Java class for ReportSet complex type.
    +26   *
    +27   * <p>The following schema fragment specifies the expected content contained within this class.
    +28   *
    +29   * <pre>
    +30   * &lt;complexType name="ReportSet">
    +31   *   &lt;complexContent>
    +32   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +33   *       &lt;all>
    +34   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="configuration" minOccurs="0">
    +36   *           &lt;complexType>
    +37   *             &lt;complexContent>
    +38   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +39   *                 &lt;sequence>
    +40   *                   &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +41   *                 &lt;/sequence>
    +42   *               &lt;/restriction>
    +43   *             &lt;/complexContent>
    +44   *           &lt;/complexType>
    +45   *         &lt;/element>
    +46   *         &lt;element name="inherited" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +47   *         &lt;element name="reports" minOccurs="0">
    +48   *           &lt;complexType>
    +49   *             &lt;complexContent>
    +50   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +51   *                 &lt;sequence>
    +52   *                   &lt;element name="report" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +53   *                 &lt;/sequence>
    +54   *               &lt;/restriction>
    +55   *             &lt;/complexContent>
    +56   *           &lt;/complexType>
    +57   *         &lt;/element>
    +58   *       &lt;/all>
    +59   *     &lt;/restriction>
    +60   *   &lt;/complexContent>
    +61   * &lt;/complexType>
    +62   * </pre>
    +63   *
    +64   *
    +65   */
    +66  @XmlAccessorType(XmlAccessType.FIELD)
    +67  @XmlType(name = "ReportSet", propOrder = {
    +68  
    +69  })
    +70  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +71  public class ReportSet {
    +72  
    +73      @XmlElement(defaultValue = "default")
    +74      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +75      protected String id;
    +76      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +77      protected ReportSet.Configuration configuration;
    +78      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +79      protected String inherited;
    +80      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +81      protected ReportSet.Reports reports;
    +82  
    +83      /**
    +84       * Gets the value of the id property.
    +85       *
    +86       * @return
    +87       *     possible object is
    +88       *     {@link String }
    +89       *
    +90       */
    +91      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +92      public String getId() {
    +93          return id;
    +94      }
    +95  
    +96      /**
    +97       * Sets the value of the id property.
    +98       *
    +99       * @param value
    +100      *     allowed object is
    +101      *     {@link String }
    +102      *
    +103      */
    +104     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +105     public void setId(String value) {
    +106         this.id = value;
    +107     }
    +108 
    +109     /**
    +110      * Gets the value of the configuration property.
    +111      *
    +112      * @return
    +113      *     possible object is
    +114      *     {@link ReportSet.Configuration }
    +115      *
    +116      */
    +117     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +118     public ReportSet.Configuration getConfiguration() {
    +119         return configuration;
    +120     }
    +121 
    +122     /**
    +123      * Sets the value of the configuration property.
    +124      *
    +125      * @param value
    +126      *     allowed object is
    +127      *     {@link ReportSet.Configuration }
    +128      *
    +129      */
    +130     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +131     public void setConfiguration(ReportSet.Configuration value) {
    +132         this.configuration = value;
    +133     }
    +134 
    +135     /**
    +136      * Gets the value of the inherited property.
    +137      *
    +138      * @return
    +139      *     possible object is
    +140      *     {@link String }
    +141      *
    +142      */
    +143     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +144     public String getInherited() {
    +145         return inherited;
    +146     }
    +147 
    +148     /**
    +149      * Sets the value of the inherited property.
    +150      *
    +151      * @param value
    +152      *     allowed object is
    +153      *     {@link String }
    +154      *
    +155      */
    +156     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +157     public void setInherited(String value) {
    +158         this.inherited = value;
    +159     }
    +160 
    +161     /**
    +162      * Gets the value of the reports property.
    +163      *
    +164      * @return
    +165      *     possible object is
    +166      *     {@link ReportSet.Reports }
    +167      *
    +168      */
    +169     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +170     public ReportSet.Reports getReports() {
    +171         return reports;
    +172     }
    +173 
    +174     /**
    +175      * Sets the value of the reports property.
    +176      *
    +177      * @param value
    +178      *     allowed object is
    +179      *     {@link ReportSet.Reports }
    +180      *
    +181      */
    +182     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +183     public void setReports(ReportSet.Reports value) {
    +184         this.reports = value;
    +185     }
    +186 
    +187 
    +188     /**
    +189      * <p>Java class for anonymous complex type.
    +190      *
    +191      * <p>The following schema fragment specifies the expected content contained within this class.
    +192      *
    +193      * <pre>
    +194      * &lt;complexType>
    +195      *   &lt;complexContent>
    +196      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +197      *       &lt;sequence>
    +198      *         &lt;any processContents='skip' maxOccurs="unbounded" minOccurs="0"/>
    +199      *       &lt;/sequence>
    +200      *     &lt;/restriction>
    +201      *   &lt;/complexContent>
    +202      * &lt;/complexType>
    +203      * </pre>
    +204      *
    +205      *
    +206      */
    +207     @XmlAccessorType(XmlAccessType.FIELD)
    +208     @XmlType(name = "", propOrder = {
    +209         "any"
    +210     })
    +211     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +212     public static class Configuration {
    +213 
    +214         @XmlAnyElement
    +215         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +216         protected List<Element> any;
    +217 
    +218         /**
    +219          * Gets the value of the any property.
    +220          *
    +221          * <p>
    +222          * This accessor method returns a reference to the live list,
    +223          * not a snapshot. Therefore any modification you make to the
    +224          * returned list will be present inside the JAXB object.
    +225          * This is why there is not a <CODE>set</CODE> method for the any property.
    +226          *
    +227          * <p>
    +228          * For example, to add a new item, do as follows:
    +229          * <pre>
    +230          *    getAny().add(newItem);
    +231          * </pre>
    +232          *
    +233          *
    +234          * <p>
    +235          * Objects of the following type(s) are allowed in the list
    +236          * {@link Element }
    +237          *
    +238          *
    +239          */
    +240         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +241         public List<Element> getAny() {
    +242             if (any == null) {
    +243                 any = new ArrayList<Element>();
    +244             }
    +245             return this.any;
    +246         }
    +247 
    +248     }
    +249 
    +250 
    +251     /**
    +252      * <p>Java class for anonymous complex type.
    +253      *
    +254      * <p>The following schema fragment specifies the expected content contained within this class.
    +255      *
    +256      * <pre>
    +257      * &lt;complexType>
    +258      *   &lt;complexContent>
    +259      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +260      *       &lt;sequence>
    +261      *         &lt;element name="report" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +262      *       &lt;/sequence>
    +263      *     &lt;/restriction>
    +264      *   &lt;/complexContent>
    +265      * &lt;/complexType>
    +266      * </pre>
    +267      *
    +268      *
    +269      */
    +270     @XmlAccessorType(XmlAccessType.FIELD)
    +271     @XmlType(name = "", propOrder = {
    +272         "report"
    +273     })
    +274     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +275     public static class Reports {
    +276 
    +277         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +278         protected List<String> report;
    +279 
    +280         /**
    +281          * Gets the value of the report property.
    +282          *
    +283          * <p>
    +284          * This accessor method returns a reference to the live list,
    +285          * not a snapshot. Therefore any modification you make to the
    +286          * returned list will be present inside the JAXB object.
    +287          * This is why there is not a <CODE>set</CODE> method for the report property.
    +288          *
    +289          * <p>
    +290          * For example, to add a new item, do as follows:
    +291          * <pre>
    +292          *    getReport().add(newItem);
    +293          * </pre>
    +294          *
    +295          *
    +296          * <p>
    +297          * Objects of the following type(s) are allowed in the list
    +298          * {@link String }
    +299          *
    +300          *
    +301          */
    +302         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +303         public List<String> getReport() {
    +304             if (report == null) {
    +305                 report = new ArrayList<String>();
    +306             }
    +307             return this.report;
    +308         }
    +309 
    +310     }
    +311 
    +312 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html new file mode 100644 index 000000000..83dd9b985 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html @@ -0,0 +1,222 @@ + + + + +Reporting xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlElement;
    +17  import javax.xml.bind.annotation.XmlType;
    +18  
    +19  
    +20  /**
    +21   * Section for management of reports and their configuration.
    +22   *
    +23   * <p>Java class for Reporting complex type.
    +24   *
    +25   * <p>The following schema fragment specifies the expected content contained within this class.
    +26   *
    +27   * <pre>
    +28   * &lt;complexType name="Reporting">
    +29   *   &lt;complexContent>
    +30   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +31   *       &lt;all>
    +32   *         &lt;element name="excludeDefaults" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +33   *         &lt;element name="outputDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *         &lt;element name="plugins" minOccurs="0">
    +35   *           &lt;complexType>
    +36   *             &lt;complexContent>
    +37   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +38   *                 &lt;sequence>
    +39   *                   &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}ReportPlugin" maxOccurs="unbounded" minOccurs="0"/>
    +40   *                 &lt;/sequence>
    +41   *               &lt;/restriction>
    +42   *             &lt;/complexContent>
    +43   *           &lt;/complexType>
    +44   *         &lt;/element>
    +45   *       &lt;/all>
    +46   *     &lt;/restriction>
    +47   *   &lt;/complexContent>
    +48   * &lt;/complexType>
    +49   * </pre>
    +50   *
    +51   *
    +52   */
    +53  @XmlAccessorType(XmlAccessType.FIELD)
    +54  @XmlType(name = "Reporting", propOrder = {
    +55  
    +56  })
    +57  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +58  public class Reporting {
    +59  
    +60      @XmlElement(defaultValue = "false")
    +61      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +62      protected Boolean excludeDefaults;
    +63      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +64      protected String outputDirectory;
    +65      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +66      protected Reporting.Plugins plugins;
    +67  
    +68      /**
    +69       * Gets the value of the excludeDefaults property.
    +70       *
    +71       * @return
    +72       *     possible object is
    +73       *     {@link Boolean }
    +74       *
    +75       */
    +76      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +77      public Boolean isExcludeDefaults() {
    +78          return excludeDefaults;
    +79      }
    +80  
    +81      /**
    +82       * Sets the value of the excludeDefaults property.
    +83       *
    +84       * @param value
    +85       *     allowed object is
    +86       *     {@link Boolean }
    +87       *
    +88       */
    +89      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +90      public void setExcludeDefaults(Boolean value) {
    +91          this.excludeDefaults = value;
    +92      }
    +93  
    +94      /**
    +95       * Gets the value of the outputDirectory property.
    +96       *
    +97       * @return
    +98       *     possible object is
    +99       *     {@link String }
    +100      *
    +101      */
    +102     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +103     public String getOutputDirectory() {
    +104         return outputDirectory;
    +105     }
    +106 
    +107     /**
    +108      * Sets the value of the outputDirectory property.
    +109      *
    +110      * @param value
    +111      *     allowed object is
    +112      *     {@link String }
    +113      *
    +114      */
    +115     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +116     public void setOutputDirectory(String value) {
    +117         this.outputDirectory = value;
    +118     }
    +119 
    +120     /**
    +121      * Gets the value of the plugins property.
    +122      *
    +123      * @return
    +124      *     possible object is
    +125      *     {@link Reporting.Plugins }
    +126      *
    +127      */
    +128     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +129     public Reporting.Plugins getPlugins() {
    +130         return plugins;
    +131     }
    +132 
    +133     /**
    +134      * Sets the value of the plugins property.
    +135      *
    +136      * @param value
    +137      *     allowed object is
    +138      *     {@link Reporting.Plugins }
    +139      *
    +140      */
    +141     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +142     public void setPlugins(Reporting.Plugins value) {
    +143         this.plugins = value;
    +144     }
    +145 
    +146 
    +147     /**
    +148      * <p>Java class for anonymous complex type.
    +149      *
    +150      * <p>The following schema fragment specifies the expected content contained within this class.
    +151      *
    +152      * <pre>
    +153      * &lt;complexType>
    +154      *   &lt;complexContent>
    +155      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +156      *       &lt;sequence>
    +157      *         &lt;element name="plugin" type="{http://maven.apache.org/POM/4.0.0}ReportPlugin" maxOccurs="unbounded" minOccurs="0"/>
    +158      *       &lt;/sequence>
    +159      *     &lt;/restriction>
    +160      *   &lt;/complexContent>
    +161      * &lt;/complexType>
    +162      * </pre>
    +163      *
    +164      *
    +165      */
    +166     @XmlAccessorType(XmlAccessType.FIELD)
    +167     @XmlType(name = "", propOrder = {
    +168         "plugin"
    +169     })
    +170     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +171     public static class Plugins {
    +172 
    +173         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +174         protected List<ReportPlugin> plugin;
    +175 
    +176         /**
    +177          * Gets the value of the plugin property.
    +178          *
    +179          * <p>
    +180          * This accessor method returns a reference to the live list,
    +181          * not a snapshot. Therefore any modification you make to the
    +182          * returned list will be present inside the JAXB object.
    +183          * This is why there is not a <CODE>set</CODE> method for the plugin property.
    +184          *
    +185          * <p>
    +186          * For example, to add a new item, do as follows:
    +187          * <pre>
    +188          *    getPlugin().add(newItem);
    +189          * </pre>
    +190          *
    +191          *
    +192          * <p>
    +193          * Objects of the following type(s) are allowed in the list
    +194          * {@link ReportPlugin }
    +195          *
    +196          *
    +197          */
    +198         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +199         public List<ReportPlugin> getPlugin() {
    +200             if (plugin == null) {
    +201                 plugin = new ArrayList<ReportPlugin>();
    +202             }
    +203             return this.plugin;
    +204         }
    +205 
    +206     }
    +207 
    +208 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html new file mode 100644 index 000000000..a72a7a3ba --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html @@ -0,0 +1,237 @@ + + + + +Repository xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   *
    +20   *         A repository contains the information needed for establishing connections with remote repository.
    +21   *
    +22   *
    +23   * <p>Java class for Repository complex type.
    +24   *
    +25   * <p>The following schema fragment specifies the expected content contained within this class.
    +26   *
    +27   * <pre>
    +28   * &lt;complexType name="Repository">
    +29   *   &lt;complexContent>
    +30   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +31   *       &lt;all>
    +32   *         &lt;element name="releases" type="{http://maven.apache.org/POM/4.0.0}RepositoryPolicy" minOccurs="0"/>
    +33   *         &lt;element name="snapshots" type="{http://maven.apache.org/POM/4.0.0}RepositoryPolicy" minOccurs="0"/>
    +34   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +35   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +37   *         &lt;element name="layout" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *       &lt;/all>
    +39   *     &lt;/restriction>
    +40   *   &lt;/complexContent>
    +41   * &lt;/complexType>
    +42   * </pre>
    +43   *
    +44   *
    +45   */
    +46  @XmlAccessorType(XmlAccessType.FIELD)
    +47  @XmlType(name = "Repository", propOrder = {
    +48  
    +49  })
    +50  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +51  public class Repository {
    +52  
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected RepositoryPolicy releases;
    +55      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +56      protected RepositoryPolicy snapshots;
    +57      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +58      protected String id;
    +59      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +60      protected String name;
    +61      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +62      protected String url;
    +63      @XmlElement(defaultValue = "default")
    +64      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +65      protected String layout;
    +66  
    +67      /**
    +68       * Gets the value of the releases property.
    +69       *
    +70       * @return
    +71       *     possible object is
    +72       *     {@link RepositoryPolicy }
    +73       *
    +74       */
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      public RepositoryPolicy getReleases() {
    +77          return releases;
    +78      }
    +79  
    +80      /**
    +81       * Sets the value of the releases property.
    +82       *
    +83       * @param value
    +84       *     allowed object is
    +85       *     {@link RepositoryPolicy }
    +86       *
    +87       */
    +88      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +89      public void setReleases(RepositoryPolicy value) {
    +90          this.releases = value;
    +91      }
    +92  
    +93      /**
    +94       * Gets the value of the snapshots property.
    +95       *
    +96       * @return
    +97       *     possible object is
    +98       *     {@link RepositoryPolicy }
    +99       *
    +100      */
    +101     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +102     public RepositoryPolicy getSnapshots() {
    +103         return snapshots;
    +104     }
    +105 
    +106     /**
    +107      * Sets the value of the snapshots property.
    +108      *
    +109      * @param value
    +110      *     allowed object is
    +111      *     {@link RepositoryPolicy }
    +112      *
    +113      */
    +114     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +115     public void setSnapshots(RepositoryPolicy value) {
    +116         this.snapshots = value;
    +117     }
    +118 
    +119     /**
    +120      * Gets the value of the id property.
    +121      *
    +122      * @return
    +123      *     possible object is
    +124      *     {@link String }
    +125      *
    +126      */
    +127     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +128     public String getId() {
    +129         return id;
    +130     }
    +131 
    +132     /**
    +133      * Sets the value of the id property.
    +134      *
    +135      * @param value
    +136      *     allowed object is
    +137      *     {@link String }
    +138      *
    +139      */
    +140     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +141     public void setId(String value) {
    +142         this.id = value;
    +143     }
    +144 
    +145     /**
    +146      * Gets the value of the name property.
    +147      *
    +148      * @return
    +149      *     possible object is
    +150      *     {@link String }
    +151      *
    +152      */
    +153     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +154     public String getName() {
    +155         return name;
    +156     }
    +157 
    +158     /**
    +159      * Sets the value of the name property.
    +160      *
    +161      * @param value
    +162      *     allowed object is
    +163      *     {@link String }
    +164      *
    +165      */
    +166     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +167     public void setName(String value) {
    +168         this.name = value;
    +169     }
    +170 
    +171     /**
    +172      * Gets the value of the url property.
    +173      *
    +174      * @return
    +175      *     possible object is
    +176      *     {@link String }
    +177      *
    +178      */
    +179     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +180     public String getUrl() {
    +181         return url;
    +182     }
    +183 
    +184     /**
    +185      * Sets the value of the url property.
    +186      *
    +187      * @param value
    +188      *     allowed object is
    +189      *     {@link String }
    +190      *
    +191      */
    +192     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +193     public void setUrl(String value) {
    +194         this.url = value;
    +195     }
    +196 
    +197     /**
    +198      * Gets the value of the layout property.
    +199      *
    +200      * @return
    +201      *     possible object is
    +202      *     {@link String }
    +203      *
    +204      */
    +205     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +206     public String getLayout() {
    +207         return layout;
    +208     }
    +209 
    +210     /**
    +211      * Sets the value of the layout property.
    +212      *
    +213      * @param value
    +214      *     allowed object is
    +215      *     {@link String }
    +216      *
    +217      */
    +218     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +219     public void setLayout(String value) {
    +220         this.layout = value;
    +221     }
    +222 
    +223 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html new file mode 100644 index 000000000..35c75f552 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html @@ -0,0 +1,148 @@ + + + + +RepositoryPolicy xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   * Download policy
    +20   *
    +21   * <p>Java class for RepositoryPolicy complex type.
    +22   *
    +23   * <p>The following schema fragment specifies the expected content contained within this class.
    +24   *
    +25   * <pre>
    +26   * &lt;complexType name="RepositoryPolicy">
    +27   *   &lt;complexContent>
    +28   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +29   *       &lt;all>
    +30   *         &lt;element name="enabled" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +31   *         &lt;element name="updatePolicy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="checksumPolicy" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *       &lt;/all>
    +34   *     &lt;/restriction>
    +35   *   &lt;/complexContent>
    +36   * &lt;/complexType>
    +37   * </pre>
    +38   *
    +39   *
    +40   */
    +41  @XmlAccessorType(XmlAccessType.FIELD)
    +42  @XmlType(name = "RepositoryPolicy", propOrder = {
    +43  
    +44  })
    +45  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +46  public class RepositoryPolicy {
    +47  
    +48      @XmlElement(defaultValue = "true")
    +49      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50      protected Boolean enabled;
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String updatePolicy;
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected String checksumPolicy;
    +55  
    +56      /**
    +57       * Gets the value of the enabled property.
    +58       *
    +59       * @return
    +60       *     possible object is
    +61       *     {@link Boolean }
    +62       *
    +63       */
    +64      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +65      public Boolean isEnabled() {
    +66          return enabled;
    +67      }
    +68  
    +69      /**
    +70       * Sets the value of the enabled property.
    +71       *
    +72       * @param value
    +73       *     allowed object is
    +74       *     {@link Boolean }
    +75       *
    +76       */
    +77      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +78      public void setEnabled(Boolean value) {
    +79          this.enabled = value;
    +80      }
    +81  
    +82      /**
    +83       * Gets the value of the updatePolicy property.
    +84       *
    +85       * @return
    +86       *     possible object is
    +87       *     {@link String }
    +88       *
    +89       */
    +90      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +91      public String getUpdatePolicy() {
    +92          return updatePolicy;
    +93      }
    +94  
    +95      /**
    +96       * Sets the value of the updatePolicy property.
    +97       *
    +98       * @param value
    +99       *     allowed object is
    +100      *     {@link String }
    +101      *
    +102      */
    +103     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +104     public void setUpdatePolicy(String value) {
    +105         this.updatePolicy = value;
    +106     }
    +107 
    +108     /**
    +109      * Gets the value of the checksumPolicy property.
    +110      *
    +111      * @return
    +112      *     possible object is
    +113      *     {@link String }
    +114      *
    +115      */
    +116     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +117     public String getChecksumPolicy() {
    +118         return checksumPolicy;
    +119     }
    +120 
    +121     /**
    +122      * Sets the value of the checksumPolicy property.
    +123      *
    +124      * @param value
    +125      *     allowed object is
    +126      *     {@link String }
    +127      *
    +128      */
    +129     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +130     public void setChecksumPolicy(String value) {
    +131         this.checksumPolicy = value;
    +132     }
    +133 
    +134 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html new file mode 100644 index 000000000..a772d6065 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html @@ -0,0 +1,355 @@ + + + + +Resource xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import java.util.ArrayList;
    +12  import java.util.List;
    +13  import javax.annotation.Generated;
    +14  import javax.xml.bind.annotation.XmlAccessType;
    +15  import javax.xml.bind.annotation.XmlAccessorType;
    +16  import javax.xml.bind.annotation.XmlElement;
    +17  import javax.xml.bind.annotation.XmlType;
    +18  
    +19  
    +20  /**
    +21   *
    +22   *         This element describes all of the classpath resources associated with a project or
    +23   *         unit tests.
    +24   *
    +25   *
    +26   * <p>Java class for Resource complex type.
    +27   *
    +28   * <p>The following schema fragment specifies the expected content contained within this class.
    +29   *
    +30   * <pre>
    +31   * &lt;complexType name="Resource">
    +32   *   &lt;complexContent>
    +33   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +34   *       &lt;all>
    +35   *         &lt;element name="targetPath" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +36   *         &lt;element name="filtering" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    +37   *         &lt;element name="directory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +38   *         &lt;element name="includes" minOccurs="0">
    +39   *           &lt;complexType>
    +40   *             &lt;complexContent>
    +41   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +42   *                 &lt;sequence>
    +43   *                   &lt;element name="include" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +44   *                 &lt;/sequence>
    +45   *               &lt;/restriction>
    +46   *             &lt;/complexContent>
    +47   *           &lt;/complexType>
    +48   *         &lt;/element>
    +49   *         &lt;element name="excludes" minOccurs="0">
    +50   *           &lt;complexType>
    +51   *             &lt;complexContent>
    +52   *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +53   *                 &lt;sequence>
    +54   *                   &lt;element name="exclude" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +55   *                 &lt;/sequence>
    +56   *               &lt;/restriction>
    +57   *             &lt;/complexContent>
    +58   *           &lt;/complexType>
    +59   *         &lt;/element>
    +60   *       &lt;/all>
    +61   *     &lt;/restriction>
    +62   *   &lt;/complexContent>
    +63   * &lt;/complexType>
    +64   * </pre>
    +65   *
    +66   *
    +67   */
    +68  @XmlAccessorType(XmlAccessType.FIELD)
    +69  @XmlType(name = "Resource", propOrder = {
    +70  
    +71  })
    +72  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +73  public class Resource {
    +74  
    +75      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +76      protected String targetPath;
    +77      @XmlElement(defaultValue = "false")
    +78      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +79      protected Boolean filtering;
    +80      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +81      protected String directory;
    +82      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +83      protected Resource.Includes includes;
    +84      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +85      protected Resource.Excludes excludes;
    +86  
    +87      /**
    +88       * Gets the value of the targetPath property.
    +89       *
    +90       * @return
    +91       *     possible object is
    +92       *     {@link String }
    +93       *
    +94       */
    +95      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +96      public String getTargetPath() {
    +97          return targetPath;
    +98      }
    +99  
    +100     /**
    +101      * Sets the value of the targetPath property.
    +102      *
    +103      * @param value
    +104      *     allowed object is
    +105      *     {@link String }
    +106      *
    +107      */
    +108     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +109     public void setTargetPath(String value) {
    +110         this.targetPath = value;
    +111     }
    +112 
    +113     /**
    +114      * Gets the value of the filtering property.
    +115      *
    +116      * @return
    +117      *     possible object is
    +118      *     {@link Boolean }
    +119      *
    +120      */
    +121     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +122     public Boolean isFiltering() {
    +123         return filtering;
    +124     }
    +125 
    +126     /**
    +127      * Sets the value of the filtering property.
    +128      *
    +129      * @param value
    +130      *     allowed object is
    +131      *     {@link Boolean }
    +132      *
    +133      */
    +134     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +135     public void setFiltering(Boolean value) {
    +136         this.filtering = value;
    +137     }
    +138 
    +139     /**
    +140      * Gets the value of the directory property.
    +141      *
    +142      * @return
    +143      *     possible object is
    +144      *     {@link String }
    +145      *
    +146      */
    +147     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +148     public String getDirectory() {
    +149         return directory;
    +150     }
    +151 
    +152     /**
    +153      * Sets the value of the directory property.
    +154      *
    +155      * @param value
    +156      *     allowed object is
    +157      *     {@link String }
    +158      *
    +159      */
    +160     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +161     public void setDirectory(String value) {
    +162         this.directory = value;
    +163     }
    +164 
    +165     /**
    +166      * Gets the value of the includes property.
    +167      *
    +168      * @return
    +169      *     possible object is
    +170      *     {@link Resource.Includes }
    +171      *
    +172      */
    +173     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +174     public Resource.Includes getIncludes() {
    +175         return includes;
    +176     }
    +177 
    +178     /**
    +179      * Sets the value of the includes property.
    +180      *
    +181      * @param value
    +182      *     allowed object is
    +183      *     {@link Resource.Includes }
    +184      *
    +185      */
    +186     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +187     public void setIncludes(Resource.Includes value) {
    +188         this.includes = value;
    +189     }
    +190 
    +191     /**
    +192      * Gets the value of the excludes property.
    +193      *
    +194      * @return
    +195      *     possible object is
    +196      *     {@link Resource.Excludes }
    +197      *
    +198      */
    +199     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +200     public Resource.Excludes getExcludes() {
    +201         return excludes;
    +202     }
    +203 
    +204     /**
    +205      * Sets the value of the excludes property.
    +206      *
    +207      * @param value
    +208      *     allowed object is
    +209      *     {@link Resource.Excludes }
    +210      *
    +211      */
    +212     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +213     public void setExcludes(Resource.Excludes value) {
    +214         this.excludes = value;
    +215     }
    +216 
    +217 
    +218     /**
    +219      * <p>Java class for anonymous complex type.
    +220      *
    +221      * <p>The following schema fragment specifies the expected content contained within this class.
    +222      *
    +223      * <pre>
    +224      * &lt;complexType>
    +225      *   &lt;complexContent>
    +226      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +227      *       &lt;sequence>
    +228      *         &lt;element name="exclude" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +229      *       &lt;/sequence>
    +230      *     &lt;/restriction>
    +231      *   &lt;/complexContent>
    +232      * &lt;/complexType>
    +233      * </pre>
    +234      *
    +235      *
    +236      */
    +237     @XmlAccessorType(XmlAccessType.FIELD)
    +238     @XmlType(name = "", propOrder = {
    +239         "exclude"
    +240     })
    +241     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +242     public static class Excludes {
    +243 
    +244         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +245         protected List<String> exclude;
    +246 
    +247         /**
    +248          * Gets the value of the exclude property.
    +249          *
    +250          * <p>
    +251          * This accessor method returns a reference to the live list,
    +252          * not a snapshot. Therefore any modification you make to the
    +253          * returned list will be present inside the JAXB object.
    +254          * This is why there is not a <CODE>set</CODE> method for the exclude property.
    +255          *
    +256          * <p>
    +257          * For example, to add a new item, do as follows:
    +258          * <pre>
    +259          *    getExclude().add(newItem);
    +260          * </pre>
    +261          *
    +262          *
    +263          * <p>
    +264          * Objects of the following type(s) are allowed in the list
    +265          * {@link String }
    +266          *
    +267          *
    +268          */
    +269         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +270         public List<String> getExclude() {
    +271             if (exclude == null) {
    +272                 exclude = new ArrayList<String>();
    +273             }
    +274             return this.exclude;
    +275         }
    +276 
    +277     }
    +278 
    +279 
    +280     /**
    +281      * <p>Java class for anonymous complex type.
    +282      *
    +283      * <p>The following schema fragment specifies the expected content contained within this class.
    +284      *
    +285      * <pre>
    +286      * &lt;complexType>
    +287      *   &lt;complexContent>
    +288      *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +289      *       &lt;sequence>
    +290      *         &lt;element name="include" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +291      *       &lt;/sequence>
    +292      *     &lt;/restriction>
    +293      *   &lt;/complexContent>
    +294      * &lt;/complexType>
    +295      * </pre>
    +296      *
    +297      *
    +298      */
    +299     @XmlAccessorType(XmlAccessType.FIELD)
    +300     @XmlType(name = "", propOrder = {
    +301         "include"
    +302     })
    +303     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +304     public static class Includes {
    +305 
    +306         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +307         protected List<String> include;
    +308 
    +309         /**
    +310          * Gets the value of the include property.
    +311          *
    +312          * <p>
    +313          * This accessor method returns a reference to the live list,
    +314          * not a snapshot. Therefore any modification you make to the
    +315          * returned list will be present inside the JAXB object.
    +316          * This is why there is not a <CODE>set</CODE> method for the include property.
    +317          *
    +318          * <p>
    +319          * For example, to add a new item, do as follows:
    +320          * <pre>
    +321          *    getInclude().add(newItem);
    +322          * </pre>
    +323          *
    +324          *
    +325          * <p>
    +326          * Objects of the following type(s) are allowed in the list
    +327          * {@link String }
    +328          *
    +329          *
    +330          */
    +331         @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +332         public List<String> getInclude() {
    +333             if (include == null) {
    +334                 include = new ArrayList<String>();
    +335             }
    +336             return this.include;
    +337         }
    +338 
    +339     }
    +340 
    +341 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html new file mode 100644 index 000000000..769062ac2 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html @@ -0,0 +1,177 @@ + + + + +Scm xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlElement;
    +15  import javax.xml.bind.annotation.XmlType;
    +16  
    +17  
    +18  /**
    +19   *  4.0.0
    +20   *
    +21   * <p>Java class for Scm complex type.
    +22   *
    +23   * <p>The following schema fragment specifies the expected content contained within this class.
    +24   *
    +25   * <pre>
    +26   * &lt;complexType name="Scm">
    +27   *   &lt;complexContent>
    +28   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +29   *       &lt;all>
    +30   *         &lt;element name="connection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +31   *         &lt;element name="developerConnection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="tag" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *       &lt;/all>
    +35   *     &lt;/restriction>
    +36   *   &lt;/complexContent>
    +37   * &lt;/complexType>
    +38   * </pre>
    +39   *
    +40   *
    +41   */
    +42  @XmlAccessorType(XmlAccessType.FIELD)
    +43  @XmlType(name = "Scm", propOrder = {
    +44  
    +45  })
    +46  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +47  public class Scm {
    +48  
    +49      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50      protected String connection;
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String developerConnection;
    +53      @XmlElement(defaultValue = "HEAD")
    +54      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +55      protected String tag;
    +56      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +57      protected String url;
    +58  
    +59      /**
    +60       * Gets the value of the connection property.
    +61       *
    +62       * @return
    +63       *     possible object is
    +64       *     {@link String }
    +65       *
    +66       */
    +67      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +68      public String getConnection() {
    +69          return connection;
    +70      }
    +71  
    +72      /**
    +73       * Sets the value of the connection property.
    +74       *
    +75       * @param value
    +76       *     allowed object is
    +77       *     {@link String }
    +78       *
    +79       */
    +80      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +81      public void setConnection(String value) {
    +82          this.connection = value;
    +83      }
    +84  
    +85      /**
    +86       * Gets the value of the developerConnection property.
    +87       *
    +88       * @return
    +89       *     possible object is
    +90       *     {@link String }
    +91       *
    +92       */
    +93      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +94      public String getDeveloperConnection() {
    +95          return developerConnection;
    +96      }
    +97  
    +98      /**
    +99       * Sets the value of the developerConnection property.
    +100      *
    +101      * @param value
    +102      *     allowed object is
    +103      *     {@link String }
    +104      *
    +105      */
    +106     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +107     public void setDeveloperConnection(String value) {
    +108         this.developerConnection = value;
    +109     }
    +110 
    +111     /**
    +112      * Gets the value of the tag property.
    +113      *
    +114      * @return
    +115      *     possible object is
    +116      *     {@link String }
    +117      *
    +118      */
    +119     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +120     public String getTag() {
    +121         return tag;
    +122     }
    +123 
    +124     /**
    +125      * Sets the value of the tag property.
    +126      *
    +127      * @param value
    +128      *     allowed object is
    +129      *     {@link String }
    +130      *
    +131      */
    +132     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +133     public void setTag(String value) {
    +134         this.tag = value;
    +135     }
    +136 
    +137     /**
    +138      * Gets the value of the url property.
    +139      *
    +140      * @return
    +141      *     possible object is
    +142      *     {@link String }
    +143      *
    +144      */
    +145     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +146     public String getUrl() {
    +147         return url;
    +148     }
    +149 
    +150     /**
    +151      * Sets the value of the url property.
    +152      *
    +153      * @param value
    +154      *     allowed object is
    +155      *     {@link String }
    +156      *
    +157      */
    +158     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +159     public void setUrl(String value) {
    +160         this.url = value;
    +161     }
    +162 
    +163 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html new file mode 100644 index 000000000..1a149a092 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html @@ -0,0 +1,148 @@ + + + + +Site xref + + + +
    +
    +1   //
    +2   // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6
    +3   // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +4   // Any modifications to this file will be lost upon recompilation of the source schema.
    +5   // Generated on: 2012.11.09 at 12:33:57 PM EST
    +6   //
    +7   
    +8   
    +9   package org.owasp.dependencycheck.jaxb.pom.generated;
    +10  
    +11  import javax.annotation.Generated;
    +12  import javax.xml.bind.annotation.XmlAccessType;
    +13  import javax.xml.bind.annotation.XmlAccessorType;
    +14  import javax.xml.bind.annotation.XmlType;
    +15  
    +16  
    +17  /**
    +18   *
    +19   *          Contains the information needed for deploying websites.
    +20   *
    +21   *
    +22   * <p>Java class for Site complex type.
    +23   *
    +24   * <p>The following schema fragment specifies the expected content contained within this class.
    +25   *
    +26   * <pre>
    +27   * &lt;complexType name="Site">
    +28   *   &lt;complexContent>
    +29   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +30   *       &lt;all>
    +31   *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +32   *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +33   *         &lt;element name="url" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    +34   *       &lt;/all>
    +35   *     &lt;/restriction>
    +36   *   &lt;/complexContent>
    +37   * &lt;/complexType>
    +38   * </pre>
    +39   *
    +40   *
    +41   */
    +42  @XmlAccessorType(XmlAccessType.FIELD)
    +43  @XmlType(name = "Site", propOrder = {
    +44  
    +45  })
    +46  @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +47  public class Site {
    +48  
    +49      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +50      protected String id;
    +51      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +52      protected String name;
    +53      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +54      protected String url;
    +55  
    +56      /**
    +57       * Gets the value of the id property.
    +58       *
    +59       * @return
    +60       *     possible object is
    +61       *     {@link String }
    +62       *
    +63       */
    +64      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +65      public String getId() {
    +66          return id;
    +67      }
    +68  
    +69      /**
    +70       * Sets the value of the id property.
    +71       *
    +72       * @param value
    +73       *     allowed object is
    +74       *     {@link String }
    +75       *
    +76       */
    +77      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +78      public void setId(String value) {
    +79          this.id = value;
    +80      }
    +81  
    +82      /**
    +83       * Gets the value of the name property.
    +84       *
    +85       * @return
    +86       *     possible object is
    +87       *     {@link String }
    +88       *
    +89       */
    +90      @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +91      public String getName() {
    +92          return name;
    +93      }
    +94  
    +95      /**
    +96       * Sets the value of the name property.
    +97       *
    +98       * @param value
    +99       *     allowed object is
    +100      *     {@link String }
    +101      *
    +102      */
    +103     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +104     public void setName(String value) {
    +105         this.name = value;
    +106     }
    +107 
    +108     /**
    +109      * Gets the value of the url property.
    +110      *
    +111      * @return
    +112      *     possible object is
    +113      *     {@link String }
    +114      *
    +115      */
    +116     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +117     public String getUrl() {
    +118         return url;
    +119     }
    +120 
    +121     /**
    +122      * Sets the value of the url property.
    +123      *
    +124      * @param value
    +125      *     allowed object is
    +126      *     {@link String }
    +127      *
    +128      */
    +129     @Generated(value = "com.sun.tools.internal.xjc.Driver", date = "2012-11-09T12:33:57-05:00", comments = "JAXB RI vJAXB 2.1.10 in JDK 6")
    +130     public void setUrl(String value) {
    +131         this.url = value;
    +132     }
    +133 
    +134 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html new file mode 100644 index 000000000..578ec56f8 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html @@ -0,0 +1,210 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.jaxb.pom.generated + + + + +

    + org.owasp.dependencycheck.jaxb.pom.generated +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html new file mode 100644 index 000000000..aa283ebdd --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html @@ -0,0 +1,377 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.jaxb.pom.generated + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.jaxb.pom.generated

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + Activation +
    + ActivationFile +
    + ActivationOS +
    + ActivationProperty +
    + Build +
    + BuildBase +
    + CiManagement +
    + Configuration +
    + Contributor +
    + Contributors +
    + Dependencies +
    + Dependency +
    + DependencyManagement +
    + DeploymentRepository +
    + Developer +
    + Developers +
    + DistributionManagement +
    + Excludes +
    + Exclusion +
    + Exclusions +
    + Executions +
    + Extension +
    + Extensions +
    + Filters +
    + Goals +
    + Includes +
    + IssueManagement +
    + License +
    + Licenses +
    + MailingList +
    + MailingLists +
    + Model +
    + Modules +
    + Notifier +
    + Notifiers +
    + ObjectFactory +
    + Organization +
    + OtherArchives +
    + Parent +
    + Plugin +
    + PluginExecution +
    + PluginManagement +
    + PluginRepositories +
    + Plugins +
    + Prerequisites +
    + Profile +
    + Profiles +
    + Properties +
    + Relocation +
    + ReportPlugin +
    + ReportSet +
    + ReportSets +
    + Reporting +
    + Reports +
    + Repositories +
    + Repository +
    + RepositoryPolicy +
    + Resource +
    + Resources +
    + Roles +
    + Scm +
    + Site +
    + TestResources +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html new file mode 100644 index 000000000..d1a43a76a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.jaxb.pom + + + + +

    + org.owasp.dependencycheck.jaxb.pom +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html new file mode 100644 index 000000000..612b7ed19 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.jaxb.pom + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.jaxb.pom

    + + + + + + + + + + + + +
    Class Summary
    + MavenNamespaceFilter +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..4197ade42 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,24 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck + + + + +

    + org.owasp.dependencycheck +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..0fd7c08cb --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck

    + + + + + + + + + + + + +
    Class Summary
    + Engine +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html new file mode 100644 index 000000000..0ef48afb5 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html @@ -0,0 +1,266 @@ + + + + +ReportGenerator xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.reporting;
    +20  
    +21  import java.io.FileInputStream;
    +22  import java.io.File;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.FileOutputStream;
    +25  import java.io.IOException;
    +26  import java.io.InputStream;
    +27  import java.io.InputStreamReader;
    +28  import java.io.OutputStream;
    +29  import java.io.OutputStreamWriter;
    +30  import java.util.List;
    +31  import java.util.logging.Level;
    +32  import java.util.logging.Logger;
    +33  import org.apache.velocity.app.VelocityEngine;
    +34  import org.apache.velocity.context.Context;
    +35  import org.apache.velocity.runtime.RuntimeConstants;
    +36  import org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader;
    +37  import org.apache.velocity.tools.ToolManager;
    +38  import org.apache.velocity.tools.config.EasyFactoryConfiguration;
    +39  import org.owasp.dependencycheck.analyzer.Analyzer;
    +40  import org.owasp.dependencycheck.dependency.Dependency;
    +41  
    +42  /**
    +43   * The ReportGenerator is used to, as the name implies, generate reports.
    +44   * Internally the generator uses the Velocity Templating Engine. The
    +45   * ReportGenerator exposes a list of Dependencies to the template when
    +46   * generating the report.
    +47   *
    +48   * @author Jeremy Long (jeremy.long@owasp.org)
    +49   */
    +50  public class ReportGenerator {
    +51  
    +52      /**
    +53       * An enumeration of the report formats.
    +54       */
    +55      public enum Format {
    +56  
    +57          /**
    +58           * Generate all reports.
    +59           */
    +60          ALL,
    +61          /**
    +62           * Generate XML report.
    +63           */
    +64          XML,
    +65          /**
    +66           * Generate HTML report.
    +67           */
    +68          HTML,
    +69          /**
    +70           * Generate HTML Vulnerability report.
    +71           */
    +72          VULN
    +73      }
    +74      /**
    +75       * The Velocity Engine.
    +76       */
    +77      private final VelocityEngine engine;
    +78      /**
    +79       * The Velocity Engine Context.
    +80       */
    +81      private final Context context;
    +82  
    +83      /**
    +84       * Constructs a new ReportGenerator.
    +85       *
    +86       * @param applicationName the application name being analyzed
    +87       * @param dependencies the list of dependencies
    +88       * @param analyzers the list of analyzers used.
    +89       */
    +90      public ReportGenerator(String applicationName, List<Dependency> dependencies, List<Analyzer> analyzers) {
    +91          engine = createVelocityEngine();
    +92          context = createContext();
    +93  
    +94          engine.init();
    +95  
    +96          context.put("applicationName", applicationName);
    +97          context.put("dependencies", dependencies);
    +98          context.put("analyzers", analyzers);
    +99      }
    +100 
    +101     /**
    +102      * Creates a new Velocity Engine.
    +103      *
    +104      * @return a velocity engine.
    +105      */
    +106     private VelocityEngine createVelocityEngine() {
    +107         final VelocityEngine ve = new VelocityEngine();
    +108         ve.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, VelocityLoggerRedirect.class.getName());
    +109         ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
    +110         ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
    +111         return ve;
    +112     }
    +113 
    +114     /**
    +115      * Creates a new Velocity Context initialized with escape and date tools.
    +116      *
    +117      * @return a Velocity Context.
    +118      */
    +119     @edu.umd.cs.findbugs.annotations.SuppressWarnings(value = "RV_RETURN_VALUE_IGNORED_INFERRED",
    +120             justification = "No plan to fix this style issue")
    +121     private Context createContext() {
    +122         final ToolManager manager = new ToolManager();
    +123         final Context c = manager.createContext();
    +124         final EasyFactoryConfiguration config = new EasyFactoryConfiguration();
    +125         config.addDefaultTools();
    +126         config.toolbox("application").tool("esc", "org.apache.velocity.tools.generic.EscapeTool").tool("org.apache.velocity.tools.generic.DateTool");
    +127         manager.configure(config);
    +128         return c;
    +129     }
    +130 
    +131     /**
    +132      * Generates the Dependency Reports for the identified dependencies.
    +133      *
    +134      * @param outputDir the path where the reports should be written
    +135      * @param format the format the report should be written in
    +136      * @throws IOException is thrown when the template file does not exist
    +137      * @throws Exception is thrown if there is an error writing out the reports.
    +138      */
    +139     public void generateReports(String outputDir, Format format) throws IOException, Exception {
    +140         if (format == Format.XML || format == Format.ALL) {
    +141             generateReport("XmlReport", outputDir + File.separator + "DependencyCheck-Report.xml");
    +142         }
    +143         if (format == Format.HTML || format == Format.ALL) {
    +144             generateReport("HtmlReport", outputDir + File.separator + "DependencyCheck-Report.html");
    +145         }
    +146         if (format == Format.VULN || format == Format.ALL) {
    +147             generateReport("VulnerabilityReport", outputDir + File.separator + "DependencyCheck-Vulnerability.html");
    +148         }
    +149     }
    +150 
    +151     /**
    +152      * Generates the Dependency Reports for the identified dependencies.
    +153      *
    +154      * @param outputDir the path where the reports should be written
    +155      * @param outputFormat the format the report should be written in (XML,
    +156      * HTML, ALL)
    +157      * @throws IOException is thrown when the template file does not exist
    +158      * @throws Exception is thrown if there is an error writing out the reports.
    +159      */
    +160     public void generateReports(String outputDir, String outputFormat) throws IOException, Exception {
    +161         final String format = outputFormat.toUpperCase();
    +162         if (format.matches("^(XML|HTML|VULN|ALL)$")) {
    +163             if ("XML".equalsIgnoreCase(format)) {
    +164                 generateReports(outputDir, Format.XML);
    +165             }
    +166             if ("HTML".equalsIgnoreCase(format)) {
    +167                 generateReports(outputDir, Format.HTML);
    +168             }
    +169             if ("VULN".equalsIgnoreCase(format)) {
    +170                 generateReports(outputDir, Format.VULN);
    +171             }
    +172             if ("ALL".equalsIgnoreCase(format)) {
    +173                 generateReports(outputDir, Format.ALL);
    +174             }
    +175         }
    +176     }
    +177 
    +178     /**
    +179      * Generates a report from a given Velocity Template. The template name
    +180      * provided can be the name of a template contained in the jar file, such as
    +181      * 'XmlReport' or 'HtmlReport', or the template name can be the path to a
    +182      * template file.
    +183      *
    +184      * @param templateName the name of the template to load.
    +185      * @param outFileName the filename and path to write the report to.
    +186      * @throws IOException is thrown when the template file does not exist.
    +187      * @throws Exception is thrown when an exception occurs.
    +188      */
    +189     protected void generateReport(String templateName, String outFileName) throws IOException, Exception {
    +190         InputStream input = null;
    +191         String templatePath = null;
    +192         final File f = new File(templateName);
    +193         if (f.exists() && f.isFile()) {
    +194             try {
    +195                 templatePath = templateName;
    +196                 input = new FileInputStream(f);
    +197             } catch (FileNotFoundException ex) {
    +198                 final String msg = "Unable to generate the report, the report template file could not be found.";
    +199                 Logger.getLogger(ReportGenerator.class.getName()).log(Level.SEVERE, msg);
    +200                 Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINE, null, ex);
    +201             }
    +202         } else {
    +203             templatePath = "templates/" + templateName + ".vsl";
    +204             input = this.getClass().getClassLoader().getResourceAsStream(templatePath);
    +205         }
    +206         if (input == null) {
    +207             throw new IOException("Template file doesn't exist");
    +208         }
    +209 
    +210         final InputStreamReader reader = new InputStreamReader(input, "UTF-8");
    +211         OutputStreamWriter writer = null;
    +212         OutputStream outputStream = null;
    +213 
    +214         try {
    +215             final File outDir = new File(outFileName).getParentFile();
    +216             if (!outDir.exists()) {
    +217                 final boolean created = outDir.mkdirs();
    +218                 if (!created) {
    +219                     throw new Exception("Unable to create directory '" + outDir.getAbsolutePath() + "'.");
    +220                 }
    +221             }
    +222 
    +223             outputStream = new FileOutputStream(outFileName);
    +224             writer = new OutputStreamWriter(outputStream, "UTF-8");
    +225 
    +226             if (!engine.evaluate(context, writer, templatePath, reader)) {
    +227                 throw new Exception("Failed to convert the template into html.");
    +228             }
    +229             writer.flush();
    +230         } finally {
    +231             if (writer != null) {
    +232                 try {
    +233                     writer.close();
    +234                 } catch (Exception ex) {
    +235                     Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
    +236                 }
    +237             }
    +238             if (outputStream != null) {
    +239                 try {
    +240                     outputStream.close();
    +241                 } catch (Exception ex) {
    +242                     Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
    +243                 }
    +244             }
    +245             try {
    +246                 reader.close();
    +247             } catch (Exception ex) {
    +248                 Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
    +249             }
    +250         }
    +251     }
    +252 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html new file mode 100644 index 000000000..c8b09ded2 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html @@ -0,0 +1,122 @@ + + + + +VelocityLoggerRedirect xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Steve Springett. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.reporting;
    +20  
    +21  import org.apache.velocity.app.Velocity;
    +22  import org.apache.velocity.runtime.RuntimeServices;
    +23  import org.apache.velocity.runtime.log.LogChute;
    +24  
    +25  import java.util.logging.Level;
    +26  import java.util.logging.Logger;
    +27  
    +28  /**
    +29   * <p>DependencyCheck uses {@link java.util.logging.Logger} as a logging
    +30   * framework, and Apache Velocity uses a custom logging implementation that
    +31   * outputs to a file named velocity.log by default. This class is an
    +32   * implementation of a custom Velocity logger that redirects all velocity
    +33   * logging to the Java Logger class.
    +34   * </p><p>
    +35   * This class was written to address permission issues when using
    +36   * Dependency-Check in a server environment (such as the Jenkins plugin). In
    +37   * some circumstances, Velocity would attempt to create velocity.log in an
    +38   * un-writable directory.</p>
    +39   *
    +40   * @author Steve Springett (steve.springett@owasp.org)
    +41   */
    +42  public class VelocityLoggerRedirect implements LogChute {
    +43  
    +44      /**
    +45       * This will be invoked once by the LogManager.
    +46       *
    +47       * @param rsvc the RuntimeServices
    +48       */
    +49      public void init(RuntimeServices rsvc) {
    +50          // do nothing
    +51      }
    +52  
    +53      /**
    +54       * Given a Velocity log level and message, this method will call the
    +55       * appropriate Logger level and log the specified values.
    +56       *
    +57       * @param level the logging level
    +58       * @param message the message to be logged
    +59       */
    +60      public void log(int level, String message) {
    +61          Logger.getLogger(Velocity.class.getName()).log(getLevel(level), message);
    +62      }
    +63  
    +64      /**
    +65       * Given a Velocity log level, message and Throwable, this method will call
    +66       * the appropriate Logger level and log the specified values.
    +67       *
    +68       * @param level the logging level
    +69       * @param message the message to be logged
    +70       * @param t a throwable to log
    +71       */
    +72      public void log(int level, String message, Throwable t) {
    +73          Logger.getLogger(Velocity.class.getName()).log(getLevel(level), message, t);
    +74      }
    +75  
    +76      /**
    +77       * Will always return true. The property file will decide what level to log.
    +78       *
    +79       * @param level the logging level
    +80       * @return true
    +81       */
    +82      public boolean isLevelEnabled(int level) {
    +83          return true;
    +84      }
    +85  
    +86      /**
    +87       * Maps Velocity log levels to {@link Logger} values.
    +88       *
    +89       * @param velocityLevel the logging level
    +90       * @return the logging level
    +91       */
    +92      private Level getLevel(int velocityLevel) {
    +93          switch (velocityLevel) {
    +94              case TRACE_ID:
    +95                  return Level.ALL;
    +96              case DEBUG_ID:
    +97                  return Level.FINE;
    +98              case INFO_ID:
    +99                  return Level.INFO;
    +100             case WARN_ID:
    +101                 return Level.WARNING;
    +102             case ERROR_ID:
    +103                 return Level.SEVERE;
    +104             default:
    +105                 return Level.INFO;
    +106         }
    +107     }
    +108 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html new file mode 100644 index 000000000..9c692ef5c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html @@ -0,0 +1,30 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.reporting + + + + +

    + org.owasp.dependencycheck.reporting +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html new file mode 100644 index 000000000..33b41c9b2 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html @@ -0,0 +1,77 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.reporting + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.reporting

    + + + + + + + + + + + + + + + + + + +
    Class Summary
    + Format +
    + ReportGenerator +
    + VelocityLoggerRedirect +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html new file mode 100644 index 000000000..84b9294ab --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html @@ -0,0 +1,200 @@ + + + + +PropertyType xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.regex.Pattern;
    +22  
    +23  /**
    +24   * A simple PropertyType used to represent a string value that could be used as
    +25   * a regular expression or could be case insensitive. The equals method has been
    +26   * over-ridden so that the object will correctly compare to strings.
    +27   *
    +28   * @author Jeremy Long (jeremy.long@owasp.org)
    +29   */
    +30  public class PropertyType {
    +31  
    +32      //<editor-fold defaultstate="collapsed" desc="properties">
    +33      /**
    +34       * The value.
    +35       */
    +36      private String value;
    +37  
    +38      /**
    +39       * Gets the value of the value property.
    +40       *
    +41       * @return the value of the value property
    +42       *
    +43       */
    +44      public String getValue() {
    +45          return value;
    +46      }
    +47  
    +48      /**
    +49       * Sets the value of the value property.
    +50       *
    +51       * @param value the value of the value property
    +52       */
    +53      public void setValue(String value) {
    +54          this.value = value;
    +55      }
    +56      /**
    +57       * Whether or not the expression is a regex.
    +58       */
    +59      private boolean regex = false;
    +60  
    +61      /**
    +62       * Returns whether or not the value is a regex.
    +63       *
    +64       * @return true if the value is a regex, otherwise false
    +65       *
    +66       */
    +67      public boolean isRegex() {
    +68          return regex;
    +69      }
    +70  
    +71      /**
    +72       * Sets whether the value property is a regex.
    +73       *
    +74       * @param value true if the value is a regex, otherwise false
    +75       *
    +76       */
    +77      public void setRegex(boolean value) {
    +78          this.regex = value;
    +79      }
    +80      /**
    +81       * Indicates case sensitivity.
    +82       */
    +83      private boolean caseSensitive = false;
    +84  
    +85      /**
    +86       * Gets the value of the caseSensitive property.
    +87       *
    +88       * @return true if the value is case sensitive
    +89       *
    +90       */
    +91      public boolean isCaseSensitive() {
    +92          return caseSensitive;
    +93      }
    +94  
    +95      /**
    +96       * Sets the value of the caseSensitive property.
    +97       *
    +98       * @param value whether the value is case sensitive
    +99       *
    +100      */
    +101     public void setCaseSensitive(boolean value) {
    +102         this.caseSensitive = value;
    +103     }
    +104     //</editor-fold>
    +105 
    +106     /**
    +107      * Uses the object's properties to determine if the supplied string matches
    +108      * the value of this property.
    +109      *
    +110      * @param text the String to validate
    +111      * @return whether the text supplied is matched by the value of the property
    +112      */
    +113     public boolean matches(String text) {
    +114         if (text == null) {
    +115             return false;
    +116         }
    +117         if (this.regex) {
    +118             Pattern rx;
    +119             if (this.caseSensitive) {
    +120                 rx = Pattern.compile(this.value);
    +121             } else {
    +122                 rx = Pattern.compile(this.value, Pattern.CASE_INSENSITIVE);
    +123             }
    +124             return rx.matcher(text).matches();
    +125         } else {
    +126             if (this.caseSensitive) {
    +127                 return value.equals(text);
    +128             } else {
    +129                 return value.equalsIgnoreCase(text);
    +130             }
    +131         }
    +132     }
    +133 
    +134     //<editor-fold defaultstate="collapsed" desc="standard implmentations of hashCode, equals, and toString">
    +135     /**
    +136      * Default implementation of hashCode.
    +137      *
    +138      * @return the hash code
    +139      */
    +140     @Override
    +141     public int hashCode() {
    +142         int hash = 3;
    +143         hash = 59 * hash + (this.value != null ? this.value.hashCode() : 0);
    +144         hash = 59 * hash + (this.regex ? 1 : 0);
    +145         hash = 59 * hash + (this.caseSensitive ? 1 : 0);
    +146         return hash;
    +147     }
    +148 
    +149     /**
    +150      * Default implementation of equals.
    +151      *
    +152      * @param obj the object to compare
    +153      * @return whether the objects are equivalent
    +154      */
    +155     @Override
    +156     public boolean equals(Object obj) {
    +157         if (obj == null) {
    +158             return false;
    +159         }
    +160         if (getClass() != obj.getClass()) {
    +161             return false;
    +162         }
    +163         final PropertyType other = (PropertyType) obj;
    +164         if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
    +165             return false;
    +166         }
    +167         if (this.regex != other.regex) {
    +168             return false;
    +169         }
    +170         if (this.caseSensitive != other.caseSensitive) {
    +171             return false;
    +172         }
    +173         return true;
    +174     }
    +175 
    +176     /**
    +177      * Default implementation of toString().
    +178      *
    +179      * @return the string representation of the object
    +180      */
    +181     @Override
    +182     public String toString() {
    +183         return "PropertyType{" + "value=" + value + ", regex=" + regex + ", caseSensitive=" + caseSensitive + '}';
    +184     }
    +185     //</editor-fold>
    +186 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html new file mode 100644 index 000000000..dec575632 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html @@ -0,0 +1,107 @@ + + + + +SuppressionErrorHandler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.logging.Level;
    +22  import java.util.logging.Logger;
    +23  import org.xml.sax.ErrorHandler;
    +24  import org.xml.sax.SAXException;
    +25  import org.xml.sax.SAXParseException;
    +26  
    +27  /**
    +28   * An XML parsing error handler.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SuppressionErrorHandler implements ErrorHandler {
    +33  
    +34      /**
    +35       * Builds a prettier exception message.
    +36       *
    +37       * @param ex the SAXParseException
    +38       * @return an easier to read exception message
    +39       */
    +40      private String getPrettyParseExceptionInfo(SAXParseException ex) {
    +41  
    +42          final StringBuffer sb = new StringBuffer();
    +43  
    +44          if (ex.getSystemId() != null) {
    +45              sb.append("systemId=").append(ex.getSystemId()).append(", ");
    +46          }
    +47          if (ex.getPublicId() != null) {
    +48              sb.append("publicId=").append(ex.getPublicId()).append(", ");
    +49          }
    +50          if (ex.getLineNumber() > 0) {
    +51              sb.append("Line=").append(ex.getLineNumber());
    +52          }
    +53          if (ex.getColumnNumber() > 0) {
    +54              sb.append(", Column=").append(ex.getColumnNumber());
    +55          }
    +56          sb.append(": ").append(ex.getMessage());
    +57  
    +58          return sb.toString();
    +59      }
    +60  
    +61      /**
    +62       * Logs warnings.
    +63       *
    +64       * @param ex the warning to log
    +65       * @throws SAXException is never thrown
    +66       */
    +67      @Override
    +68      public void warning(SAXParseException ex) throws SAXException {
    +69          Logger.getLogger(SuppressionErrorHandler.class.getName()).log(Level.FINE, null, ex);
    +70      }
    +71  
    +72      /**
    +73       * Handles errors.
    +74       *
    +75       * @param ex the error to handle
    +76       * @throws SAXException is always thrown
    +77       */
    +78      @Override
    +79      public void error(SAXParseException ex) throws SAXException {
    +80          throw new SAXException(getPrettyParseExceptionInfo(ex));
    +81      }
    +82  
    +83      /**
    +84       * Handles fatal exceptions.
    +85       *
    +86       * @param ex a fatal exception
    +87       * @throws SAXException is always
    +88       */
    +89      @Override
    +90      public void fatalError(SAXParseException ex) throws SAXException {
    +91          throw new SAXException(getPrettyParseExceptionInfo(ex));
    +92      }
    +93  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html new file mode 100644 index 000000000..3809b17c0 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html @@ -0,0 +1,188 @@ + + + + +SuppressionHandler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.List;
    +23  import org.xml.sax.Attributes;
    +24  import org.xml.sax.SAXException;
    +25  import org.xml.sax.helpers.DefaultHandler;
    +26  
    +27  /**
    +28   * A handler to load suppression rules.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SuppressionHandler extends DefaultHandler {
    +33  
    +34      /**
    +35       * The suppress node, indicates the start of a new rule.
    +36       */
    +37      public static final String SUPPRESS = "suppress";
    +38      /**
    +39       * The file path element name.
    +40       */
    +41      public static final String FILE_PATH = "filePath";
    +42      /**
    +43       * The sha1 hash element name.
    +44       */
    +45      public static final String SHA1 = "sha1";
    +46      /**
    +47       * The CVE element name.
    +48       */
    +49      public static final String CVE = "cve";
    +50      /**
    +51       * The CPE element name.
    +52       */
    +53      public static final String CPE = "cpe";
    +54      /**
    +55       * The CWE element name.
    +56       */
    +57      public static final String CWE = "cwe";
    +58      /**
    +59       * The cvssBelow element name.
    +60       */
    +61      public static final String CVSS_BELOW = "cvssBelow";
    +62      /**
    +63       * A list of suppression rules.
    +64       */
    +65      private List<SuppressionRule> supressionRules = new ArrayList<SuppressionRule>();
    +66  
    +67      /**
    +68       * Get the value of supressionRules.
    +69       *
    +70       * @return the value of supressionRules
    +71       */
    +72      public List<SuppressionRule> getSupressionRules() {
    +73          return supressionRules;
    +74      }
    +75      /**
    +76       * The current rule being read.
    +77       */
    +78      private SuppressionRule rule;
    +79      /**
    +80       * The attributes of the node being read.
    +81       */
    +82      private Attributes currentAttributes;
    +83      /**
    +84       * The current node text being extracted from the element.
    +85       */
    +86      private StringBuffer currentText;
    +87  
    +88      /**
    +89       * Handles the start element event.
    +90       *
    +91       * @param uri the uri of the element being processed
    +92       * @param localName the local name of the element being processed
    +93       * @param qName the qName of the element being processed
    +94       * @param attributes the attributes of the element being processed
    +95       * @throws SAXException thrown if there is an exception processing
    +96       */
    +97      @Override
    +98      public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    +99          currentAttributes = null;
    +100         currentText = new StringBuffer();
    +101 
    +102         if (SUPPRESS.equals(qName)) {
    +103             rule = new SuppressionRule();
    +104         } else if (FILE_PATH.equals(qName)) {
    +105             currentAttributes = attributes;
    +106         }
    +107     }
    +108 
    +109     /**
    +110      * Handles the end element event.
    +111      *
    +112      * @param uri the uri of the element
    +113      * @param localName the local name of the element
    +114      * @param qName the qName of the element
    +115      * @throws SAXException thrown if there is an exception processing
    +116      */
    +117     @Override
    +118     public void endElement(String uri, String localName, String qName) throws SAXException {
    +119         if (SUPPRESS.equals(qName)) {
    +120             supressionRules.add(rule);
    +121             rule = null;
    +122         } else if (FILE_PATH.equals(qName)) {
    +123             final PropertyType pt = processPropertyType();
    +124             rule.setFilePath(pt);
    +125         } else if (SHA1.equals(qName)) {
    +126             rule.setSha1(currentText.toString());
    +127         } else if (CPE.equals(qName)) {
    +128             final PropertyType pt = processPropertyType();
    +129             rule.addCpe(pt);
    +130         } else if (CWE.equals(qName)) {
    +131             rule.addCwe(currentText.toString());
    +132         } else if (CVE.equals(qName)) {
    +133             rule.addCve(currentText.toString());
    +134         } else if (CVSS_BELOW.equals(qName)) {
    +135             final float cvss = Float.parseFloat(currentText.toString());
    +136             rule.addCvssBelow(cvss);
    +137         }
    +138     }
    +139 
    +140     /**
    +141      * Collects the body text of the node being processed.
    +142      *
    +143      * @param ch the char array of text
    +144      * @param start the start position to copy text from in the char array
    +145      * @param length the number of characters to copy from the char array
    +146      * @throws SAXException thrown if there is a parsing exception
    +147      */
    +148     @Override
    +149     public void characters(char[] ch, int start, int length) throws SAXException {
    +150         currentText.append(ch, start, length);
    +151     }
    +152 
    +153     /**
    +154      * Processes field members that have been collected during the characters
    +155      * and startElement method to construct a PropertyType object.
    +156      *
    +157      * @return a PropertyType object
    +158      */
    +159     private PropertyType processPropertyType() {
    +160         final PropertyType pt = new PropertyType();
    +161         pt.setValue(currentText.toString());
    +162         if (currentAttributes != null && currentAttributes.getLength() > 0) {
    +163             final String regex = currentAttributes.getValue("regex");
    +164             if (regex != null) {
    +165                 pt.setRegex(Boolean.parseBoolean(regex));
    +166             }
    +167             final String caseSensitive = currentAttributes.getValue("caseSensitive");
    +168             if (regex != null) {
    +169                 pt.setCaseSensitive(Boolean.parseBoolean(caseSensitive));
    +170             }
    +171         }
    +172         return pt;
    +173     }
    +174 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html new file mode 100644 index 000000000..15f1b8601 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html @@ -0,0 +1,83 @@ + + + + +SuppressionParseException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when parsing a suppression rule file fails.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class SuppressionParseException extends IOException {
    +29  
    +30      /**
    +31       * The serial version UID.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new SuppressionParseException.
    +37       */
    +38      public SuppressionParseException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new SuppressionParseException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public SuppressionParseException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new SuppressionParseException.
    +53       *
    +54       * @param ex the cause of the download failure.
    +55       */
    +56      public SuppressionParseException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new SuppressionParseException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the download failure.
    +65       */
    +66      public SuppressionParseException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html new file mode 100644 index 000000000..b2688825a --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html @@ -0,0 +1,121 @@ + + + + +SuppressionParser xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileInputStream;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.IOException;
    +25  import java.io.InputStream;
    +26  import java.io.InputStreamReader;
    +27  import java.io.Reader;
    +28  import java.util.List;
    +29  import java.util.logging.Level;
    +30  import java.util.logging.Logger;
    +31  import javax.xml.parsers.ParserConfigurationException;
    +32  import javax.xml.parsers.SAXParser;
    +33  import javax.xml.parsers.SAXParserFactory;
    +34  import org.xml.sax.InputSource;
    +35  import org.xml.sax.SAXException;
    +36  import org.xml.sax.XMLReader;
    +37  
    +38  /**
    +39   * A simple validating parser for XML Suppression Rules.
    +40   *
    +41   * @author Jeremy Long (jeremy.long@owasp.org)
    +42   */
    +43  public class SuppressionParser {
    +44  
    +45      /**
    +46       * JAXP Schema Language. Source:
    +47       * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
    +48       */
    +49      public static final String JAXP_SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage";
    +50      /**
    +51       * W3C XML Schema. Source:
    +52       * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
    +53       */
    +54      public static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema";
    +55      /**
    +56       * JAXP Schema Source. Source:
    +57       * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
    +58       */
    +59      public static final String JAXP_SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource";
    +60  
    +61      /**
    +62       * Parses the given xml file and returns a list of the suppression rules
    +63       * contained.
    +64       *
    +65       * @param file an xml file containing suppression rules
    +66       * @return a list of suppression rules
    +67       * @throws SuppressionParseException thrown if the xml file cannot be parsed
    +68       */
    +69      public List<SuppressionRule> parseSuppressionRules(File file) throws SuppressionParseException {
    +70          try {
    +71              final InputStream schemaStream = this.getClass().getClassLoader().getResourceAsStream("schema/suppression.xsd");
    +72              final SuppressionHandler handler = new SuppressionHandler();
    +73  
    +74              final SAXParserFactory factory = SAXParserFactory.newInstance();
    +75              factory.setNamespaceAware(true);
    +76              factory.setValidating(true);
    +77              final SAXParser saxParser = factory.newSAXParser();
    +78              saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_LANGUAGE, SuppressionParser.W3C_XML_SCHEMA);
    +79              saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_SOURCE, new InputSource(schemaStream));
    +80              final XMLReader xmlReader = saxParser.getXMLReader();
    +81              xmlReader.setErrorHandler(new SuppressionErrorHandler());
    +82              xmlReader.setContentHandler(handler);
    +83  
    +84              final InputStream inputStream = new FileInputStream(file);
    +85              final Reader reader = new InputStreamReader(inputStream, "UTF-8");
    +86              final InputSource in = new InputSource(reader);
    +87              //in.setEncoding("UTF-8");
    +88  
    +89              xmlReader.parse(in);
    +90  
    +91  
    +92              return handler.getSupressionRules();
    +93          } catch (ParserConfigurationException ex) {
    +94              Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +95              throw new SuppressionParseException(ex);
    +96          } catch (SAXException ex) {
    +97              Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +98              throw new SuppressionParseException(ex);
    +99          } catch (FileNotFoundException ex) {
    +100             Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +101             throw new SuppressionParseException(ex);
    +102         } catch (IOException ex) {
    +103             Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +104             throw new SuppressionParseException(ex);
    +105         }
    +106     }
    +107 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html new file mode 100644 index 000000000..b62924ea3 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html @@ -0,0 +1,379 @@ + + + + +SuppressionRule xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.Iterator;
    +23  import java.util.List;
    +24  import org.owasp.dependencycheck.dependency.Dependency;
    +25  import org.owasp.dependencycheck.dependency.Identifier;
    +26  import org.owasp.dependencycheck.dependency.Vulnerability;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SuppressionRule {
    +33  
    +34      /**
    +35       * The file path for the suppression.
    +36       */
    +37      private PropertyType filePath;
    +38  
    +39      /**
    +40       * Get the value of filePath.
    +41       *
    +42       * @return the value of filePath
    +43       */
    +44      public PropertyType getFilePath() {
    +45          return filePath;
    +46      }
    +47  
    +48      /**
    +49       * Set the value of filePath.
    +50       *
    +51       * @param filePath new value of filePath
    +52       */
    +53      public void setFilePath(PropertyType filePath) {
    +54          this.filePath = filePath;
    +55      }
    +56      /**
    +57       * The sha1 hash.
    +58       */
    +59      private String sha1;
    +60  
    +61      /**
    +62       * Get the value of sha1.
    +63       *
    +64       * @return the value of sha1
    +65       */
    +66      public String getSha1() {
    +67          return sha1;
    +68      }
    +69  
    +70      /**
    +71       * Set the value of sha1.
    +72       *
    +73       * @param sha1 new value of sha1
    +74       */
    +75      public void setSha1(String sha1) {
    +76          this.sha1 = sha1;
    +77      }
    +78      /**
    +79       * A list of CPEs to suppression
    +80       */
    +81      private List<PropertyType> cpe = new ArrayList<PropertyType>();
    +82  
    +83      /**
    +84       * Get the value of cpe.
    +85       *
    +86       * @return the value of cpe
    +87       */
    +88      public List<PropertyType> getCpe() {
    +89          return cpe;
    +90      }
    +91  
    +92      /**
    +93       * Set the value of cpe.
    +94       *
    +95       * @param cpe new value of cpe
    +96       */
    +97      public void setCpe(List<PropertyType> cpe) {
    +98          this.cpe = cpe;
    +99      }
    +100 
    +101     /**
    +102      * Adds the cpe to the cpe list.
    +103      *
    +104      * @param cpe the cpe to add
    +105      */
    +106     public void addCpe(PropertyType cpe) {
    +107         this.cpe.add(cpe);
    +108     }
    +109 
    +110     /**
    +111      * Returns whether or not this suppression rule as CPE entries.
    +112      *
    +113      * @return whether or not this suppression rule as CPE entries
    +114      */
    +115     public boolean hasCpe() {
    +116         return cpe.size() > 0;
    +117     }
    +118     /**
    +119      * The list of cvssBelow scores.
    +120      */
    +121     private List<Float> cvssBelow = new ArrayList<Float>();
    +122 
    +123     /**
    +124      * Get the value of cvssBelow.
    +125      *
    +126      * @return the value of cvssBelow
    +127      */
    +128     public List<Float> getCvssBelow() {
    +129         return cvssBelow;
    +130     }
    +131 
    +132     /**
    +133      * Set the value of cvssBelow.
    +134      *
    +135      * @param cvssBelow new value of cvssBelow
    +136      */
    +137     public void setCvssBelow(List<Float> cvssBelow) {
    +138         this.cvssBelow = cvssBelow;
    +139     }
    +140 
    +141     /**
    +142      * Adds the cvss to the cvssBelow list.
    +143      *
    +144      * @param cvss the cvss to add
    +145      */
    +146     public void addCvssBelow(Float cvss) {
    +147         this.cvssBelow.add(cvss);
    +148     }
    +149 
    +150     /**
    +151      * Returns whether or not this suppression rule has cvss suppressions.
    +152      *
    +153      * @return whether or not this suppression rule has cvss suppressions
    +154      */
    +155     public boolean hasCvssBelow() {
    +156         return cvssBelow.size() > 0;
    +157     }
    +158     /**
    +159      * The list of cwe entries to suppress.
    +160      */
    +161     private List<String> cwe = new ArrayList<String>();
    +162 
    +163     /**
    +164      * Get the value of cwe.
    +165      *
    +166      * @return the value of cwe
    +167      */
    +168     public List<String> getCwe() {
    +169         return cwe;
    +170     }
    +171 
    +172     /**
    +173      * Set the value of cwe.
    +174      *
    +175      * @param cwe new value of cwe
    +176      */
    +177     public void setCwe(List<String> cwe) {
    +178         this.cwe = cwe;
    +179     }
    +180 
    +181     /**
    +182      * Adds the cwe to the cwe list.
    +183      *
    +184      * @param cwe the cwe to add
    +185      */
    +186     public void addCwe(String cwe) {
    +187         this.cwe.add(cwe);
    +188     }
    +189 
    +190     /**
    +191      * Returns whether this suppression rule has CWE entries.
    +192      *
    +193      * @return whether this suppression rule has CWE entries
    +194      */
    +195     public boolean hasCwe() {
    +196         return cwe.size() > 0;
    +197     }
    +198     /**
    +199      * The list of cve entries to suppress.
    +200      */
    +201     private List<String> cve = new ArrayList<String>();
    +202 
    +203     /**
    +204      * Get the value of cve.
    +205      *
    +206      * @return the value of cve
    +207      */
    +208     public List<String> getCve() {
    +209         return cve;
    +210     }
    +211 
    +212     /**
    +213      * Set the value of cve.
    +214      *
    +215      * @param cve new value of cve
    +216      */
    +217     public void setCve(List<String> cve) {
    +218         this.cve = cve;
    +219     }
    +220 
    +221     /**
    +222      * Adds the cve to the cve list.
    +223      *
    +224      * @param cve the cve to add
    +225      */
    +226     public void addCve(String cve) {
    +227         this.cve.add(cve);
    +228     }
    +229 
    +230     /**
    +231      * Returns whether this suppression rule has CVE entries.
    +232      *
    +233      * @return whether this suppression rule has CVE entries
    +234      */
    +235     public boolean hasCve() {
    +236         return cve.size() > 0;
    +237     }
    +238 
    +239     /**
    +240      * Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS
    +241      * scores should be suppressed. If any should be, they are removed from the
    +242      * dependency.
    +243      *
    +244      * @param dependency a project dependency to analyze
    +245      */
    +246     public void process(Dependency dependency) {
    +247         if (filePath != null && !filePath.matches(dependency.getFilePath())) {
    +248             return;
    +249         }
    +250         if (sha1 != null && !sha1.equalsIgnoreCase(dependency.getSha1sum())) {
    +251             return;
    +252         }
    +253         if (this.hasCpe()) {
    +254             final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
    +255             while (itr.hasNext()) {
    +256                 final Identifier i = itr.next();
    +257                 for (PropertyType c : this.cpe) {
    +258                     if (cpeMatches(c, i)) {
    +259                         itr.remove();
    +260                         break;
    +261                     }
    +262                 }
    +263             }
    +264         }
    +265         if (hasCve() || hasCwe() || hasCvssBelow()) {
    +266             final Iterator<Vulnerability> itr = dependency.getVulnerabilities().iterator();
    +267             boolean remove = false;
    +268             while (!remove && itr.hasNext()) {
    +269                 final Vulnerability v = itr.next();
    +270                 for (String entry : this.cve) {
    +271                     if (entry.equalsIgnoreCase(v.getName())) {
    +272                         remove = true;
    +273                         break;
    +274                     }
    +275                 }
    +276                 if (!remove) {
    +277                     for (String entry : this.cwe) {
    +278                         if (v.getCwe() != null) {
    +279                             final String toMatch = String.format("CWE-%s ", entry);
    +280                             final String toTest = v.getCwe().substring(0, toMatch.length()).toUpperCase();
    +281                             if (toTest.equals(toMatch)) {
    +282                                 remove = true;
    +283                                 break;
    +284                             }
    +285                         }
    +286                     }
    +287                 }
    +288                 if (!remove) {
    +289                     for (float cvss : this.cvssBelow) {
    +290                         if (v.getCvssScore() < cvss) {
    +291                             remove = true;
    +292                             break;
    +293                         }
    +294                     }
    +295                 }
    +296                 if (remove) {
    +297                     itr.remove();
    +298                 }
    +299             }
    +300         }
    +301     }
    +302 
    +303     /**
    +304      * Identifies if the cpe specified by the cpe suppression rule does not
    +305      * specify a version.
    +306      *
    +307      * @param c a suppression rule identifier
    +308      * @return true if the property type does not specify a version; otherwise
    +309      * false
    +310      */
    +311     boolean cpeHasNoVersion(PropertyType c) {
    +312         if (c.isRegex()) {
    +313             return false;
    +314         } // cpe:/a:jboss:jboss:1.0.0:
    +315         if (countCharacter(c.getValue(), ':') == 3) {
    +316             return true;
    +317         }
    +318         return false;
    +319     }
    +320 
    +321     /**
    +322      * Counts the number of occurrences of the character found within the
    +323      * string.
    +324      *
    +325      * @param str the string to check
    +326      * @param c the character to count
    +327      * @return the number of times the character is found in the string
    +328      */
    +329     int countCharacter(String str, char c) {
    +330         int count = 0;
    +331         int pos = str.indexOf(c) + 1;
    +332         while (pos > 0) {
    +333             count += 1;
    +334             pos = str.indexOf(c, pos) + 1;
    +335         }
    +336         return count;
    +337     }
    +338 
    +339     /**
    +340      * Determines if the cpeEntry specified as a PropertyType matches the given
    +341      * Identifier.
    +342      *
    +343      * @param cpeEntry a suppression rule entry
    +344      * @param identifier a CPE identifier to check
    +345      * @return true if the entry matches; otherwise false
    +346      */
    +347     boolean cpeMatches(PropertyType cpeEntry, Identifier identifier) {
    +348         if (cpeEntry.matches(identifier.getValue())) {
    +349             return true;
    +350         } else if (cpeHasNoVersion(cpeEntry)) {
    +351             if (cpeEntry.isCaseSensitive()) {
    +352                 if (identifier.getValue().startsWith(cpeEntry.getValue())) {
    +353                     return true;
    +354                 }
    +355             } else {
    +356                 final String id = identifier.getValue().toLowerCase();
    +357                 final String check = cpeEntry.getValue().toLowerCase();
    +358                 if (id.startsWith(check)) {
    +359                     return true;
    +360                 }
    +361             }
    +362         }
    +363         return false;
    +364     }
    +365 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html new file mode 100644 index 000000000..82691d909 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html @@ -0,0 +1,39 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + + +

    + org.owasp.dependencycheck.suppression +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html new file mode 100644 index 000000000..9e55d509b --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html @@ -0,0 +1,92 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.suppression

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + PropertyType +
    + SuppressionErrorHandler +
    + SuppressionHandler +
    + SuppressionParseException +
    + SuppressionParser +
    + SuppressionRule +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html new file mode 100644 index 000000000..9f59ca6bb --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html @@ -0,0 +1,121 @@ + + + + +Checksum xref + + + +
    +
    +1   package org.owasp.dependencycheck.utils;
    +2   
    +3   import java.io.File;
    +4   import java.io.FileInputStream;
    +5   import java.io.IOException;
    +6   import java.io.InputStream;
    +7   import java.security.MessageDigest;
    +8   import java.security.NoSuchAlgorithmException;
    +9   import java.util.logging.Level;
    +10  import java.util.logging.Logger;
    +11  
    +12  /**
    +13   * Includes methods to generate the MD5 and SHA1 checksum.
    +14   *
    +15   * This code was copied from Real's How To. It has been slightly modified.
    +16   *
    +17   * Written and compiled by Réal Gagnon ©1998-2012
    +18   *
    +19   * @author Real's How To: http://www.rgagnon.com/javadetails/java-0416.html
    +20   *
    +21   */
    +22  public class Checksum {
    +23  
    +24      /**
    +25       * <p>Creates the cryptographic checksum of a given file using the specified
    +26       * algorithm.</p> <p>This algorithm was copied and heavily modified from
    +27       * Real's How To: http://www.rgagnon.com/javadetails/java-0416.html</p>
    +28       *
    +29       * @param algorithm the algorithm to use to calculate the checksum
    +30       * @param file the file to calculate the checksum for
    +31       * @return the checksum
    +32       * @throws IOException when the file does not exist
    +33       * @throws NoSuchAlgorithmException when an algorithm is specified that does
    +34       * not exist
    +35       */
    +36      public static byte[] getChecksum(String algorithm, File file) throws NoSuchAlgorithmException, IOException {
    +37          InputStream fis = null;
    +38          byte[] buffer = new byte[1024];
    +39          MessageDigest complete = MessageDigest.getInstance(algorithm);
    +40          int numRead;
    +41          try {
    +42              fis = new FileInputStream(file);
    +43              do {
    +44                  numRead = fis.read(buffer);
    +45                  if (numRead > 0) {
    +46                      complete.update(buffer, 0, numRead);
    +47                  }
    +48              } while (numRead != -1);
    +49          } finally {
    +50              if (fis != null) {
    +51                  try {
    +52                      fis.close();
    +53                  } catch (IOException ex) {
    +54                      Logger.getLogger(Checksum.class.getName()).log(Level.FINEST, "Error closing file '" + file.getName() + "'.", ex);
    +55                  }
    +56              }
    +57          }
    +58          return complete.digest();
    +59      }
    +60  
    +61      /**
    +62       * Calculates the MD5 checksum of a specified file.
    +63       *
    +64       * @param file the file to generate the MD5 checksum
    +65       * @return the hex representation of the MD5 hash
    +66       * @throws IOException when the file passed in does not exist
    +67       * @throws NoSuchAlgorithmException when the MD5 algorithm is not available
    +68       */
    +69      public static String getMD5Checksum(File file) throws IOException, NoSuchAlgorithmException {
    +70          byte[] b = getChecksum("MD5", file);
    +71          return getHex(b);
    +72      }
    +73  
    +74      /**
    +75       * Calculates the SHA1 checksum of a specified file.
    +76       *
    +77       * @param file the file to generate the MD5 checksum
    +78       * @return the hex representation of the SHA1 hash
    +79       * @throws IOException when the file passed in does not exist
    +80       * @throws NoSuchAlgorithmException when the SHA1 algorithm is not available
    +81       */
    +82      public static String getSHA1Checksum(File file) throws IOException, NoSuchAlgorithmException {
    +83          byte[] b = getChecksum("SHA1", file);
    +84          return getHex(b);
    +85      }
    +86      private static final String HEXES = "0123456789ABCDEF";
    +87  
    +88      /**
    +89       * <p>Converts a byte array into a hex string.</p>
    +90       *
    +91       * <p>This method was copied from <a
    +92       * href="http://www.rgagnon.com/javadetails/java-0596.html">http://www.rgagnon.com/javadetails/java-0596.html</a></p>
    +93       *
    +94       * @param raw a byte array
    +95       * @return the hex representation of the byte array
    +96       */
    +97      public static String getHex(byte[] raw) {
    +98          if (raw == null) {
    +99              return null;
    +100         }
    +101         final StringBuilder hex = new StringBuilder(2 * raw.length);
    +102         for (final byte b : raw) {
    +103             hex.append(HEXES.charAt((b & 0xF0) >> 4)).append(HEXES.charAt((b & 0x0F)));
    +104         }
    +105         return hex.toString();
    +106     }
    +107 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html new file mode 100644 index 000000000..9a220f6a4 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html @@ -0,0 +1,269 @@ + + + + +DependencyVersion xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.Iterator;
    +23  import java.util.List;
    +24  import java.util.regex.Matcher;
    +25  import java.util.regex.Pattern;
    +26  import org.apache.commons.lang.StringUtils;
    +27  
    +28  /**
    +29   * <p>Simple object to track the parts of a version number. The parts are
    +30   * contained in a List such that version 1.2.3 will be stored as:
    +31   * <code>versionParts[0] = 1;
    +32   * versionParts[1] = 2;
    +33   * versionParts[2] = 3;
    +34   * </code></p>
    +35   * <p>Note, the parser contained in this class expects the version numbers to be
    +36   * separated by periods. If a different separator is used the parser will likely
    +37   * fail.</p>
    +38   *
    +39   * @author Jeremy Long (jeremy.long@owasp.org)
    +40   */
    +41  public class DependencyVersion implements Iterable, Comparable<DependencyVersion> {
    +42  
    +43      /**
    +44       * Constructor for a empty DependencyVersion.
    +45       */
    +46      public DependencyVersion() {
    +47      }
    +48  
    +49      /**
    +50       * Constructor for a DependencyVersion that will parse a version string.
    +51       * <b>Note</b>, this should only be used when the version passed in is
    +52       * already known to be a well formated version number. Otherwise,
    +53       * DependencyVersionUtil.parseVersion() should be used instead.
    +54       *
    +55       * @param version the well formated version number to parse
    +56       */
    +57      public DependencyVersion(String version) {
    +58          parseVersion(version);
    +59      }
    +60  
    +61      /**
    +62       * Parses a version string into its sub parts: major, minor, revision,
    +63       * build, etc. <b>Note</b>, this should only be used to parse something that
    +64       * is already known to be a version number.
    +65       *
    +66       * @param version the version string to parse
    +67       */
    +68      public final void parseVersion(String version) {
    +69          versionParts = new ArrayList<String>();
    +70          if (version != null) {
    +71              final Pattern rx = Pattern.compile("(\\d+|[a-z]+\\d+|(release|beta|alpha)$)");
    +72              final Matcher matcher = rx.matcher(version.toLowerCase());
    +73              while (matcher.find()) {
    +74                  versionParts.add(matcher.group());
    +75              }
    +76              if (versionParts.isEmpty()) {
    +77                  versionParts.add(version);
    +78              }
    +79          }
    +80      }
    +81      /**
    +82       * A list of the version parts.
    +83       */
    +84      private List<String> versionParts;
    +85  
    +86      /**
    +87       * Get the value of versionParts.
    +88       *
    +89       * @return the value of versionParts
    +90       */
    +91      public List<String> getVersionParts() {
    +92          return versionParts;
    +93      }
    +94  
    +95      /**
    +96       * Set the value of versionParts.
    +97       *
    +98       * @param versionParts new value of versionParts
    +99       */
    +100     public void setVersionParts(List<String> versionParts) {
    +101         this.versionParts = versionParts;
    +102     }
    +103 
    +104     /**
    +105      * Retrieves an iterator for the version parts.
    +106      *
    +107      * @return an iterator for the version parts
    +108      */
    +109     public Iterator iterator() {
    +110         return versionParts.iterator();
    +111     }
    +112 
    +113     /**
    +114      * Reconstructs the version string from the split version parts.
    +115      *
    +116      * @return a string representing the version.
    +117      */
    +118     @Override
    +119     public String toString() {
    +120         return StringUtils.join(versionParts.toArray(), ".");
    +121     }
    +122 
    +123     /**
    +124      * Compares the equality of this object to the one passed in as a parameter.
    +125      *
    +126      * @param obj the object to compare equality
    +127      * @return returns true only if the two objects are equal, otherwise false
    +128      */
    +129     @Override
    +130     public boolean equals(Object obj) {
    +131         if (obj == null) {
    +132             return false;
    +133         }
    +134         if (getClass() != obj.getClass()) {
    +135             return false;
    +136         }
    +137         final DependencyVersion other = (DependencyVersion) obj;
    +138         final int max = (this.versionParts.size() < other.versionParts.size())
    +139                 ? this.versionParts.size() : other.versionParts.size();
    +140         //TODO steal better version of code from compareTo
    +141         for (int i = 0; i < max; i++) {
    +142             final String thisPart = this.versionParts.get(i);
    +143             final String otherPart = other.versionParts.get(i);
    +144             if (!thisPart.equals(otherPart)) {
    +145                 return false;
    +146             }
    +147         }
    +148         if (this.versionParts.size() > max) {
    +149             for (int i = max; i < this.versionParts.size(); i++) {
    +150                 if (!"0".equals(this.versionParts.get(i))) {
    +151                     return false;
    +152                 }
    +153             }
    +154         }
    +155 
    +156         if (other.versionParts.size() > max) {
    +157             for (int i = max; i < other.versionParts.size(); i++) {
    +158                 if (!"0".equals(other.versionParts.get(i))) {
    +159                     return false;
    +160                 }
    +161             }
    +162         }
    +163 
    +164         /*
    +165          *  if (this.versionParts != other.versionParts && (this.versionParts == null || !this.versionParts.equals(other.versionParts))) {
    +166          *      return false;
    +167          *  }
    +168          */
    +169         return true;
    +170     }
    +171 
    +172     /**
    +173      * Calculates the hashCode for this object.
    +174      *
    +175      * @return the hashCode
    +176      */
    +177     @Override
    +178     public int hashCode() {
    +179         int hash = 5;
    +180         hash = 71 * hash + (this.versionParts != null ? this.versionParts.hashCode() : 0);
    +181         return hash;
    +182     }
    +183 
    +184     /**
    +185      * Determines if the three most major major version parts are identical. For
    +186      * instances, if version 1.2.3.4 was compared to 1.2.3 this function would
    +187      * return true.
    +188      *
    +189      * @param version the version number to compare
    +190      * @return true if the first three major parts of the version are identical
    +191      */
    +192     public boolean matchesAtLeastThreeLevels(DependencyVersion version) {
    +193         if (version == null) {
    +194             return false;
    +195         }
    +196 
    +197         boolean ret = true;
    +198         int max = (this.versionParts.size() < version.versionParts.size())
    +199                 ? this.versionParts.size() : version.versionParts.size();
    +200 
    +201         if (max > 3) {
    +202             max = 3;
    +203         }
    +204 
    +205         for (int i = 0; i < max; i++) {
    +206             if (this.versionParts.get(i) == null || !this.versionParts.get(i).equals(version.versionParts.get(i))) {
    +207                 ret = false;
    +208                 break;
    +209             }
    +210         }
    +211 
    +212         return ret;
    +213     }
    +214 
    +215     @Override
    +216     public int compareTo(DependencyVersion version) {
    +217         if (version == null) {
    +218             return 1;
    +219         }
    +220         final List<String> left = this.getVersionParts();
    +221         final List<String> right = version.getVersionParts();
    +222         final int max = left.size() < right.size() ? left.size() : right.size();
    +223 
    +224         for (int i = 0; i < max; i++) {
    +225             final String lStr = left.get(i);
    +226             final String rStr = right.get(i);
    +227             if (lStr.equals(rStr)) {
    +228                 continue;
    +229             }
    +230             try {
    +231                 final int l = Integer.parseInt(lStr);
    +232                 final int r = Integer.parseInt(rStr);
    +233                 if (l < r) {
    +234                     return -1;
    +235                 } else if (l > r) {
    +236                     return 1;
    +237                 }
    +238             } catch (NumberFormatException ex) {
    +239                 final int comp = left.get(i).compareTo(right.get(i));
    +240                 if (comp < 0) {
    +241                     return -1;
    +242                 } else if (comp > 0) {
    +243                     return 1;
    +244                 }
    +245             }
    +246         }
    +247         if (left.size() < right.size()) {
    +248             return -1;
    +249         } else if (left.size() > right.size()) {
    +250             return 1;
    +251         } else {
    +252             return 0;
    +253         }
    +254     }
    +255 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html new file mode 100644 index 000000000..3ee16546c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html @@ -0,0 +1,109 @@ + + + + +DependencyVersionUtil xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.regex.Matcher;
    +23  import java.util.regex.Pattern;
    +24  
    +25  /**
    +26   * <p>A utility class to extract version numbers from file names (or other
    +27   * strings containing version numbers.</p>
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public final class DependencyVersionUtil {
    +32  
    +33      /**
    +34       * Regular expression to extract version numbers from file names.
    +35       */
    +36      private static final Pattern RX_VERSION = Pattern.compile("\\d+(\\.\\d{1,6})+(\\.?([_-](release|beta|alpha)|[a-zA-Z_-]{1,3}\\d{1,8}))?");
    +37      /**
    +38       * Regular expression to extract a single version number without periods.
    +39       * This is a last ditch effort just to check in case we are missing a
    +40       * version number using the previous regex.
    +41       */
    +42      private static final Pattern RX_SINGLE_VERSION = Pattern.compile("\\d+(\\.?([_-](release|beta|alpha)|[a-zA-Z_-]{1,3}\\d{1,8}))?");
    +43  
    +44      /**
    +45       * Private constructor for utility class.
    +46       */
    +47      private DependencyVersionUtil() {
    +48      }
    +49  
    +50      /**
    +51       * <p>A utility class to extract version numbers from file names (or other
    +52       * strings containing version numbers.<br/>
    +53       * Example:<br/>
    +54       * Give the file name: library-name-1.4.1r2-release.jar<br/>
    +55       * This function would return: 1.4.1.r2</p>
    +56       *
    +57       * @param text the text being analyzed
    +58       * @return a DependencyVersion containing the version
    +59       */
    +60      public static DependencyVersion parseVersion(String text) {
    +61          if (text == null) {
    +62              return null;
    +63          }
    +64          //'-' is a special case used within the CVE entries, just include it as the version.
    +65          if ("-".equals(text)) {
    +66              final DependencyVersion dv = new DependencyVersion();
    +67              final ArrayList<String> list = new ArrayList<String>();
    +68              list.add(text);
    +69              dv.setVersionParts(list);
    +70              return dv;
    +71          }
    +72          String version = null;
    +73          Matcher matcher = RX_VERSION.matcher(text);
    +74          if (matcher.find()) {
    +75              version = matcher.group();
    +76          }
    +77          //throw away the results if there are two things that look like version numbers
    +78          if (matcher.find()) {
    +79              return null;
    +80          }
    +81          if (version == null) {
    +82              matcher = RX_SINGLE_VERSION.matcher(text);
    +83              if (matcher.find()) {
    +84                  version = matcher.group();
    +85              } else {
    +86                  return null;
    +87              }
    +88              //throw away the results if there are two things that look like version numbers
    +89              if (matcher.find()) {
    +90                  return null;
    +91              }
    +92          }
    +93          return new DependencyVersion(version);
    +94      }
    +95  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html new file mode 100644 index 000000000..76a3e462c --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html @@ -0,0 +1,83 @@ + + + + +DownloadFailedException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when a download fails.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class DownloadFailedException extends IOException {
    +29  
    +30      /**
    +31       * The serial version UID.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new DownloadFailedException.
    +37       */
    +38      public DownloadFailedException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new DownloadFailedException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public DownloadFailedException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new DownloadFailedException.
    +53       *
    +54       * @param ex the cause of the download failure.
    +55       */
    +56      public DownloadFailedException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new DownloadFailedException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the download failure.
    +65       */
    +66      public DownloadFailedException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html new file mode 100644 index 000000000..1d8b0ead9 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html @@ -0,0 +1,241 @@ + + + + +Downloader xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.BufferedOutputStream;
    +22  import java.io.File;
    +23  import java.io.FileOutputStream;
    +24  import java.io.IOException;
    +25  import java.io.InputStream;
    +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/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/ExtractionException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/ExtractionException.html new file mode 100644 index 000000000..66d9d30a7 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/ExtractionException.html @@ -0,0 +1,83 @@ + + + + +ExtractionException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when a file is unable to be un-zipped.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class ExtractionException extends IOException {
    +29  
    +30      /**
    +31       * The serial version UID.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new ExtractionException.
    +37       */
    +38      public ExtractionException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new ExtractionException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public ExtractionException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new ExtractionException.
    +53       *
    +54       * @param ex the cause of the download failure.
    +55       */
    +56      public ExtractionException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new ExtractionException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the download failure.
    +65       */
    +66      public ExtractionException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html new file mode 100644 index 000000000..704dc1c83 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html @@ -0,0 +1,247 @@ + + + + +FileUtils xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.BufferedInputStream;
    +22  import java.io.BufferedOutputStream;
    +23  import java.io.File;
    +24  import java.io.FileInputStream;
    +25  import java.io.FileNotFoundException;
    +26  import java.io.FileOutputStream;
    +27  import java.io.IOException;
    +28  import java.io.UnsupportedEncodingException;
    +29  import java.net.URLDecoder;
    +30  import java.util.logging.Level;
    +31  import java.util.logging.Logger;
    +32  import java.util.zip.ZipEntry;
    +33  import java.util.zip.ZipInputStream;
    +34  import org.owasp.dependencycheck.Engine;
    +35  
    +36  /**
    +37   * A collection of utilities for processing information about files.
    +38   *
    +39   * @author Jeremy Long (jeremy.long@owasp.org)
    +40   */
    +41  public final class FileUtils {
    +42  
    +43      /**
    +44       * The buffer size to use when extracting files from the archive.
    +45       */
    +46      private static final int BUFFER_SIZE = 4096;
    +47  
    +48      /**
    +49       * Private constructor for a utility class.
    +50       */
    +51      private FileUtils() {
    +52      }
    +53  
    +54      /**
    +55       * Returns the (lowercase) file extension for a specified file.
    +56       *
    +57       * @param fileName the file name to retrieve the file extension from.
    +58       * @return the file extension.
    +59       */
    +60      public static String getFileExtension(String fileName) {
    +61          String ret = null;
    +62          final int pos = fileName.lastIndexOf(".");
    +63          if (pos >= 0) {
    +64              ret = fileName.substring(pos + 1, fileName.length()).toLowerCase();
    +65          }
    +66          return ret;
    +67      }
    +68  
    +69      /**
    +70       * Deletes a file. If the File is a directory it will recursively delete the
    +71       * contents.
    +72       *
    +73       * @param file the File to delete
    +74       * @throws IOException is thrown if the file could not be deleted
    +75       */
    +76      public static void delete(File file) throws IOException {
    +77          if (file.isDirectory()) {
    +78              for (File c : file.listFiles()) {
    +79                  delete(c);
    +80              }
    +81          }
    +82          if (!org.apache.commons.io.FileUtils.deleteQuietly(file)) {
    +83              throw new FileNotFoundException("Failed to delete file: " + file);
    +84          }
    +85          /* else {
    +86           //delete on exit was a bad idea. if for some reason the file can't be deleted
    +87           // this will cause a newly constructed file to be deleted and a subsequent run may fail.
    +88           // still not sure why a file fails to be deleted, but can be overwritten... odd.
    +89           file.deleteOnExit();
    +90           }*/
    +91      }
    +92  
    +93      /**
    +94       * Returns the data directory. If a path was specified in
    +95       * dependencycheck.properties or was specified using the Settings object,
    +96       * and the path exists, that path will be returned as a File object. If it
    +97       * does not exist, then a File object will be created based on the file
    +98       * location of the JAR containing the specified class.
    +99       *
    +100      * @param configuredFilePath the configured relative or absolute path
    +101      * @param clazz the class whos path will be resolved
    +102      * @return a File object
    +103      * @throws IOException is thrown if the path could not be decoded
    +104      * @deprecated This method should no longer be used. See the implementation
    +105      * in dependency-check-cli/App.java to see how the data directory should be
    +106      * set.
    +107      */
    +108     @java.lang.Deprecated
    +109     public static File getDataDirectory(String configuredFilePath, Class clazz) throws IOException {
    +110         final File file = new File(configuredFilePath);
    +111         if (file.isDirectory() && file.canWrite()) {
    +112             return new File(file.getCanonicalPath());
    +113         } else {
    +114             final File exePath = getPathToJar(clazz);
    +115             return new File(exePath, configuredFilePath);
    +116         }
    +117     }
    +118 
    +119     /**
    +120      * Retrieves the physical path to the parent directory containing the
    +121      * provided class. For example, if a JAR file contained a class
    +122      * org.something.clazz this method would return the parent directory of the
    +123      * JAR file.
    +124      *
    +125      * @param clazz the class to determine the parent directory of
    +126      * @return the parent directory of the file containing the specified class.
    +127      * @throws UnsupportedEncodingException thrown if UTF-8 is not supported.
    +128      * @deprecated this should no longer be used.
    +129      */
    +130     @java.lang.Deprecated
    +131     public static File getPathToJar(Class clazz) throws UnsupportedEncodingException {
    +132         final String filePath = clazz.getProtectionDomain().getCodeSource().getLocation().getPath();
    +133         final String decodedPath = URLDecoder.decode(filePath, "UTF-8");
    +134         final File jarPath = new File(decodedPath);
    +135         return jarPath.getParentFile();
    +136     }
    +137 
    +138     /**
    +139      * Extracts the contents of an archive into the specified directory.
    +140      *
    +141      * @param archive an archive file such as a WAR or EAR
    +142      * @param extractTo a directory to extract the contents to
    +143      * @throws ExtractionException thrown if an exception occurs while
    +144      * extracting the files
    +145      */
    +146     public static void extractFiles(File archive, File extractTo) throws ExtractionException {
    +147         extractFiles(archive, extractTo, null);
    +148     }
    +149 
    +150     /**
    +151      * Extracts the contents of an archive into the specified directory. The
    +152      * files are only extracted if they are supported by the analyzers loaded
    +153      * into the specified engine. If the engine is specified as null then all
    +154      * files are extracted.
    +155      *
    +156      * @param archive an archive file such as a WAR or EAR
    +157      * @param extractTo a directory to extract the contents to
    +158      * @param engine the scanning engine
    +159      * @throws ExtractionException thrown if there is an error extracting the
    +160      * files
    +161      */
    +162     public static void extractFiles(File archive, File extractTo, Engine engine) throws ExtractionException {
    +163         if (archive == null || extractTo == null) {
    +164             return;
    +165         }
    +166 
    +167         FileInputStream fis = null;
    +168         ZipInputStream zis = null;
    +169 
    +170         try {
    +171             fis = new FileInputStream(archive);
    +172         } catch (FileNotFoundException ex) {
    +173             Logger.getLogger(FileUtils.class.getName()).log(Level.INFO, null, ex);
    +174             throw new ExtractionException("Archive file was not found.", ex);
    +175         }
    +176         zis = new ZipInputStream(new BufferedInputStream(fis));
    +177         ZipEntry entry;
    +178         try {
    +179             while ((entry = zis.getNextEntry()) != null) {
    +180                 if (entry.isDirectory()) {
    +181                     final File d = new File(extractTo, entry.getName());
    +182                     if (!d.exists() && !d.mkdirs()) {
    +183                         final String msg = String.format("Unable to create '%s'.", d.getAbsolutePath());
    +184                         throw new ExtractionException(msg);
    +185                     }
    +186                 } else {
    +187                     final File file = new File(extractTo, entry.getName());
    +188                     final String ext = getFileExtension(file.getName());
    +189                     if (engine == null || engine.supportsExtension(ext)) {
    +190                         BufferedOutputStream bos = null;
    +191                         FileOutputStream fos;
    +192                         try {
    +193                             fos = new FileOutputStream(file);
    +194                             bos = new BufferedOutputStream(fos, BUFFER_SIZE);
    +195                             int count;
    +196                             final byte data[] = new byte[BUFFER_SIZE];
    +197                             while ((count = zis.read(data, 0, BUFFER_SIZE)) != -1) {
    +198                                 bos.write(data, 0, count);
    +199                             }
    +200                             bos.flush();
    +201                         } catch (FileNotFoundException ex) {
    +202                             Logger.getLogger(FileUtils.class.getName()).log(Level.FINE, null, ex);
    +203                             final String msg = String.format("Unable to find file '%s'.", file.getName());
    +204                             throw new ExtractionException(msg, ex);
    +205                         } catch (IOException ex) {
    +206                             Logger.getLogger(FileUtils.class.getName()).log(Level.FINE, null, ex);
    +207                             final String msg = String.format("IO Exception while parsing file '%s'.", file.getName());
    +208                             throw new ExtractionException(msg, ex);
    +209                         } finally {
    +210                             if (bos != null) {
    +211                                 try {
    +212                                     bos.close();
    +213                                 } catch (IOException ex) {
    +214                                     Logger.getLogger(FileUtils.class.getName()).log(Level.FINEST, null, ex);
    +215                                 }
    +216                             }
    +217                         }
    +218                     }
    +219                 }
    +220             }
    +221         } catch (IOException ex) {
    +222             final String msg = String.format("Exception reading archive '%s'.", archive.getName());
    +223             Logger.getLogger(FileUtils.class.getName()).log(Level.FINE, msg, ex);
    +224             throw new ExtractionException(msg, ex);
    +225         } finally {
    +226             try {
    +227                 zis.close();
    +228             } catch (IOException ex) {
    +229                 Logger.getLogger(FileUtils.class.getName()).log(Level.FINEST, null, ex);
    +230             }
    +231         }
    +232     }
    +233 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html new file mode 100644 index 000000000..0972eccec --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html @@ -0,0 +1,84 @@ + + + + +Filter xref + + + +
    +
    +1   package org.owasp.dependencycheck.utils;
    +2   
    +3   import java.util.Iterator;
    +4   import java.util.NoSuchElementException;
    +5   
    +6   /*
    +7    * This is an abstract filter that can be used to filter iterable list.
    +8    *
    +9    * This Filter class was copied from:
    +10   * http://erikras.com/2008/01/18/the-filter-pattern-java-conditional-abstraction-with-iterables/
    +11   *
    +12   * Erik Rasmussen - © 2006 - 2012 All Rights Reserved. @author Erik Rasmussen
    +13   * https://plus.google.com/115403795880834599019/?rel=author
    +14   */
    +15  public abstract class Filter<T> {
    +16  
    +17      public abstract boolean passes(T object);
    +18  
    +19      public Iterator<T> filter(Iterator<T> iterator) {
    +20          return new FilterIterator(iterator);
    +21      }
    +22  
    +23      public Iterable<T> filter(final Iterable<T> iterable) {
    +24          return new Iterable<T>() {
    +25  
    +26              public Iterator<T> iterator() {
    +27                  return filter(iterable.iterator());
    +28              }
    +29          };
    +30      }
    +31  
    +32      private class FilterIterator implements Iterator<T> {
    +33  
    +34          private final Iterator<T> iterator;
    +35          private T next;
    +36  
    +37          private FilterIterator(Iterator<T> iterator) {
    +38              this.iterator = iterator;
    +39              toNext();
    +40          }
    +41  
    +42          public boolean hasNext() {
    +43              return next != null;
    +44          }
    +45  
    +46          public T next() {
    +47              if (next == null) {
    +48                  throw new NoSuchElementException();
    +49              }
    +50              T returnValue = next;
    +51              toNext();
    +52              return returnValue;
    +53          }
    +54  
    +55          public void remove() {
    +56              throw new UnsupportedOperationException();
    +57          }
    +58  
    +59          private void toNext() {
    +60              next = null;
    +61              while (iterator.hasNext()) {
    +62                  T item = iterator.next();
    +63                  if (item != null && passes(item)) {
    +64                      next = item;
    +65                      break;
    +66                  }
    +67              }
    +68          }
    +69      }
    +70  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html new file mode 100644 index 000000000..d4c9cb530 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html @@ -0,0 +1,83 @@ + + + + +InvalidSettingException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when an error occurs reading a setting.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class InvalidSettingException extends IOException {
    +29  
    +30      /**
    +31       * The serial version UID.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new InvalidSettingException.
    +37       */
    +38      public InvalidSettingException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new InvalidSettingException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public InvalidSettingException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new InvalidSettingException.
    +53       *
    +54       * @param ex the cause of the setting exception.
    +55       */
    +56      public InvalidSettingException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new InvalidSettingException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the setting exception.
    +65       */
    +66      public InvalidSettingException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogFilter.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogFilter.html new file mode 100644 index 000000000..159831920 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogFilter.html @@ -0,0 +1,58 @@ + + + + +LogFilter xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.util.logging.Filter;
    +22  import java.util.logging.LogRecord;
    +23  
    +24  /**
    +25   * A simple log filter to limit the entries written to the verbose log file. The
    +26   * verbose log file uses the root logger as I couldn't get anything else to
    +27   * work; as such, this filter limits the log entries to specific classes.
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public class LogFilter implements Filter {
    +32  
    +33      /**
    +34       * Determines if the record should be logged.
    +35       *
    +36       * @param record a log record to examine
    +37       * @return true if the record should be logged, otherwise false
    +38       */
    +39      @Override
    +40      public boolean isLoggable(LogRecord record) {
    +41          final String name = record.getSourceClassName();
    +42          return name.startsWith("org.owasp.dependencycheck") && !name.contains("generated") && !name.contains("VelocityLoggerRedirect");
    +43      }
    +44  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html new file mode 100644 index 000000000..335b95728 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html @@ -0,0 +1,103 @@ + + + + +LogUtils xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.IOException;
    +22  import java.io.InputStream;
    +23  import java.util.logging.FileHandler;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.LogManager;
    +26  import java.util.logging.Logger;
    +27  import java.util.logging.SimpleFormatter;
    +28  
    +29  /**
    +30   * A utility class to aide in the setup of the logging mechanism.
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public final class LogUtils {
    +35  
    +36      /**
    +37       * Private constructor for a utility class.
    +38       */
    +39      private LogUtils() {
    +40      }
    +41  
    +42      /**
    +43       * Configures the logger for use by the application.
    +44       *
    +45       * @param in the input stream to read the log settings from
    +46       * @param verboseLogFile the file path for the verbose log
    +47       */
    +48      public static void prepareLogger(InputStream in, String verboseLogFile) {
    +49          try {
    +50              LogManager.getLogManager().reset();
    +51              LogManager.getLogManager().readConfiguration(in);
    +52              if (verboseLogFile != null && !verboseLogFile.isEmpty()) {
    +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/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html new file mode 100644 index 000000000..837715ea1 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html @@ -0,0 +1,63 @@ + + + + +NonClosingStream xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.FilterInputStream;
    +22  import java.io.InputStream;
    +23  
    +24  /**
    +25   * NonClosingStream is a stream filter which prevents another class that
    +26   * processes the stream from closing it. This is necessary when dealing with
    +27   * things like JAXB and zipInputStreams.
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public class NonClosingStream extends FilterInputStream {
    +32  
    +33      /**
    +34       * Constructs a new NonClosingStream.
    +35       *
    +36       * @param in an input stream.
    +37       */
    +38      public NonClosingStream(InputStream in) {
    +39          super(in);
    +40      }
    +41  
    +42      /**
    +43       * Prevents closing of the stream.
    +44       */
    +45      @Override
    +46      public void close() {
    +47          // don't close the stream.
    +48      }
    +49  }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html new file mode 100644 index 000000000..0777d4920 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html @@ -0,0 +1,478 @@ + + + + +Settings xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileInputStream;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.IOException;
    +25  import java.io.InputStream;
    +26  import java.io.UnsupportedEncodingException;
    +27  import java.net.URLDecoder;
    +28  import java.util.Properties;
    +29  import java.util.logging.Level;
    +30  import java.util.logging.Logger;
    +31  
    +32  /**
    +33   * A simple settings container that wraps the dependencycheck.properties file.
    +34   *
    +35   * @author Jeremy Long (jeremy.long@owasp.org)
    +36   */
    +37  public final class Settings {
    +38  
    +39      /**
    +40       * The collection of keys used within the properties file.
    +41       */
    +42      public static final class KEYS {
    +43  
    +44          /**
    +45           * private constructor because this is a "utility" class containing
    +46           * constants
    +47           */
    +48          private KEYS() {
    +49              //do nothing
    +50          }
    +51          /**
    +52           * The properties key indicating whether or not the cached data sources
    +53           * should be updated.
    +54           */
    +55          public static final String AUTO_UPDATE = "autoupdate";
    +56          /**
    +57           * The database driver class name. If this is not in the properties file
    +58           * the embedded database is used.
    +59           */
    +60          public static final String DB_DRIVER = "database.drive";
    +61          /**
    +62           * The database connection string. If this is not in the properties file
    +63           * the embedded database is used.
    +64           */
    +65          public static final String DB_CONNECTION_STRING = "database.connectionstring";
    +66          /**
    +67           * The base path to use for the data directory.
    +68           */
    +69          public static final String DATA_DIRECTORY = "data.directory";
    +70          /**
    +71           * The location of the batch update URL. This is a zip file that
    +72           * contains the contents of the data directory.
    +73           */
    +74          public static final String BATCH_UPDATE_URL = "batch.update.url";
    +75          /**
    +76           * The properties key for the path where the CVE H2 database will be
    +77           * stored.
    +78           */
    +79          public static final String CVE_DATA_DIRECTORY = "data.cve";
    +80          /**
    +81           * The properties key for the URL to retrieve the "meta" data from about
    +82           * the CVE entries.
    +83           */
    +84          public static final String CVE_META_URL = "cve.url.meta";
    +85          /**
    +86           * The properties key for the URL to retrieve the recently modified and
    +87           * added CVE entries (last 8 days) using the 2.0 schema.
    +88           */
    +89          public static final String CVE_MODIFIED_20_URL = "cve.url-2.0.modified";
    +90          /**
    +91           * The properties key for the URL to retrieve the recently modified and
    +92           * added CVE entries (last 8 days) using the 1.2 schema.
    +93           */
    +94          public static final String CVE_MODIFIED_12_URL = "cve.url-1.2.modified";
    +95          /**
    +96           * The properties key for the URL to retrieve the recently modified and
    +97           * added CVE entries (last 8 days).
    +98           */
    +99          public static final String CVE_MODIFIED_VALID_FOR_DAYS = "cve.url.modified.validfordays";
    +100         /**
    +101          * The properties key for the telling us how many cvr.url.* URLs exists.
    +102          * This is used in combination with CVE_BASE_URL to be able to retrieve
    +103          * the URLs for all of the files that make up the NVD CVE listing.
    +104          */
    +105         public static final String CVE_START_YEAR = "cve.startyear";
    +106         /**
    +107          * The properties key for the CVE schema version 1.2.
    +108          */
    +109         public static final String CVE_SCHEMA_1_2 = "cve.url-1.2.base";
    +110         /**
    +111          * The properties key for the CVE schema version 2.0.
    +112          */
    +113         public static final String CVE_SCHEMA_2_0 = "cve.url-2.0.base";
    +114         /**
    +115          * The properties key for the proxy url.
    +116          */
    +117         public static final String PROXY_URL = "proxy.url";
    +118         /**
    +119          * The properties key for the proxy port - this must be an integer
    +120          * value.
    +121          */
    +122         public static final String PROXY_PORT = "proxy.port";
    +123         /**
    +124          * The properties key for the proxy username.
    +125          */
    +126         public static final String PROXY_USERNAME = "proxy.username";
    +127         /**
    +128          * The properties key for the proxy password.
    +129          */
    +130         public static final String PROXY_PASSWORD = "proxy.password";
    +131         /**
    +132          * The properties key for the connection timeout.
    +133          */
    +134         public static final String CONNECTION_TIMEOUT = "connection.timeout";
    +135         /**
    +136          * The location of the temporary directory.
    +137          */
    +138         public static final String TEMP_DIRECTORY = "temp.directory";
    +139         /**
    +140          * The maximum number of threads to allocate when downloading files.
    +141          */
    +142         public static final String MAX_DOWNLOAD_THREAD_POOL_SIZE = "max.download.threads";
    +143         /**
    +144          * The key for a list of suppression files.
    +145          */
    +146         public static final String SUPPRESSION_FILE = "suppression.file";
    +147     }
    +148     /**
    +149      * The properties file location.
    +150      */
    +151     private static final String PROPERTIES_FILE = "dependencycheck.properties";
    +152     /**
    +153      * The singleton instance variable.
    +154      */
    +155     private static final Settings INSTANCE = new Settings();
    +156     /**
    +157      * The properties.
    +158      */
    +159     private Properties props = null;
    +160 
    +161     /**
    +162      * Private constructor for the Settings class. This class loads the
    +163      * properties files.
    +164      */
    +165     private Settings() {
    +166         InputStream in = null;
    +167         props = new Properties();
    +168         try {
    +169             in = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +170             props.load(in);
    +171         } catch (IOException ex) {
    +172             Logger.getLogger(Settings.class.getName()).log(Level.SEVERE, "Unable to load default settings.");
    +173             Logger.getLogger(Settings.class.getName()).log(Level.FINE, null, ex);
    +174         } finally {
    +175             if (in != null) {
    +176                 try {
    +177                     in.close();
    +178                 } catch (IOException ex) {
    +179                     Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
    +180                 }
    +181             }
    +182         }
    +183     }
    +184 
    +185     /**
    +186      * Sets a property value.
    +187      *
    +188      * @param key the key for the property
    +189      * @param value the value for the property
    +190      */
    +191     public static void setString(String key, String value) {
    +192         INSTANCE.props.setProperty(key, value);
    +193     }
    +194 
    +195     /**
    +196      * Sets a property value.
    +197      *
    +198      * @param key the key for the property
    +199      * @param value the value for the property
    +200      */
    +201     public static void setBoolean(String key, boolean value) {
    +202         if (value) {
    +203             INSTANCE.props.setProperty(key, Boolean.TRUE.toString());
    +204         } else {
    +205             INSTANCE.props.setProperty(key, Boolean.FALSE.toString());
    +206         }
    +207     }
    +208 
    +209     /**
    +210      * Merges a new properties file into the current properties. This method
    +211      * allows for the loading of a user provided properties file.<br/><br/>
    +212      * Note: even if using this method - system properties will be loaded before
    +213      * properties loaded from files.
    +214      *
    +215      * @param filePath the path to the properties file to merge.
    +216      * @throws FileNotFoundException is thrown when the filePath points to a
    +217      * non-existent file
    +218      * @throws IOException is thrown when there is an exception loading/merging
    +219      * the properties
    +220      */
    +221     public static void mergeProperties(File filePath) throws FileNotFoundException, IOException {
    +222         final FileInputStream fis = new FileInputStream(filePath);
    +223         mergeProperties(fis);
    +224     }
    +225 
    +226     /**
    +227      * Merges a new properties file into the current properties. This method
    +228      * allows for the loading of a user provided properties file.<br/><br/>
    +229      * Note: even if using this method - system properties will be loaded before
    +230      * properties loaded from files.
    +231      *
    +232      * @param filePath the path to the properties file to merge.
    +233      * @throws FileNotFoundException is thrown when the filePath points to a
    +234      * non-existent file
    +235      * @throws IOException is thrown when there is an exception loading/merging
    +236      * the properties
    +237      */
    +238     public static void mergeProperties(String filePath) throws FileNotFoundException, IOException {
    +239         final FileInputStream fis = new FileInputStream(filePath);
    +240         mergeProperties(fis);
    +241     }
    +242 
    +243     /**
    +244      * Merges a new properties file into the current properties. This method
    +245      * allows for the loading of a user provided properties file.<br/><br/>
    +246      * Note: even if using this method - system properties will be loaded before
    +247      * properties loaded from files.
    +248      *
    +249      * @param stream an Input Stream pointing at a properties file to merge
    +250      * @throws IOException is thrown when there is an exception loading/merging
    +251      * the properties
    +252      */
    +253     public static void mergeProperties(InputStream stream) throws IOException {
    +254         INSTANCE.props.load(stream);
    +255     }
    +256 
    +257     /**
    +258      * Returns a value from the properties file as a File object. If the value
    +259      * was specified as a system property or passed in via the -Dprop=value
    +260      * argument - this method will return the value from the system properties
    +261      * before the values in the contained configuration file.
    +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         if (file == null) {
    +269             return null;
    +270         }
    +271         return new File(file);
    +272     }
    +273 
    +274     /**
    +275      * Returns a value from the properties file as a File object. If the value
    +276      * was specified as a system property or passed in via the -Dprop=value
    +277      * argument - this method will return the value from the system properties
    +278      * before the values in the contained configuration file.
    +279      *
    +280      * This method will check the configured base directory and will use this as
    +281      * the base of the file path. Additionally, if the base directory begins
    +282      * with a leading "[JAR]\" sequence with the path to the folder containing
    +283      * the JAR file containing this class.
    +284      *
    +285      * @param key the key to lookup within the properties file
    +286      * @return the property from the properties file converted to a File object
    +287      */
    +288     public static File getDataFile(String key) {
    +289         final String file = getString(key);
    +290         final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);
    +291         if (baseDir != null) {
    +292             if (baseDir.startsWith("[JAR]/")) {
    +293                 final File jarPath = getJarPath();
    +294                 final File newBase = new File(jarPath, baseDir.substring(6));
    +295                 if (Settings.KEYS.DATA_DIRECTORY.equals(key)) {
    +296                     return newBase;
    +297                 }
    +298                 return new File(newBase, file);
    +299             }
    +300             if (Settings.KEYS.DATA_DIRECTORY.equals(key)) {
    +301                 return new File(baseDir);
    +302             }
    +303             return new File(baseDir, file);
    +304         }
    +305         return new File(file);
    +306     }
    +307 
    +308     /**
    +309      * Attempts to retrieve the folder containing the Jar file containing the
    +310      * Settings class.
    +311      *
    +312      * @return a File object
    +313      */
    +314     private static File getJarPath() {
    +315         final String jarPath = Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath();
    +316         String decodedPath = ".";
    +317         try {
    +318             decodedPath = URLDecoder.decode(jarPath, "UTF-8");
    +319         } catch (UnsupportedEncodingException ex) {
    +320             Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
    +321         }
    +322 
    +323         final File path = new File(decodedPath);
    +324         if (path.getName().toLowerCase().endsWith(".jar")) {
    +325             return path.getParentFile();
    +326         } else {
    +327             return new File(".");
    +328         }
    +329     }
    +330 
    +331     /**
    +332      * Returns a value from the properties file. If the value was specified as a
    +333      * system property or passed in via the -Dprop=value argument - this method
    +334      * will return the value from the system properties before the values in the
    +335      * contained configuration file.
    +336      *
    +337      * @param key the key to lookup within the properties file
    +338      * @param defaultValue the default value for the requested property
    +339      * @return the property from the properties file
    +340      */
    +341     public static String getString(String key, String defaultValue) {
    +342         final String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue));
    +343         return str;
    +344     }
    +345 
    +346     /**
    +347      * Returns the temporary directory.
    +348      *
    +349      * @return the temporary directory
    +350      */
    +351     public static File getTempDirectory() {
    +352         return new File(Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty("java.io.tmpdir")));
    +353     }
    +354 
    +355     /**
    +356      * Returns a value from the properties file. If the value was specified as a
    +357      * system property or passed in via the -Dprop=value argument - this method
    +358      * will return the value from the system properties before the values in the
    +359      * contained configuration file.
    +360      *
    +361      * @param key the key to lookup within the properties file
    +362      * @return the property from the properties file
    +363      */
    +364     public static String getString(String key) {
    +365         return System.getProperty(key, INSTANCE.props.getProperty(key));
    +366     }
    +367 
    +368     /**
    +369      * Removes a property from the local properties collection. This is mainly
    +370      * used in test cases.
    +371      *
    +372      * @param key the property key to remove
    +373      */
    +374     public static void removeProperty(String key) {
    +375         INSTANCE.props.remove(key);
    +376     }
    +377 
    +378     /**
    +379      * Returns an int value from the properties file. If the value was specified
    +380      * as a system property or passed in via the -Dprop=value argument - this
    +381      * method will return the value from the system properties before the values
    +382      * in the contained configuration file.
    +383      *
    +384      * @param key the key to lookup within the properties file
    +385      * @return the property from the properties file
    +386      * @throws InvalidSettingException is thrown if there is an error retrieving
    +387      * the setting
    +388      */
    +389     public static int getInt(String key) throws InvalidSettingException {
    +390         int value;
    +391         try {
    +392             value = Integer.parseInt(Settings.getString(key));
    +393         } catch (NumberFormatException ex) {
    +394             throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
    +395         }
    +396         return value;
    +397     }
    +398 
    +399     /**
    +400      * Returns an int value from the properties file. If the value was specified
    +401      * as a system property or passed in via the -Dprop=value argument - this
    +402      * method will return the value from the system properties before the values
    +403      * in the contained configuration file.
    +404      *
    +405      * @param key the key to lookup within the properties file
    +406      * @param defaultValue the default value to return
    +407      * @return the property from the properties file or the defaultValue if the
    +408      * property does not exist or cannot be converted to an integer
    +409      */
    +410     public static int getInt(String key, int defaultValue) {
    +411         int value;
    +412         try {
    +413             value = Integer.parseInt(Settings.getString(key));
    +414         } catch (NumberFormatException ex) {
    +415             final String msg = String.format("Could not convert property '%s' to an int.", key);
    +416             Logger.getLogger(Settings.class.getName()).log(Level.FINEST, msg, ex);
    +417             value = defaultValue;
    +418         }
    +419         return value;
    +420     }
    +421 
    +422     /**
    +423      * Returns a long value from the properties file. If the value was specified
    +424      * as a system property or passed in via the -Dprop=value argument - this
    +425      * method will return the value from the system properties before the values
    +426      * in the contained configuration 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 long getLong(String key) throws InvalidSettingException {
    +434         long value;
    +435         try {
    +436             value = Long.parseLong(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 
    +443     /**
    +444      * Returns a boolean value from the properties file. If the value was
    +445      * specified as a system property or passed in via the
    +446      * <code>-Dprop=value</code> argument this method will return the value from
    +447      * the system properties before the values in the contained configuration
    +448      * file.
    +449      *
    +450      * @param key the key to lookup within the properties file
    +451      * @return the property from the properties file
    +452      * @throws InvalidSettingException is thrown if there is an error retrieving
    +453      * the setting
    +454      */
    +455     public static boolean getBoolean(String key) throws InvalidSettingException {
    +456         boolean value;
    +457         try {
    +458             value = Boolean.parseBoolean(Settings.getString(key));
    +459         } catch (NumberFormatException ex) {
    +460             throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
    +461         }
    +462         return value;
    +463     }
    +464 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html new file mode 100644 index 000000000..89afb1684 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html @@ -0,0 +1,126 @@ + + + + +UrlStringUtils xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.utils;
    +20  
    +21  import java.net.MalformedURLException;
    +22  import java.net.URL;
    +23  import java.util.ArrayList;
    +24  import java.util.Arrays;
    +25  import java.util.HashSet;
    +26  import java.util.List;
    +27  import java.util.regex.Pattern;
    +28  
    +29  /**
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public final class UrlStringUtils {
    +34  
    +35      /**
    +36       * Private constructor for a utility class.
    +37       */
    +38      private UrlStringUtils() {
    +39      }
    +40      /**
    +41       * A regular expression to test if a string contains a URL.
    +42       */
    +43      private static final Pattern CONTAINS_URL_TEST = Pattern.compile("^.*(ht|f)tps?://.*$", Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
    +44      /**
    +45       * A regular expression to test if a string is a URL.
    +46       */
    +47      private static final Pattern IS_URL_TEST = Pattern.compile("^(ht|f)tps?://.*", Pattern.CASE_INSENSITIVE);
    +48  
    +49      /**
    +50       * Tests if the text provided contains a URL. This is somewhat limited
    +51       * search in that it only looks for (ftp|http|https)://
    +52       *
    +53       * @param text the text to search
    +54       * @return true if the text contains a url, otherwise false
    +55       */
    +56      public static boolean containsUrl(String text) {
    +57          return CONTAINS_URL_TEST.matcher(text).matches();
    +58      }
    +59  
    +60      /**
    +61       * Tests if the given text is url.
    +62       *
    +63       * @param text the string to test
    +64       * @return returns true if the text is a url, otherwise false
    +65       */
    +66      public static boolean isUrl(String text) {
    +67          return IS_URL_TEST.matcher(text).matches();
    +68      }
    +69      /**
    +70       * A listing of domain parts that shold not be used as evidence. Yes, this
    +71       * is an incomplete list.
    +72       */
    +73      private static final HashSet<String> IGNORE_LIST = new HashSet<String>(
    +74              Arrays.asList("www", "com", "org", "gov", "info", "name", "net", "pro", "tel", "mobi", "xxx"));
    +75  
    +76      /**
    +77       * <p>Takes a URL, in String format, and adds the important parts of the URL
    +78       * to a list of strings.</p>
    +79       * <p>Example, given the following input:</p>
    +80       * <code>"https://www.somedomain.com/path1/path2/file.php?id=439"</code>
    +81       * <p>The function would return:</p>
    +82       * <code>{"somedomain", "path1", "path2", "file"}</code>
    +83       *
    +84       * @param text a URL
    +85       * @return importantParts a list of the important parts of the URL
    +86       * @throws MalformedURLException thrown if the URL is malformed
    +87       */
    +88      public static List<String> extractImportantUrlData(String text) throws MalformedURLException {
    +89          final ArrayList<String> importantParts = new ArrayList<String>();
    +90          final URL url = new URL(text);
    +91          final String[] domain = url.getHost().split("\\.");
    +92          //add the domain except www and the tld.
    +93          for (int i = 0; i < domain.length - 1; i++) {
    +94              final String sub = domain[i];
    +95              if (!IGNORE_LIST.contains(sub.toLowerCase())) {
    +96                  importantParts.add(sub);
    +97              }
    +98          }
    +99          final String document = url.getPath();
    +100         final String[] pathParts = document.split("[\\//]");
    +101         for (int i = 0; i < pathParts.length - 2; i++) {
    +102             if (!pathParts[i].isEmpty()) {
    +103                 importantParts.add(pathParts[i]);
    +104             }
    +105         }
    +106         if (pathParts.length > 0 && !pathParts[pathParts.length - 1].isEmpty()) {
    +107             final String fileNameNoExt = pathParts[pathParts.length - 1].replaceAll("\\..*{0,5}$", "");
    +108             importantParts.add(fileNameNoExt);
    +109         }
    +110         return importantParts;
    +111     }
    +112 }
    +
    +
    + + diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html new file mode 100644 index 000000000..c8a1ef50e --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html @@ -0,0 +1,69 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.utils + + + + +

    + org.owasp.dependencycheck.utils +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html new file mode 100644 index 000000000..12c4ccbb5 --- /dev/null +++ b/css/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html @@ -0,0 +1,142 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.utils + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + Checksum +
    + DependencyVersion +
    + DependencyVersionUtil +
    + DownloadFailedException +
    + Downloader +
    + ExtractionException +
    + FileUtils +
    + Filter +
    + FilterIterator +
    + InvalidSettingException +
    + KEYS +
    + LogFilter +
    + LogUtils +
    + NonClosingStream +
    + Settings +
    + UrlStringUtils +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/overview-frame.html b/css/dependency-check-core/xref/overview-frame.html new file mode 100644 index 000000000..829ef9dbe --- /dev/null +++ b/css/dependency-check-core/xref/overview-frame.html @@ -0,0 +1,67 @@ + + + + + + Dependency-Check Core 1.0.6 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/css/dependency-check-core/xref/overview-summary.html b/css/dependency-check-core/xref/overview-summary.html new file mode 100644 index 000000000..1fe55b824 --- /dev/null +++ b/css/dependency-check-core/xref/overview-summary.html @@ -0,0 +1,134 @@ + + + + + + Dependency-Check Core 1.0.6 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    Dependency-Check Core 1.0.6 Reference

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck +
    + org.owasp.dependencycheck.analyzer +
    + org.owasp.dependencycheck.concurrency +
    + org.owasp.dependencycheck.data +
    + org.owasp.dependencycheck.data.cpe +
    + org.owasp.dependencycheck.data.cwe +
    + org.owasp.dependencycheck.data.lucene +
    + org.owasp.dependencycheck.data.nvdcve +
    + org.owasp.dependencycheck.data.update +
    + org.owasp.dependencycheck.dependency +
    + org.owasp.dependencycheck.jaxb.pom +
    + org.owasp.dependencycheck.jaxb.pom.generated +
    + org.owasp.dependencycheck.reporting +
    + org.owasp.dependencycheck.suppression +
    + org.owasp.dependencycheck.utils +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/css/dependency-check-core/xref/stylesheet.css b/css/dependency-check-core/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/css/dependency-check-core/xref/stylesheet.css @@ -0,0 +1,116 @@ +/* Javadoc style sheet */ +/* Define colors, fonts and other style attributes here to override the defaults */ +body { + background-color: #fff; + font-family: Arial, Helvetica, sans-serif; +} + +a:link { + color: #00f; +} +a:visited { + color: #00a; +} + +a:active, a:hover { + color: #f30 !important; +} + +ul, li { + list-style-type:none; + margin:0; + padding:0; +} + +table td { + padding: 3px; + border: 1px solid #000; +} +table { + width:100%; + border: 1px solid #000; + border-collapse: collapse; +} + +div.overview { + background-color:#ddd; + padding: 4px 4px 4px 0; +} +div.overview li, div.framenoframe li { + display: inline; +} +div.framenoframe { + text-align: center; + font-size: x-small; +} +div.framenoframe li { + margin: 0 3px 0 3px; +} +div.overview li { + margin:3px 3px 0 3px; + padding: 4px; +} +li.selected { + background-color:#888; + color: #fff; + font-weight: bold; +} + +table.summary { + margin-bottom: 20px; +} +table.summary td, table.summary th { + font-weight: bold; + text-align: left; + padding: 3px; +} +table.summary th { + background-color:#036; + color: #fff; +} +table.summary td { + background-color:#eee; + border: 1px solid black; +} + +em { + color: #A00; +} +em.comment { + color: #390; +} +.string { + color: #009; +} +div#footer { + text-align:center; +} +#overview { + padding:2px; +} + +hr { + height: 1px; + color: #000; +} + +/* JXR style sheet */ +.jxr_comment +{ + color: #390; +} + +.jxr_javadoccomment +{ + color: #A00; +} + +.jxr_string +{ + color: #009; +} + +.jxr_keyword +{ + color: #000; +} diff --git a/css/dependency-check-jenkins/css/apache-maven-fluido-1.3.0.min.css b/css/dependency-check-jenkins/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/css/dependency-check-jenkins/css/apache-maven-fluido-1.3.0.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.1.0 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:20px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:1;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1{font-size:36px;line-height:40px}h2{font-size:30px;line-height:40px}h3{font-size:24px;line-height:40px}h4{font-size:18px;line-height:20px}h5{font-size:14px;line-height:20px}h6{font-size:12px;line-height:20px}h1 small{font-size:24px}h2 small{font-size:18px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal dt{float:left;width:120px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:130px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:9px;font-size:14px;line-height:20px;color:#555;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}input,textarea{width:210px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #bbb}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:18px;padding-left:18px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-18px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"]{float:left}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;font-size:14px;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{margin-left:-1px;vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:160px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:160px}.form-horizontal .help-block{margin-top:10px;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-right-topleft:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table [class*=span],.row-fluid table [class*=span]{display:table-cell;float:none;margin-left:0}table .span1{float:none;width:44px;margin-left:0}table .span2{float:none;width:124px;margin-left:0}table .span3{float:none;width:204px;margin-left:0}table .span4{float:none;width:284px;margin-left:0}table .span5{float:none;width:364px;margin-left:0}table .span6{float:none;width:444px;margin-left:0}table .span7{float:none;width:524px;margin-left:0}table .span8{float:none;width:604px;margin-left:0}table .span9{float:none;width:684px;margin-left:0}table .span10{float:none;width:764px;margin-left:0}table .span11{float:none;width:844px;margin-left:0}table .span12{float:none;width:924px;margin-left:0}table .span13{float:none;width:1004px;margin-left:0}table .span14{float:none;width:1084px;margin-left:0}table .span15{float:none;width:1164px;margin-left:0}table .span16{float:none;width:1244px;margin-left:0}table .span17{float:none;width:1324px;margin-left:0}table .span18{float:none;width:1404px;margin-left:0}table .span19{float:none;width:1484px;margin-left:0}table .span20{float:none;width:1564px;margin-left:0}table .span21{float:none;width:1644px;margin-left:0}table .span22{float:none;width:1724px;margin-left:0}table .span23{float:none;width:1804px;margin-left:0}table .span24{float:none;width:1884px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.info td{background-color:#d9edf7}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav>.active>a>[class^="icon-"],.nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#fff;text-decoration:none;background-color:#08c;background-color:#0081c2;background-image:linear-gradient(to bottom,#08c,#0077b3);background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover .dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;overflow:visible \9;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 14px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:9px 14px;font-size:16px;line-height:normal;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.btn-large [class^="icon-"]{margin-top:2px}.btn-small{padding:3px 9px;font-size:12px;line-height:18px}.btn-small [class^="icon-"]{margin-top:0}.btn-mini{padding:2px 6px;font-size:11px;line-height:16px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-image:-moz-linear-gradient(top,#08c,#04c);background-repeat:repeat-x;border-color:#04c #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-image:-moz-linear-gradient(top,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-image:-moz-linear-gradient(top,#444,#222);background-repeat:repeat-x;border-color:#222 #222222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-group{position:relative;*margin-left:.3em;font-size:0;white-space:nowrap}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn-group{display:inline-block;*display:inline;*zoom:1}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-top:0;border-bottom:5px solid #000}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eeeeee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #dddddd #eee #eeeeee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eeeeee #eee #dddddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#555}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar .container{width:auto}.nav-collapse.collapse{height:auto}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#555;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#555}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:6px}.navbar .btn-group .btn{margin:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;width:100%;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner,.navbar-static-top .navbar-inner{border:0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1),0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1);box-shadow:inset 0 1px 0 rgba(0,0,0,0.1),0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#555;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-image:-moz-linear-gradient(top,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:dximagetransform.microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{height:40px;margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination li{display:inline}.pagination a,.pagination span{float:left;padding:0 14px;line-height:38px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination a:hover,.pagination .active a,.pagination .active span{background-color:#f5f5f5}.pagination .active a,.pagination .active span{color:#999;cursor:default}.pagination .disabled span,.pagination .disabled a,.pagination .disabled a:hover{color:#999;cursor:default;background-color:transparent}.pagination li:first-child a,.pagination li:first-child span{border-left-width:1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.pagination li:last-child a,.pagination li:last-child span{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager a{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next a{float:right}.pager .previous a{float:left}.pager .disabled a,.pager .disabled a:hover{color:#999;cursor:default;background-color:#fff}.modal-open .dropdown-menu{z-index:2050}.modal-open .dropdown.open{*z-index:2050}.modal-open .popover{z-index:2060}.modal-open .tooltip{z-index:2080}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;overflow:auto;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-bottom:10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-right:10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.label,.badge{font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{padding:1px 4px 2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding:1px 9px 2px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit p{font-size:18px;font-weight:200;line-height:30px;color:inherit}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}.clear{clear:both;visibility:hidden}.clear hr{display:none}.section p,.section p,.section dt,.section dt{margin-right:7px;margin-left:7px}#ohloh{margin-bottom:10px}#poweredBy{text-align:center}a.externalLink{background:url('../images/external.png') right center no-repeat;padding-right:18px}a.newWindow{background:url('../images/window-new.png') right center no-repeat;padding-right:18px}a.externalLink[href^=http]{background:url('../images/internet-web-browser.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".asc"]{background:url('../images/accessories-text-editor.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".jpg"],a.externalLink[href$=".jpeg"],a.externalLink[href$=".gif"],a.externalLink[href$=".png"]{background:url('../images/image-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".tar.gz"],a.externalLink[href$=".zip"]{background:url('../images/package-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".md5"],a.externalLink[href$=".sha1"]{background:url('../images/document-properties.png') right center no-repeat;padding-right:18px}a.externalLink[href^=https]{background:url('../images/application-certificate.png') right center no-repeat;padding-right:18px}a.externalLink[href^=file]{background:url('../images/drive-harddisk.png') right center no-repeat;padding-right:18px}a.externalLink[href^=ftp]{background:url('../images/network-server.png') right center no-repeat;padding-right:18px}a.externalLink[href^=mailto]{background:url('../images/contact-new.png') right center no-repeat;padding-right:18px}li.none{list-style:none}.search-query{background-image:url(http://www.google.com/cse/intl/en/images/google_custom_search_watermark.gif);background-attachment:initial;background-origin:initial;background-clip:initial;background-color:#fff;background-position:0 50%;background-repeat:no-repeat no-repeat;width:95%}body.topBarEnabled{padding-top:60px}body.topBarDisabled{padding-top:20px}.builtBy{display:block}img.builtBy{margin:10px auto}#search-form{margin-left:9px;margin-right:9px}.hero-unit h2{font-size:60px}tt{padding:0 3px 2px;font-family:Monaco,Andale Mono,Courier New,monospace;font-size:12px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#fee9cc;color:rgba(0,0,0,0.75);padding:1px 3px}li{color:#404040}table.zebra-striped{background-color:#FFF}.footer{background-color:#EEE}.sidebar-nav{padding-left:0;padding-right:0}.sidebar-nav .icon-chevron-right,.sidebar-nav .icon-chevron-down{margin-top:2px;margin-right:-6px;float:right;opacity:.25}.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0;padding-left:15px}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/css/dependency-check-jenkins/css/print.css b/css/dependency-check-jenkins/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/css/dependency-check-jenkins/css/print.css @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/* $Id: print.css 1201871 2011-11-14 20:18:24Z simonetripodi $ */ + +#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/css/dependency-check-jenkins/css/site.css b/css/dependency-check-jenkins/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/css/dependency-check-jenkins/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/css/dependency-check-jenkins/images/accessories-text-editor.png b/css/dependency-check-jenkins/images/accessories-text-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..abc3366edad864f1c06e1354c2f7cd0ee1f2a080 GIT binary patch literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z!(tV6XFWw9$CP!U~&MEL_-~2 zturUYuc~G2k7NQOAQwpPnVm8{M-46l)ZW(7+}_y&l!c=+t7L#iU0Nn~YlG3l-F|15 z@P0VoetaRz%cI#-`!i3iRywta^WbvRtIMVKukt^?RPfMZskwP_>zl3S&Y%79fJLFr)R5u{`~pcwQJ|jo!h;8_nch0Czn_4o{=~$Tdkui?!}82 zPoF-0^5jWpw9vyV8+S~Jn~|&5P#DqD)^z{={fV`486gG>yE10vs7-0jnK^T2duMA= zxOS1hU{#Kw#hCr%tWa%9@{DF+T5IJs^5$&)9i&zL%I{+xaL_HEjdBN!3HH6)q7{X9{`;59Zq8_K&a?NFvhbtJ!a#ML1s;*b3=G^r zHn%V%!>lqE9PESpH$neQx=aVO*B2%Y?K6$dU zvO@Al$kmjqrY2jrl%|w^{UQ0|3oj3EZ%?m}Pw82fGm<}abk?qEJm7ZynqNRiHh(Bgn?ad9p@g!lX0?hAY$6qZbCW z0lmYZTH+c}l9E`GYL#4+3Zxi}3=9o*fylrz#K6+Z#K6kbLfgR5%D~`Tz=gvo8glbf ZGSez?YiQ@qs0V6b@O1TaS?83{1OS^WRoMUl literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/add.gif b/css/dependency-check-jenkins/images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..1cb3dbf936e38b5c5efdc3e247a042eb1b1d23e9 GIT binary patch literal 397 zcmV;80doFFNk%w1VGsZi0Hrwqfq{XHjC_`scb}hfo}Qksu4?V%HuUQ#_Ut72?;iT^ zBKq(m_wPpc?_K-yJooTv`tnWp@M`+UP{`_CX>@2HM@dakAa8CUVIWOmV*nxf1OW;FKL9KM0000G01yBG z28=)gU`QMW1_i@!3CKC0&ddYCI52ah&u7HtL@q0qBk^l$xg^p?lB(HEigIo{N|QVi z)(zKM$kAyhAQ&1iFcb)XbtESzDjgOT6Af33jV>-IB_SdLSAi#(F{3g$0H2JZE~KTW ra*U!eGBdQMSC^|Yvokcda+j>Uy{=7A#!jw6Max43OV7~J&_Mt@cAw$D literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/apache-maven-project-2.png b/css/dependency-check-jenkins/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c096ec0c7d50ecca14e76dd49b1fcb9382c3d07 GIT binary patch literal 33442 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 AyZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/contact-new.png b/css/dependency-check-jenkins/images/contact-new.png new file mode 100644 index 0000000000000000000000000000000000000000..ebc4316d844dea7c644b636a768348a4a105fefe GIT binary patch literal 736 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z~~#`6XFWw{(0&D=T+#RHwAw` z&Hnpo&YySH^B2wT=xUuXq4DDJ;vXMY{rmmm?~n68U)N8b+W+is-}IT2Cr_OKQ8Rn) zjLlm%?%28R-u1=5z8w7b_w%10wGpKB`?6U6pFe*dJ9ccrf(7f>ue)&m)R!-BCQRynbY{!R9*ZYy+@7p-UY@S-`Sa%w zA3nT)|NhsnUlS(vzIpp-Vt+(alI*llmi}Ot{8X*wt1GWuxpMjPD8G_FtAwYlM(@+7PjBA5dHwqJt5>i7{Q0y0(1MB6!uuu%PnZ(1WB07bk00N^ zfB)XSdp~~s0NV5M7AY?6_YmX)lQk*=z#qM@b= z;jzxa-qG&i{`U`D;5cDwW@u`>eZ!Vb+cs`xE_y2~Gk1<|Ow8SwyS5T3HhcHf*8Kf* zmx-x4rs2+m2^The=s2c1x z@?`Pi#gUPb%a$!mPfyRv%4%q+zjyD}h7B7sGBPqVGdnvwA3b_>`}XY_GiFp&ROIC3 zBqk>2=H`C-^y%l%pKss3eemGH!-o&gojcdo*4Ee8cjwNX^XJbmU%q_Jnl)d(e3_rK zQ5)znu96_XUAfnlM+?I*J`vNB)4cy(~cFE%!y3*C+dtm|AkbLP(0rAtI-WalPl zXQ#h^a3Yue>8TkOmX^DBoNC%>bIn0P>y;XJk*Kt_xlBQUk->(IhZxnF8MX%rzU~pe z)edx+YKdz^NlIc#s#S7PDv)9@GB7mM1tJ5>5Ccmq69X$#3vB~KD+7aX0T&LVXvob^ Z$xN%nt)ZPaqaLV%!PC{xWt~$(69B9}1)l%_ literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/drive-harddisk.png b/css/dependency-check-jenkins/images/drive-harddisk.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ce475f83900cfe56bc5374932b5bf2ca4dbc8d GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zC&II^`xaJjPLr`yjcXv-mMOEp) zfB$~|{Q2qgr}E0uH*ep*0fM(c8pHz9pFVy1{{8!_SFc~e@M|D=_4?z-kMG~VfBN+4 z=g*&?JbCir!-ub5zrK9=^4G6l&z?Q|^5x6(=g-S4OG?X&9zTA3@7}!^FJ6?E7oReKBW~hUcb538A@(YtL-+^H_dcdDlJpJ=Y$-@O`Fz zG@0+R=gebQ3|6LQE_?ex(qMMck(v6_v=g$+AOFmI(3&Wse&EvEy!Sf~KCI~aV|0G{ zk1FrS2B$YEFiv@18F*(Wd((ez|EgADxttge3!oF5szM@4obz*YQ}ap~7&xwf_C2e8 zRrlN)FW64!{5l*E!$tK_0oAjM#0U}&fdLejY7 zI~FXQH)-jvha*6u#Df8X9ChYuY)a%k^~E2mDLxODNt zmCKi|T)zC|@uR1YAH8|~^39u9@7}$6_wMcc_wPP@0HXIFK79E6`SZ7LU%!9<{_EGT z|C9m6e^Smxsfi`2DGKG8B^e6tp1uJJ`FRS73ciWS42nNl7`Yhi8FUzc0OVr^w%h~r z3p{khINcN{dHm3sxp?^`71bH@yqi{KNeBh-JDpc0PP#ir~m)} literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/icon_error_sml.gif b/css/dependency-check-jenkins/images/icon_error_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..12e9a01a930c8dfa20992254a9c2b19272d1d491 GIT binary patch literal 633 zcmZ?wbhEHb6krfwIF`;38Xg=L5fUB=M4=H;VNo&RafvaB$?-`k33&xMO~v8m6{R(` zl?_dGEv=0$ZA~rhO>G^`?Hw)coj}yu(b?MG)!Nb3($Ur0+1)m2a{u;z-^o)aPMJDs z`t(UNXHAo#m!w{g?@=WBc~Zm8X~W#g8u zo3?D*v~~ODZQHl}UT^n%gZ1x?R=+k`T;JBTW7oDFySD${^*eoz@Oc*hmRckzCZ2A(L+a%9{G7V>Fe>N z^XJe0KGXR7Y}4;^^*`^=|M7h0?^~=l4^&mpY`6;P-`9HR5qr6O1d8TwsR`3>b@UzlT;FtFnna2=nZ#cumG*CCfUXh`R z+r!d5z(O-R)XZE>lB1r*D>%&0R$Il*Mn_6Qf{%sS(JIbXUpX=*NJ;FP;1pg}V|6*} zv?MJFQE_3;iOj5Q?9#Ex;l6qz5+~F=Ii~BU9y&2WMUzuPiAOcCQYbJ`P)$^n_v8t~ IKm`VC0O`0&yZ`_I literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/icon_help_sml.gif b/css/dependency-check-jenkins/images/icon_help_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..aaf20e6eea4148fe8fbb09bdf4595eb98334fff6 GIT binary patch literal 1072 zcmZ?wbhEHb6krfwcs`v$!K+=-yF&?xd^(hUI+cApRs6bC{eh@k&A(ecpj#`rPbZ{T zHx!8a^g{b}!zSp5_v=SYG>n*N6g|Zlh+?Lg#7s4dnQRg})go?+MZ$E8gc;Te)2xza zS|`u4Ntxx4KG!L8zI)~z=dAgzISbu#7kcN-_sn1Ho4>%jXsJ)pQs3fbfo02sDpp2R zERC#K7E-k)vT8+i)$*{KwK3JpV{2AK)o)0wTb10nI<9$BO4FK@rnRX}Ym!%=V3`o!hfJHsy3|$nM;n-n}!oduvYb_N=~Lg}qy|`*#=hZ!es< zJAcyNg30?!r|d17cCdKb!IJ3*D`y_8n0>Tq?!mT&hdUP@>REWOXVJm#rN<{MJ>0+I z#FUlCrmQ_Pd;RIzn=UTca(=iaqXVV+mGGa zb@J}slehPtx^v*n-9zW@9lP}K#FZzfu01_{?di$u&(B2A zoI?4BMCM#(ZeZdNx5?S*;=#(TTgt)U(ejX?g-3ph&!#D=Y`v;IOgUFKENEgEY}K2& zbK&FTQ{0&t&PXaHI(LYby<^~<)WRug%f?Vsn9S(HDV}gdq)=(8*E}P}f0hC+DlA;` z)Ad{zHa+cG#KBxFQ?<#-BSSmll8aH3zyUtzf;|p9o6`Ijt8uE?Ni?%hQnAZc^O50L PaG-&a!$_HjgTWdA|E#c| literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/icon_info_sml.gif b/css/dependency-check-jenkins/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..b776326703c341ce559f98f028bb92fe4c332a83 GIT binary patch literal 638 zcmZ?wbhEHb6krfwI99}9U|?WrY3AnUX5m?3;Z0M>*4P;bV`&8Ka zl-c-J*!q^)`BgduR5=D#I|r7#hSa%**1Lx{c!gJaL^OLwwt7Xic}F+L#o2`7dnmC(1Rt2?c3!lt^38_VY&t(beHXZDWXIXh-7+1tM2%&evRR;+4S zwr0k}b!V5aoiTgei6v_fuiiLg?#^pV_uW{w@5aglH&-3Jx&6@9oky;1J$7sB@!MNZ zJveyg`hg3N4_$b0@Y0i`mmVIv{N(WECzr2oIC}Nz@oP^{UVDDw>Vp&4U!1=A;>^t# zmu@{ecl+ht`>QY9eSP`<>nji5TzT;J+QYXu9=*N!_}$}YyB<7!`{3D|d(S`KfBxyw z^Y`~(e0uQm)1z0PU%x&0;{BHw@4vo%|K;_EudhFRd-L)8=Wi$9eg5(O^Y^bmPJRCV z>&y3FUw{1i{`2>*-+zDo`TOV3-~U7d#ecdQ$(jmA1_mYyUWwVINeaOwshN4HMO<9Y zMX8A;sVNHOnI#ztAsML(?w-B@42nNl7`Yhg8FUzc02GM~?5i5;o0>S;m|56)n!B60 zjgkxVVs!X>ns_~P6XU}IL#+gR_>6Khb5di2o!vBrx&@MxvJ29p102vbQyButm$y)r=@GSbQ7fuf zG&hu(RxhgI;Nx!Xk#a$OMKhbYL0W}^MFz8kslSGfx4@b6vWfA)m`-W&brNWq_@1%Hm^{yEe1`?BYsvn_wmHvhTm`R8WJ@7psnMoCG5mA-y?dAS}$C^BFZzMd3&ORu3u6b1u&a%gnW4I(EOT#*fRVX@ zj=Hjv*wR)(6J1pWB^l0kHf~;N6*);RcGfnA&uq+0JK1LSU+Ld<{2%8ZVGags09itc As{jB1 literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/icon_warning_sml.gif b/css/dependency-check-jenkins/images/icon_warning_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac6ad6ada39ea693ac0500810196fe551833b2d0 GIT binary patch literal 625 zcmZ?wbhEHb6krfwI99~a)zjYH+tJh8+1uaM2SgLPCr;{|FsXOac1bJ1)uHC+K>&~59ckkZ5d-v|2$A0(j-F^3{>(7(0`}gnuc^UfX z@x#ZDA3c8Z_|NN&Cy&7yo%%@b}sNzt0Z-eYxt-yV^f*C;fTf`1eES z-w!>1J}>_JdEuYWOa6Xd^!Lk}zhBn<{kq}rw|)P9oc;IX{NEo}|Ngl7@B5>FKhOXB zdEwvh=l_1c{P*YWzd!H({eA!M@Av;i1I2$*&PAz-C8;S2<(VZJ3hti10Sftf3W*B7 ziOCF#KUo;L80r~x7=Qp2V+`yY8tR*xTUy(i#HHHXrMkN7MWySl%=MJ(rA6DMjY2bX z(u0-cWZJ_D^HP)IBjwwzGV=?v5~Cw*Wm|eJbJMa@;-dULC8WeVqzp2WlM-S=yxk;w zTU5hiJ%ZG^dBjB8Rrm$j6kTluIQSS_WQ2shECQX()EphTT0}XuoqXM`9onu0Tx4Ka w$mp{`;N!m2?G#bv7+&QNR_PU4c>CU?Yd7!v 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/logos/build-by-maven-white.png b/css/dependency-check-jenkins/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/logos/maven-feather.png b/css/dependency-check-jenkins/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/network-server.png b/css/dependency-check-jenkins/images/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d12e1938ac4d8817701a555a97b36a42413ff7f GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh0wlLOK8*rWOiAAEE({6J?VYlKJkA1-$YKTt zZXpn6ymYtj4+8_EfTxRNh{R>v^Lzb75+zt4q?_IE(UC6ToMFIeXrjjU_Pbcl8wEu* zmFNogJ4~&tCL!OBSWj@$7M9kE%GC+rI&-8+^}#zUfge$ z%95%FVq)d@YWpHh0*~9IeYCDS=DEjWT6&NB;?38!S{%Af^K0ULzq^XpMf{AfPW9%` z{By-F@#G`{r|bn{ZSl6`PhU_~!26>8WB9W7wxA3jxWq>uP}{$dFi` z{%E$YFs9ZZ#)XBd3yahj7HcdhP@0i0c5-Fei4|q1R+pb%U2$f0$(hxq%c@PLC-F^7 z;+vfzx~NcTNs0RMD#LrH*W5ZZ>(GMCN2iutSY3E&UD>s*_1Cu4-#;|z!_Cdtc6J?G zUUG6}>4z(;KU`e+;r#6P=Vrb?Gxgo+Deq2AczdGv?eU&>7nf}8_Wf{u{fF!8K3rS- z;o6$_*H*v3y88XKb$9o403A6wmUUi^)Rkq4C;QDWElr%4Ewvz5_U@*FYx8|>Z^)aU zBeO7H?&+SoN9z+G?W$goC%33j@%7nxua0&%tapcEij439aV6bJZW8_q7iNx>mKsHKHUXu_VbP0l+XkKAq+)H literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/profiles/pre-release.png b/css/dependency-check-jenkins/images/profiles/pre-release.png new file mode 100644 index 0000000000000000000000000000000000000000..d448e850cd3f885844d0c28da7dddf4457e25300 GIT binary patch literal 32607 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 IO1}yIe}jHRegFUf literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/profiles/retired.png b/css/dependency-check-jenkins/images/profiles/retired.png new file mode 100644 index 0000000000000000000000000000000000000000..f89f6a29c6b61beafd8d2f729085fbf1d17b0e86 GIT binary patch literal 22003 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/images/profiles/sandbox.png b/css/dependency-check-jenkins/images/profiles/sandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..f88b3626761f591fefcb7408ff290b4f48ebe0d9 GIT binary patch literal 33010 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 OGkCiCxvXLW=UkO8ip# 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 B7G?kd literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/img/glyphicons-halflings.png b/css/dependency-check-jenkins/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 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 literal 0 HcmV?d00001 diff --git a/css/dependency-check-jenkins/index.html b/css/dependency-check-jenkins/index.html new file mode 100644 index 000000000..fb90dc9f2 --- /dev/null +++ b/css/dependency-check-jenkins/index.html @@ -0,0 +1,173 @@ + + + + + + + + + dependency-check-jenkins - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    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.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-jenkins/license.html b/css/dependency-check-jenkins/license.html new file mode 100644 index 000000000..f0f10c384 --- /dev/null +++ b/css/dependency-check-jenkins/license.html @@ -0,0 +1,771 @@ + + + + + + + + + dependency-check-jenkins - Project License + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    +
    +

    Overview

    +

    Typically the licenses listed for the project are that of the project itself, and not of dependencies.

    +
    +

    Project License

    +
    +

    GNU General Public License version 3

    [Original text] +

    Copy of the license follows.

    + + + + +
    +

    +English [en]   +العربية [ar]   +català [ca]   +Deutsch [de]   +ελληνικά [el]   +español [es]   +français [fr]   +italiano [it]   +日本語 [ja]   +Nederlands [nl]   +polski [pl]   +português do Brasil [pt-br]   +русский [ru]   +Shqip [sq]   +српски [sr]   +简体中文 [zh-cn]   +繁體中文 [zh-tw]   +

    +
    + + + + +
    + + + + + + + + + +
    + + +

    Licenses

    + +

    +Published software should be free +software. To make it free software, you need to release it +under a free software license. We normally use the GNU General Public License (GNU GPL), +but occasionally we use other +free software licenses. We use only licenses that are compatible +with the GNU GPL for GNU software. +

    + +

    +Documentation for free software should be +free documentation, so that +people can redistribute it and improve it along with the software +it describes. To make it free documentation, you need to release +it under a free documentation license. We normally use the +GNU Free Documentation License (GNU +FDL), but occasionally we use +other free +documentation licenses. +

    + +

    If you've started a new project and you're not sure what license to +use, “How to +choose a license for your own work” details our +recommendations in an easy-to-follow guide. If you just want a quick +list reference, we have a page that names +our recommended +copyleft licenses.

    + +

    We also have a page that discusses the BSD License Problem.

    + +

    +Our documentation licenses are currently being revised, and we welcome +your comments on the proposed texts. Please +visit our license update site to +read the current drafts and participate in the process. +

    + +

    Common Resources for our Software Licenses

    + +

    We have a number of resources to help people understand and use our +various licenses:

    + + + +

    The GNU General Public License

    + +

    +The GNU General Public License is often called the GNU GPL for short; +it is used by most GNU programs, and by more than half of all free +software packages. The latest version is version 3. +

    + + + +

    The GNU Lesser General Public License

    + +

    +The GNU Lesser General Public License is used by a few (not by any means +all) GNU libraries. The latest version is version 3. +

    + + + +

    The GNU Affero General Public License

    + +

    +The GNU Affero General Public License is based on the GNU GPL, but has an +additional term to allow users who interact with the licensed software over +a network to receive the source for that program. We recommend that people +consider using the GNU AGPL for any software which will commonly be run +over a network. The latest version is version 3. +

    + +
      +
    • The GNU Affero General Public License text is available in + these formats: + HTML, + plain text, + Docbook, + Texinfo, and + LaTeX. +These documents are not formatted for standalone publishing, and +are intended to be included in another document.
    • +
    • Why the Affero GPL
    • +
    + +

    The GNU Free Documentation License

    + +

    +The GNU Free Documentation License is a form of copyleft intended +for use on a manual, textbook or other document to assure everyone +the effective freedom to copy and redistribute it, with or without +modifications, either commercially or non-commercially. The latest version +is 1.3. +

    + + + +

    Exceptions to GNU Licenses

    + +

    Some GNU programs have additional permissions or special exceptions + to specific terms in one of the main licenses. Since some of those + are commonly used or inspire a lot of questions on their own, we've + started collecting them on + our exceptions page.

    + +

    License URLs

    + +

    When linking to our licenses, it's usually best to link to the latest +version; hence the standard URLs such as +http://www.gnu.org/licenses/gpl.html have no version number. +Occasionally, however, you may want to link to a specific version of a +given license. In those situations, you can use the following links +[skip links]:

    + +
    +
    GNU General Public License (GPL)
    + +
    GPLv3, +GPLv2, +GPLv1
    + +
    GNU Lesser General Public License (LGPL)
    +
    LGPLv3, +LGPLv2.1
    + +
    GNU Affero General Public License (AGPL)
    +
    GNU + AGPLv3 (The Affero General + Public License version 1 is not a GNU license, but it was + designed to serve a purpose much like the GNU AGPL's.)
    + +
    GNU Free Documentation License (FDL)
    +
    FDLv1.3, +FDLv1.2, +FDLv1.1
    +
    + +

    Stable links to each license's alternative + formats are available on its respective page. Not every version of + every license is available in every format. If you need one that is + missing, please email us.

    + +

    See also the old licenses page.

    + + +

    Unofficial Translations

    + +

    +Legally speaking, the original (English) version of the licenses is what +specifies the actual distribution terms for GNU programs and others that +use them. But to help people better understand the licenses, we give +permission to publish translations into other languages provided that +they follow our regulations for unofficial translations: +

    + + + +

    Verbatim Copying and Distribution

    + +

    The standard copyright terms for GNU web pages is now the Creative +Commons Attribution-NoDerivs 3.0 United States License. It used to +be (and for a few pages still is): Verbatim +copying and distribution of this entire article are permitted worldwide, +without royalty, in any medium, provided this notice is +preserved. Please note the following commentary about this +“verbatim license” by Eben Moglen:

    + +

    +“Our intention in using the phrase ‘verbatim copying in +any medium’ is not to require retention of page headings and +footers or other formatting features. Retention of weblinks in both +hyperlinked and non-hyperlinked media (as notes or some other form of +printed URL in non-HTML media) is required”. +

    + +

    List of Free Software Licenses

    + +
      +
    • + List of Free Software Licenses + +

      If you are contemplating writing a new license, please contact the +FSF by writing to <licensing@fsf.org>. The +proliferation of different free software licenses means increased work +for users in understanding the licenses; we may be able to help you +find an existing Free Software license that meets your needs. +

      + +

      +If that isn't possible, if you really need a new license, with our +help you can ensure that the license really is a Free Software license +and avoid various practical problems. +

      + +
    • +
    + + +

    What Is Copyleft?

    + +

    +Copyleft is a general +method for making a program free +software and requiring all modified and extended versions of the +program to be free software as well. +

    + +

    +The simplest way to make a program free is to put it in the +public +domain, uncopyrighted. This allows people to share the program +and their improvements, if they are so minded. But it also allows +uncooperative people to convert the program into +proprietary +software. They can make changes, many or few, and distribute the +result as a proprietary product. People who receive the program in +that modified form do not have the freedom that the original author +gave them; the middleman has stripped it away. +

    + +

    +In the GNU project, our aim is +to give all users the freedom to redistribute and change GNU +software. If middlemen could strip off the freedom, we might have +many users, but those users would not have freedom. So instead of +putting GNU software in the public domain, we “copyleft” +it. Copyleft says that anyone who redistributes the software, with or +without changes, must pass along the freedom to further copy and +change it. Copyleft guarantees that every user has freedom. +

    + +

    +Copyleft also provides an +incentive +for other programmers to add to free software. +Important free programs such as the GNU C++ compiler exist +only because of this. +

    + +

    +Copyleft also helps programmers who want to contribute +improvements to +free software get permission to +do that. These programmers often work for companies or universities +that would do almost anything to get more money. A programmer may +want to contribute her changes to the community, but her employer may +want to turn the changes into a proprietary software product. +

    + +

    +When we explain to the employer that it is illegal to distribute the +improved version except as free software, the employer usually decides +to release it as free software rather than throw it away. +

    + +

    +To copyleft a program, we first state that it is copyrighted; then +we add distribution terms, which are a legal instrument that gives +everyone the rights to use, modify, and redistribute the program's +code or any program derived from it but only if the +distribution terms are unchanged. Thus, the code and the freedoms +become legally inseparable. +

    + +

    +Proprietary software developers use copyright to take away the users' +freedom; we use copyright to guarantee their freedom. That's why we +reverse the name, changing “copyright” into +“copyleft”. +

    + +

    +Copyleft is a general concept; there are many ways to fill in the +details. In the GNU Project, the specific distribution terms that we +use are contained in the GNU General Public License, the GNU Lesser +General Public License and the GNU Free Documentation License. +

    + +

    +The appropriate license is included in many manuals and in each GNU +source code distribution. +

    + +

    +The GNU GPL is designed so that you can easily apply it to your own +program if you are the copyright holder. You don't have to modify the +GNU GPL to do this, just add notices to your program which refer +properly to the GNU GPL. Please note that you must use the +entire text of the GPL, if you use it. It is an integral whole, and +partial copies are not permitted. (Likewise for the LGPL, AGPL, and FDL.) +

    + +

    +Using the same distribution terms for many different programs makes it +easy to copy code between various different programs. Since they all +have the same distribution terms, there is no need to think about +whether the terms are compatible. The Lesser GPL includes a +provision that lets you alter the distribution terms to the ordinary +GPL, so that you can copy code into another program covered by the GPL. +

    + +

    Licenses for Other Types of Works

    + +

    +We believe that published software and documentation should be +free software and free documentation. +We recommend making all sorts of educational and reference works free +also, using free documentation licenses such as the +GNU Free Documentation License (GNU FDL). +

    + +

    For essays of opinion and scientific papers, we recommend +either the Creative +Commons Attribution-NoDerivs 3.0 United States License, or the +simple “verbatim copying only” license stated above.

    + +

    +We don't take the position that artistic or entertainment works must +be free, but if you want to make one free, we recommend +the Free Art +License.

    + +
    + + +
    + + + +
    + +

    The Free Software +Foundation is the principal organizational sponsor of the GNU Operating System. Our +mission is to preserve, protect and promote the freedom to use, study, +copy, modify, and redistribute computer software, and to defend the +rights of Free Software users. Support GNU and the FSF by buying manuals and gear, joining the FSF as an associate +member or by making a +donation, either directly to the FSF +or via Flattr.

    + +

    back to top

    + + + + +
    + + +
    + + + + +
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-jenkins/project-info.html b/css/dependency-check-jenkins/project-info.html new file mode 100644 index 000000000..b8f026a53 --- /dev/null +++ b/css/dependency-check-jenkins/project-info.html @@ -0,0 +1,178 @@ + + + + + + + + + dependency-check-jenkins - Project Information + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Information

    +

    This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by Maven on behalf of the project.

    +
    +

    Overview

    + + + + + + + + + + + + +
    DocumentDescription
    AboutThis plug-in can independently execute a Dependency-Check analysis and visualize the results.
    Project SummaryThis document lists other related information of this project
    Project LicenseThis is a link to the definitions of project licenses.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/dependency-check-jenkins/project-summary.html b/css/dependency-check-jenkins/project-summary.html new file mode 100644 index 000000000..c5d4f5e9a --- /dev/null +++ b/css/dependency-check-jenkins/project-summary.html @@ -0,0 +1,207 @@ + + + + + + + + + dependency-check-jenkins - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    NameDependency-Check Jenkins Plugin
    DescriptionThis plug-in can independently execute a Dependency-Check analysis and visualize the results.
    Homepagehttp://wiki.jenkins-ci.org/display/JENKINS/OWASP+Dependency-Check+Plugin
    +
    +

    Project Organization

    + + + + + + + + + +
    FieldValue
    NameOWASP
    URLhttp://www.owasp.org
    +
    +

    Build Information

    + + + + + + + + + + + + + + + +
    FieldValue
    GroupIdorg.owasp
    ArtifactIddependency-check-jenkins
    Version1.0.6
    Typepom
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/images/accessories-text-editor.png b/css/images/accessories-text-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..abc3366edad864f1c06e1354c2f7cd0ee1f2a080 GIT binary patch literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z!(tV6XFWw9$CP!U~&MEL_-~2 zturUYuc~G2k7NQOAQwpPnVm8{M-46l)ZW(7+}_y&l!c=+t7L#iU0Nn~YlG3l-F|15 z@P0VoetaRz%cI#-`!i3iRywta^WbvRtIMVKukt^?RPfMZskwP_>zl3S&Y%79fJLFr)R5u{`~pcwQJ|jo!h;8_nch0Czn_4o{=~$Tdkui?!}82 zPoF-0^5jWpw9vyV8+S~Jn~|&5P#DqD)^z{={fV`486gG>yE10vs7-0jnK^T2duMA= zxOS1hU{#Kw#hCr%tWa%9@{DF+T5IJs^5$&)9i&zL%I{+xaL_HEjdBN!3HH6)q7{X9{`;59Zq8_K&a?NFvhbtJ!a#ML1s;*b3=G^r zHn%V%!>lqE9PESpH$neQx=aVO*B2%Y?K6$dU zvO@Al$kmjqrY2jrl%|w^{UQ0|3oj3EZ%?m}Pw82fGm<}abk?qEJm7ZynqNRiHh(Bgn?ad9p@g!lX0?hAY$6qZbCW z0lmYZTH+c}l9E`GYL#4+3Zxi}3=9o*fylrz#K6+Z#K6kbLfgR5%D~`Tz=gvo8glbf ZGSez?YiQ@qs0V6b@O1TaS?83{1OS^WRoMUl literal 0 HcmV?d00001 diff --git a/css/images/add.gif b/css/images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..1cb3dbf936e38b5c5efdc3e247a042eb1b1d23e9 GIT binary patch literal 397 zcmV;80doFFNk%w1VGsZi0Hrwqfq{XHjC_`scb}hfo}Qksu4?V%HuUQ#_Ut72?;iT^ zBKq(m_wPpc?_K-yJooTv`tnWp@M`+UP{`_CX>@2HM@dakAa8CUVIWOmV*nxf1OW;FKL9KM0000G01yBG z28=)gU`QMW1_i@!3CKC0&ddYCI52ah&u7HtL@q0qBk^l$xg^p?lB(HEigIo{N|QVi z)(zKM$kAyhAQ&1iFcb)XbtESzDjgOT6Af33jV>-IB_SdLSAi#(F{3g$0H2JZE~KTW ra*U!eGBdQMSC^|Yvokcda+j>Uy{=7A#!jw6Max43OV7~J&_Mt@cAw$D literal 0 HcmV?d00001 diff --git a/css/images/apache-maven-project-2.png b/css/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c096ec0c7d50ecca14e76dd49b1fcb9382c3d07 GIT binary patch literal 33442 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 AyZ`_I literal 0 HcmV?d00001 diff --git a/css/images/contact-new.png b/css/images/contact-new.png new file mode 100644 index 0000000000000000000000000000000000000000..ebc4316d844dea7c644b636a768348a4a105fefe GIT binary patch literal 736 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F?i!z~~#`6XFWw{(0&D=T+#RHwAw` z&Hnpo&YySH^B2wT=xUuXq4DDJ;vXMY{rmmm?~n68U)N8b+W+is-}IT2Cr_OKQ8Rn) zjLlm%?%28R-u1=5z8w7b_w%10wGpKB`?6U6pFe*dJ9ccrf(7f>ue)&m)R!-BCQRynbY{!R9*ZYy+@7p-UY@S-`Sa%w zA3nT)|NhsnUlS(vzIpp-Vt+(alI*llmi}Ot{8X*wt1GWuxpMjPD8G_FtAwYlM(@+7PjBA5dHwqJt5>i7{Q0y0(1MB6!uuu%PnZ(1WB07bk00N^ zfB)XSdp~~s0NV5M7AY?6_YmX)lQk*=z#qM@b= z;jzxa-qG&i{`U`D;5cDwW@u`>eZ!Vb+cs`xE_y2~Gk1<|Ow8SwyS5T3HhcHf*8Kf* zmx-x4rs2+m2^The=s2c1x z@?`Pi#gUPb%a$!mPfyRv%4%q+zjyD}h7B7sGBPqVGdnvwA3b_>`}XY_GiFp&ROIC3 zBqk>2=H`C-^y%l%pKss3eemGH!-o&gojcdo*4Ee8cjwNX^XJbmU%q_Jnl)d(e3_rK zQ5)znu96_XUAfnlM+?I*J`vNB)4cy(~cFE%!y3*C+dtm|AkbLP(0rAtI-WalPl zXQ#h^a3Yue>8TkOmX^DBoNC%>bIn0P>y;XJk*Kt_xlBQUk->(IhZxnF8MX%rzU~pe z)edx+YKdz^NlIc#s#S7PDv)9@GB7mM1tJ5>5Ccmq69X$#3vB~KD+7aX0T&LVXvob^ Z$xN%nt)ZPaqaLV%!PC{xWt~$(69B9}1)l%_ literal 0 HcmV?d00001 diff --git a/css/images/drive-harddisk.png b/css/images/drive-harddisk.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ce475f83900cfe56bc5374932b5bf2ca4dbc8d GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zC&II^`xaJjPLr`yjcXv-mMOEp) zfB$~|{Q2qgr}E0uH*ep*0fM(c8pHz9pFVy1{{8!_SFc~e@M|D=_4?z-kMG~VfBN+4 z=g*&?JbCir!-ub5zrK9=^4G6l&z?Q|^5x6(=g-S4OG?X&9zTA3@7}!^FJ6?E7oReKBW~hUcb538A@(YtL-+^H_dcdDlJpJ=Y$-@O`Fz zG@0+R=gebQ3|6LQE_?ex(qMMck(v6_v=g$+AOFmI(3&Wse&EvEy!Sf~KCI~aV|0G{ zk1FrS2B$YEFiv@18F*(Wd((ez|EgADxttge3!oF5szM@4obz*YQ}ap~7&xwf_C2e8 zRrlN)FW64!{5l*E!$tK_0oAjM#0U}&fdLejY7 zI~FXQH)-jvha*6u#Df8X9ChYuY)a%k^~E2mDLxODNt zmCKi|T)zC|@uR1YAH8|~^39u9@7}$6_wMcc_wPP@0HXIFK79E6`SZ7LU%!9<{_EGT z|C9m6e^Smxsfi`2DGKG8B^e6tp1uJJ`FRS73ciWS42nNl7`Yhi8FUzc0OVr^w%h~r z3p{khINcN{dHm3sxp?^`71bH@yqi{KNeBh-JDpc0PP#ir~m)} literal 0 HcmV?d00001 diff --git a/css/images/icon_error_sml.gif b/css/images/icon_error_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..12e9a01a930c8dfa20992254a9c2b19272d1d491 GIT binary patch literal 633 zcmZ?wbhEHb6krfwIF`;38Xg=L5fUB=M4=H;VNo&RafvaB$?-`k33&xMO~v8m6{R(` zl?_dGEv=0$ZA~rhO>G^`?Hw)coj}yu(b?MG)!Nb3($Ur0+1)m2a{u;z-^o)aPMJDs z`t(UNXHAo#m!w{g?@=WBc~Zm8X~W#g8u zo3?D*v~~ODZQHl}UT^n%gZ1x?R=+k`T;JBTW7oDFySD${^*eoz@Oc*hmRckzCZ2A(L+a%9{G7V>Fe>N z^XJe0KGXR7Y}4;^^*`^=|M7h0?^~=l4^&mpY`6;P-`9HR5qr6O1d8TwsR`3>b@UzlT;FtFnna2=nZ#cumG*CCfUXh`R z+r!d5z(O-R)XZE>lB1r*D>%&0R$Il*Mn_6Qf{%sS(JIbXUpX=*NJ;FP;1pg}V|6*} zv?MJFQE_3;iOj5Q?9#Ex;l6qz5+~F=Ii~BU9y&2WMUzuPiAOcCQYbJ`P)$^n_v8t~ IKm`VC0O`0&yZ`_I literal 0 HcmV?d00001 diff --git a/css/images/icon_help_sml.gif b/css/images/icon_help_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..aaf20e6eea4148fe8fbb09bdf4595eb98334fff6 GIT binary patch literal 1072 zcmZ?wbhEHb6krfwcs`v$!K+=-yF&?xd^(hUI+cApRs6bC{eh@k&A(ecpj#`rPbZ{T zHx!8a^g{b}!zSp5_v=SYG>n*N6g|Zlh+?Lg#7s4dnQRg})go?+MZ$E8gc;Te)2xza zS|`u4Ntxx4KG!L8zI)~z=dAgzISbu#7kcN-_sn1Ho4>%jXsJ)pQs3fbfo02sDpp2R zERC#K7E-k)vT8+i)$*{KwK3JpV{2AK)o)0wTb10nI<9$BO4FK@rnRX}Ym!%=V3`o!hfJHsy3|$nM;n-n}!oduvYb_N=~Lg}qy|`*#=hZ!es< zJAcyNg30?!r|d17cCdKb!IJ3*D`y_8n0>Tq?!mT&hdUP@>REWOXVJm#rN<{MJ>0+I z#FUlCrmQ_Pd;RIzn=UTca(=iaqXVV+mGGa zb@J}slehPtx^v*n-9zW@9lP}K#FZzfu01_{?di$u&(B2A zoI?4BMCM#(ZeZdNx5?S*;=#(TTgt)U(ejX?g-3ph&!#D=Y`v;IOgUFKENEgEY}K2& zbK&FTQ{0&t&PXaHI(LYby<^~<)WRug%f?Vsn9S(HDV}gdq)=(8*E}P}f0hC+DlA;` z)Ad{zHa+cG#KBxFQ?<#-BSSmll8aH3zyUtzf;|p9o6`Ijt8uE?Ni?%hQnAZc^O50L PaG-&a!$_HjgTWdA|E#c| literal 0 HcmV?d00001 diff --git a/css/images/icon_info_sml.gif b/css/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..b776326703c341ce559f98f028bb92fe4c332a83 GIT binary patch literal 638 zcmZ?wbhEHb6krfwI99}9U|?WrY3AnUX5m?3;Z0M>*4P;bV`&8Ka zl-c-J*!q^)`BgduR5=D#I|r7#hSa%**1Lx{c!gJaL^OLwwt7Xic}F+L#o2`7dnmC(1Rt2?c3!lt^38_VY&t(beHXZDWXIXh-7+1tM2%&evRR;+4S zwr0k}b!V5aoiTgei6v_fuiiLg?#^pV_uW{w@5aglH&-3Jx&6@9oky;1J$7sB@!MNZ zJveyg`hg3N4_$b0@Y0i`mmVIv{N(WECzr2oIC}Nz@oP^{UVDDw>Vp&4U!1=A;>^t# zmu@{ecl+ht`>QY9eSP`<>nji5TzT;J+QYXu9=*N!_}$}YyB<7!`{3D|d(S`KfBxyw z^Y`~(e0uQm)1z0PU%x&0;{BHw@4vo%|K;_EudhFRd-L)8=Wi$9eg5(O^Y^bmPJRCV z>&y3FUw{1i{`2>*-+zDo`TOV3-~U7d#ecdQ$(jmA1_mYyUWwVINeaOwshN4HMO<9Y zMX8A;sVNHOnI#ztAsML(?w-B@42nNl7`Yhg8FUzc02GM~?5i5;o0>S;m|56)n!B60 zjgkxVVs!X>ns_~P6XU}IL#+gR_>6Khb5di2o!vBrx&@MxvJ29p102vbQyButm$y)r=@GSbQ7fuf zG&hu(RxhgI;Nx!Xk#a$OMKhbYL0W}^MFz8kslSGfx4@b6vWfA)m`-W&brNWq_@1%Hm^{yEe1`?BYsvn_wmHvhTm`R8WJ@7psnMoCG5mA-y?dAS}$C^BFZzMd3&ORu3u6b1u&a%gnW4I(EOT#*fRVX@ zj=Hjv*wR)(6J1pWB^l0kHf~;N6*);RcGfnA&uq+0JK1LSU+Ld<{2%8ZVGags09itc As{jB1 literal 0 HcmV?d00001 diff --git a/css/images/icon_warning_sml.gif b/css/images/icon_warning_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac6ad6ada39ea693ac0500810196fe551833b2d0 GIT binary patch literal 625 zcmZ?wbhEHb6krfwI99~a)zjYH+tJh8+1uaM2SgLPCr;{|FsXOac1bJ1)uHC+K>&~59ckkZ5d-v|2$A0(j-F^3{>(7(0`}gnuc^UfX z@x#ZDA3c8Z_|NN&Cy&7yo%%@b}sNzt0Z-eYxt-yV^f*C;fTf`1eES z-w!>1J}>_JdEuYWOa6Xd^!Lk}zhBn<{kq}rw|)P9oc;IX{NEo}|Ngl7@B5>FKhOXB zdEwvh=l_1c{P*YWzd!H({eA!M@Av;i1I2$*&PAz-C8;S2<(VZJ3hti10Sftf3W*B7 ziOCF#KUo;L80r~x7=Qp2V+`yY8tR*xTUy(i#HHHXrMkN7MWySl%=MJ(rA6DMjY2bX z(u0-cWZJ_D^HP)IBjwwzGV=?v5~Cw*Wm|eJbJMa@;-dULC8WeVqzp2WlM-S=yxk;w zTU5hiJ%ZG^dBjB8Rrm$j6kTluIQSS_WQ2shECQX()EphTT0}XuoqXM`9onu0Tx4Ka w$mp{`;N!m2?G#bv7+&QNR_PU4c>CU?Yd7!v zCbwpHY-*pkZq44U&2v_!G_8%VTOC`oD!O{**^Adgv%311ZM*yQ#LwTaFW%i*IeA-A z@3#EzEqPsA+@fn^3;O17+V%L=xj%nD+<3I3bN>F8+54Mj?rog0*FUK-rF7ElwI|l@ z-F@uR*5x}6OkZ_k;*x`HQ`b#ib}T%j_1dlbSyhvlZ@aL3`-NrO&M)11e$xES3CS6g z=5LM8ZoPK%UO;?h*R)lgQ&+Z4T3%Gs7Z?~A8JFhdpLY4$9ZRn?yMO{)|2!MNJWKCv zW7lL`*AQR-Ky%j^YoCme)TZE+#=yjSzxZ1J`0AMC0tfGyhfkh+gctq#_3O!&WnRD# zWGV^r3!b}?Pij{wkjGiz5m^ij=<6WN=%g{b0w_4w)5S4_<9c#Jf)f)DkIxyMH30_> z9Xog6$ib6G&mKN~Twg&$h383EM^~q}hnMH+6I`bncYNaN@;arpD(jV0!n$SCw)L%> zx36)b;Ee2?q^z{O#LU!O=0~?~-L$@8ZDqN8$F9a5@8ssqn-_P_ZeQI$g*=CZfC7(< zh#mPZDl?=-Wrd~1=TDe0f#Z=Hr>ZmK4auBCMF9$P4xKx2qK`#_L7_#4?d?zg6F`Tm zmbgZgq$HN4S|t~y0x1R~14BbyATqEFF|f2UF|abV&^9o%GBEfSaN#hDhTQy=%(P0} V8rpd?>VX;$?@>Ltyyb~Vk~9a*^;C>T~aH>F|OjI}4Cz})28B`tGy zx6IuGl*;d11Jn*=WVfx!?pOz86!dNck||9qbGtUAHm*!;SeaC_v~I>upkQF;l(?Fu zK!$(XgoK(!O|y4LRxAW^T_fva%Vs6kEY1WOvNpbYaYWht@cgM!W%GeHMwHAAFP*>p z#LaWp9^8HM?%eHHyH4Jkx%T+Y`_Il_yL^=YR=(+3np1ywY?Cq61k8eKv z{P6w18!vtwJbmrr)f=zheYp4Z?XHuzA3lC^?(Un1AO7Ed{pZ-(D+f!KoxFJS-@ku<{`|Rq>+b$jH;!I*p_DfBg7y z@BaOLr*3RHa^uD8cVEAKJ8|XFj2*Z8H{WbrdTQ?GGp}B~I(XvT{7olrJb3y0_wNrM zKlZFTQ@QYL-pu3m3y)p9c5TanGYzx%Oj>p9%H3yM4xY=JawxIyKt%iQ?8*CgA2~l| z&58Qidnc|tH)G4?zBOm7X76v9wL8Cim#x0cV)K4{ zUn<42_|HnN;NRb)&+cUZ^^W(i;NN$*j}`pQWIMj!;OxKSilSZ5|NVJbz#}Nc&+ZsE zWd_h7&H|6fVg?3oVGw3ym^DWND0tS>#W95AdU8TSLQ+~{YVz|3Pm&lI^W@^9t*hDH z?dlj6`~yy$ym|EM*}I2>BV495I{Mr>ef#+J^Y#h`9!`@Q9knb}OmuW?l#H~j+@jhX z&CK-d6cr6MEmci@{pKm!DjRECtDEcV?_Ut$IMH$CiXBU~tl6_@)2dx=k@FmvZdKOG`!VuDc=fnx$+R6#>c^>b&wcOS?|$!`a}U6ptjU_J zlBA}l*3{J0)YMd0R~Hr*dU$xO^ie1jhYlTLS+=C4#MRYRCX#twGUSD6Il$6AA+=UAlkY(ZF;m4037Yc>v&!1mPsNXdliHV74&z>zUEv=}iC@U)i zfc^XTJ3BiAKvYyzczAd~K){|od(ip)`}f`5-HnZnv$L~Hzqq=(y7Kb!>gsAwPfu@e z@3gcu0LabFC4?{xBNPh18Fpy3+Tr2hfq{Yc_V$w}PjVdhGtMTH$zU){PfznaPmK)? z4KH52=;-KZX=#a#jlFZ{PF7YH!!Q{c8Taqs=Xt)UsK{tE{@>vc{2Hgh!NL0adH}e0 z@19Df^78Tm0ES@zz{SO7Zf@=upJ1_AP_bIAgpih&mWqmsojZ4GG#a&9{f)&Au~_Wm z<0F^L4;(mPHk)-io!M*-3JMa7#VIK%EBy%}_$g6IPEM9cBvPp~K0f}{t5+6_rMbEJ z(xpqcZ{G$0j^p<2+vnuu^bN3MdU`rLJ3Br;9ss7MrVbuFxUjHLQBhGX6WriQ5|M*_w z@5bUDdV71dTCG;AO-@dx@4a~OA{y)K>k+2N$jAo|9?w z?b_+nr`2k;!{M;o?Qh<^`R=>#RtFA0KR<`Vfh)Li;|5+X!otGn&U<@%H*VaBDU;Gf zr_<5=()7Iqfmk>yLj`}084`48Zf?d|M~)mpOHfeI{QNv2WMN?;Dk=&9GBY#LVzb%$ z`};Aq6GAK&OK4~)&U*g*IT{xh7M8K~%9SgtQ-;OG#ZeC5ym=F=X|vf(9h#b&K7RZN z05+S=X0xGjU|@g-%ePwl!GC`7t=5VDruDp`t9rXwq=tAb*88KQqo~N`a#V_oixKzA z%F4dJzL1cRy1F{CSUfW`qfjWeZ{Hpm7>H$yNF>V6&c<>vGBOgU_w@7}J9g~o(WA6z z#sgc0B0VlH4i&T6{Pyiz)FUDys6$s*7rnXCi!3z)!0DGJ5eITHyM2Q|E@qtti{QRD z*nbiZg+h^&lY>QINl6I+oH}*N-Q67kYHMqqoSd*@fE67^695Pa36aTU0HD+95)%{g zFw)c0Gcqy&K&4WxG906$qk6p_b=txpgmiazqaGF(M)NU+!{3cPsc^{*a`Ja$nXfZ@ zhsL%N4whw0OG`2M6&4oG&CQ8KBHBPHC@3f>C|I^a>__(qFp!^RU zV`F0uhl6EVxm><`_ijATmoHz|)ztxjL?XdmSuB<(Po5A$mM!w}C3kdS~ef}W>dub-Hhz&fI`vJ#oXvTST@?6qsxN=r)tz|+%n^XARiL+I)0 z!HGL|?4Z?OC@z>ppO+fmk zEDIk1FgrV2R8&O&@;qNwR)+h@$;nZx)dqvXVzG2}b>-#d_4oHa!G&Dp59OYMg zd;9A2I}{29&+|ObzkB!Y^XJcKjE;^*({SomlT)I^E^_90Q{xPG;bvU;38ml zcng&pTZhKxAmAX-{xuvUBO`bZu-omWrKK8;X6fkl>(@`5I6;GyySuwkDCBv*tE;QE zwH1kg)0Ijk1~{Qms8A@Vadob6a=9D}VUx-9>C-1l1S|^dcDq`w#&Z*k#hB*+K%>#n z=0$)zo8T)X1Ujc}V+Omw8!O@%0GKp7%(fp1ER{;7QYogYiHQlT)w*&q5{X2iP;Ak literal 0 HcmV?d00001 diff --git a/css/images/logos/build-by-maven-white.png b/css/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/css/images/logos/maven-feather.png b/css/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/css/images/network-server.png b/css/images/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d12e1938ac4d8817701a555a97b36a42413ff7f GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh0wlLOK8*rWOiAAEE({6J?VYlKJkA1-$YKTt zZXpn6ymYtj4+8_EfTxRNh{R>v^Lzb75+zt4q?_IE(UC6ToMFIeXrjjU_Pbcl8wEu* zmFNogJ4~&tCL!OBSWj@$7M9kE%GC+rI&-8+^}#zUfge$ z%95%FVq)d@YWpHh0*~9IeYCDS=DEjWT6&NB;?38!S{%Af^K0ULzq^XpMf{AfPW9%` z{By-F@#G`{r|bn{ZSl6`PhU_~!26>8WB9W7wxA3jxWq>uP}{$dFi` z{%E$YFs9ZZ#)XBd3yahj7HcdhP@0i0c5-Fei4|q1R+pb%U2$f0$(hxq%c@PLC-F^7 z;+vfzx~NcTNs0RMD#LrH*W5ZZ>(GMCN2iutSY3E&UD>s*_1Cu4-#;|z!_Cdtc6J?G zUUG6}>4z(;KU`e+;r#6P=Vrb?Gxgo+Deq2AczdGv?eU&>7nf}8_Wf{u{fF!8K3rS- z;o6$_*H*v3y88XKb$9o403A6wmUUi^)Rkq4C;QDWElr%4Ewvz5_U@*FYx8|>Z^)aU zBeO7H?&+SoN9z+G?W$goC%33j@%7nxua0&%tapcEij439aV6bJZW8_q7iNx>mKsHKHUXu_VbP0l+XkKAq+)H literal 0 HcmV?d00001 diff --git a/css/images/profiles/pre-release.png b/css/images/profiles/pre-release.png new file mode 100644 index 0000000000000000000000000000000000000000..d448e850cd3f885844d0c28da7dddf4457e25300 GIT binary patch literal 32607 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 IO1}yIe}jHRegFUf literal 0 HcmV?d00001 diff --git a/css/images/profiles/retired.png b/css/images/profiles/retired.png new file mode 100644 index 0000000000000000000000000000000000000000..f89f6a29c6b61beafd8d2f729085fbf1d17b0e86 GIT binary patch literal 22003 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 literal 0 HcmV?d00001 diff --git a/css/images/profiles/sandbox.png b/css/images/profiles/sandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..f88b3626761f591fefcb7408ff290b4f48ebe0d9 GIT binary patch literal 33010 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 OGkCiCxvXLW=UkO8ip# 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 B7G?kd literal 0 HcmV?d00001 diff --git a/css/img/glyphicons-halflings.png b/css/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 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 literal 0 HcmV?d00001 diff --git a/css/index.html b/css/index.html new file mode 100644 index 000000000..60212f6c5 --- /dev/null +++ b/css/index.html @@ -0,0 +1,243 @@ + + + + + + + + + dependency-check - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    About

    +

    Dependency-check is an open source solution the OWASP Top 10 2013 entry: A9 - Using Components with Known Vulnerabilities. Dependency-check can currently be used to scan Java applications (and their dependent libraries) to identify known vulnerable components.

    +

    The problem with using known vulnerable components was covered in a paper by Jeff Williams and Arshan Dabirsiaghi titled, “The Unfortunate Reality of Insecure Libraries”. The gist of the paper is that we as a development community include third party libraries in our applications that contain well known published vulnerabilities (such as those at the National Vulnerability Database).

    +

    Dependency-check scans directories and files and if it contains an Analyzer that can scan a particular file type then information from the file is collected. This information is then used to identify the Common Platform Enumeration (CPE). If a CPE is identified a listing of associated Common Vulnerability and Exposure (CVE) entries are listed in a report.

    +

    IMPORTANT NOTE: Dependency-check automatically updates itself using the NVD Data Feeds hosted by NIST. The initial download of the data may take fifteen minutes or more, if you run the tool at least once every seven days only a small XML file needs to be downloaded to keep the local copy of the data current.

    +

    Dependency-check’s core analysis library is exposed in various forms:

    + + +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/issue-tracking.html b/css/issue-tracking.html new file mode 100644 index 000000000..c26efa2a7 --- /dev/null +++ b/css/issue-tracking.html @@ -0,0 +1,234 @@ + + + + + + + + + dependency-check - Issue Tracking + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This project uses github to manage its issues.

    +
    +

    Issue Tracking

    +

    Issues, bugs, and feature requests should be submitted to the following issue tracking system for this project.

    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/js/apache-maven-fluido-1.3.0.min.js b/css/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/css/js/apache-maven-fluido-1.3.0.min.js @@ -0,0 +1,21 @@ +/*! + * jQuery JavaScript Library v1.8.0 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: Thu Aug 09 2012 16:24:48 GMT-0400 (Eastern Daylight Time) + */ +(function(a2,aB){var x,af,o=a2.document,aI=a2.location,d=a2.navigator,bg=a2.jQuery,I=a2.$,am=Array.prototype.push,a4=Array.prototype.slice,aK=Array.prototype.indexOf,A=Object.prototype.toString,V=Object.prototype.hasOwnProperty,aN=String.prototype.trim,bG=function(e,bZ){return new bG.fn.init(e,bZ,x)},bx=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,aa=/\S/,aV=/\s+/,D=aa.test("\xA0")?(/^[\s\xA0]+|[\s\xA0]+$/g):/^\s+|\s+$/g,bo=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,a=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,bf=/^[\],:{}\s]*$/,bi=/(?:^|:|,)(?:\s*\[)+/g,bD=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,a0=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,bP=/^-ms-/,aU=/-([\da-z])/gi,N=function(e,bZ){return(bZ+"").toUpperCase()},aF=function(){if(o.addEventListener){o.removeEventListener("DOMContentLoaded",aF,false);bG.ready()}else{if(o.readyState==="complete"){o.detachEvent("onreadystatechange",aF);bG.ready()}}},Z={};bG.fn=bG.prototype={constructor:bG,init:function(e,b2,b1){var b0,b3,bZ,b4;if(!e){return this}if(e.nodeType){this.context=this[0]=e;this.length=1;return this}if(typeof e==="string"){if(e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3){b0=[null,e,null]}else{b0=bo.exec(e)}if(b0&&(b0[1]||!b2)){if(b0[1]){b2=b2 instanceof bG?b2[0]:b2;b4=(b2&&b2.nodeType?b2.ownerDocument||b2:o);e=bG.parseHTML(b0[1],b4,true);if(a.test(b0[1])&&bG.isPlainObject(b2)){this.attr.call(e,b2,true)}return bG.merge(this,e)}else{b3=o.getElementById(b0[2]);if(b3&&b3.parentNode){if(b3.id!==b0[2]){return b1.find(e)}this.length=1;this[0]=b3}this.context=o;this.selector=e;return this}}else{if(!b2||b2.jquery){return(b2||b1).find(e)}else{return this.constructor(b2).find(e)}}}else{if(bG.isFunction(e)){return b1.ready(e)}}if(e.selector!==aB){this.selector=e.selector;this.context=e.context}return bG.makeArray(e,this)},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return a4.call(this)},get:function(e){return e==null?this.toArray():(e<0?this[this.length+e]:this[e])},pushStack:function(bZ,b1,e){var b0=bG.merge(this.constructor(),bZ);b0.prevObject=this;b0.context=this.context;if(b1==="find"){b0.selector=this.selector+(this.selector?" ":"")+e}else{if(b1){b0.selector=this.selector+"."+b1+"("+e+")"}}return b0},each:function(bZ,e){return bG.each(this,bZ,e)},ready:function(e){bG.ready.promise().done(e);return this},eq:function(e){e=+e;return e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(a4.apply(this,arguments),"slice",a4.call(arguments).join(","))},map:function(e){return this.pushStack(bG.map(this,function(b0,bZ){return e.call(b0,bZ,b0)}))},end:function(){return this.prevObject||this.constructor(null)},push:am,sort:[].sort,splice:[].splice};bG.fn.init.prototype=bG.fn;bG.extend=bG.fn.extend=function(){var b7,b0,e,bZ,b4,b5,b3=arguments[0]||{},b2=1,b1=arguments.length,b6=false;if(typeof b3==="boolean"){b6=b3;b3=arguments[1]||{};b2=2}if(typeof b3!=="object"&&!bG.isFunction(b3)){b3={}}if(b1===b2){b3=this;--b2}for(;b20){return}af.resolveWith(o,[bG]);if(bG.fn.trigger){bG(o).trigger("ready").off("ready")}},isFunction:function(e){return bG.type(e)==="function"},isArray:Array.isArray||function(e){return bG.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return !isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):Z[A.call(e)]||"object"},isPlainObject:function(b1){if(!b1||bG.type(b1)!=="object"||b1.nodeType||bG.isWindow(b1)){return false}try{if(b1.constructor&&!V.call(b1,"constructor")&&!V.call(b1.constructor.prototype,"isPrototypeOf")){return false}}catch(b0){return false}var bZ;for(bZ in b1){}return bZ===aB||V.call(b1,bZ)},isEmptyObject:function(bZ){var e;for(e in bZ){return false}return true},error:function(e){throw new Error(e)},parseHTML:function(b1,b0,e){var bZ;if(!b1||typeof b1!=="string"){return null}if(typeof b0==="boolean"){e=b0;b0=0}b0=b0||o;if((bZ=a.exec(b1))){return[b0.createElement(bZ[1])]}bZ=bG.buildFragment([b1],b0,e?null:[]);return bG.merge([],(bZ.cacheable?bG.clone(bZ.fragment):bZ.fragment).childNodes)},parseJSON:function(e){if(!e||typeof e!=="string"){return null}e=bG.trim(e);if(a2.JSON&&a2.JSON.parse){return a2.JSON.parse(e)}if(bf.test(e.replace(bD,"@").replace(a0,"]").replace(bi,""))){return(new Function("return "+e))()}bG.error("Invalid JSON: "+e)},parseXML:function(b1){var bZ,b0;if(!b1||typeof b1!=="string"){return null}try{if(a2.DOMParser){b0=new DOMParser();bZ=b0.parseFromString(b1,"text/xml")}else{bZ=new ActiveXObject("Microsoft.XMLDOM");bZ.async="false";bZ.loadXML(b1)}}catch(b2){bZ=aB}if(!bZ||!bZ.documentElement||bZ.getElementsByTagName("parsererror").length){bG.error("Invalid XML: "+b1)}return bZ},noop:function(){},globalEval:function(e){if(e&&aa.test(e)){(a2.execScript||function(bZ){a2["eval"].call(a2,bZ)})(e)}},camelCase:function(e){return e.replace(bP,"ms-").replace(aU,N)},nodeName:function(bZ,e){return bZ.nodeName&&bZ.nodeName.toUpperCase()===e.toUpperCase()},each:function(b3,b4,b0){var bZ,b1=0,b2=b3.length,e=b2===aB||bG.isFunction(b3);if(b0){if(e){for(bZ in b3){if(b4.apply(b3[bZ],b0)===false){break}}}else{for(;b10&&e[0]&&e[bZ-1])||bZ===0||bG.isArray(e));if(b1){for(;b0-1){b5.splice(ca,1);if(b2){if(ca<=b3){b3--}if(ca<=b4){b4--}}}})}return this},has:function(b9){return bG.inArray(b9,b5)>-1},empty:function(){b5=[];return this},disable:function(){b5=b6=b1=aB;return this},disabled:function(){return !b5},lock:function(){b6=aB;if(!b1){b7.disable()}return this},locked:function(){return !b6},fireWith:function(ca,b9){b9=b9||[];b9=[ca,b9.slice?b9.slice():b9];if(b5&&(!e||b6)){if(b2){b6.push(b9)}else{bZ(b9)}}return this},fire:function(){b7.fireWith(this,arguments);return this},fired:function(){return !!e}};return b7};bG.extend({Deferred:function(b0){var bZ=[["resolve","done",bG.Callbacks("once memory"),"resolved"],["reject","fail",bG.Callbacks("once memory"),"rejected"],["notify","progress",bG.Callbacks("memory")]],b1="pending",b2={state:function(){return b1},always:function(){e.done(arguments).fail(arguments);return this},then:function(){var b3=arguments;return bG.Deferred(function(b4){bG.each(bZ,function(b6,b5){var b8=b5[0],b7=b3[b6];e[b5[1]](bG.isFunction(b7)?function(){var b9=b7.apply(this,arguments);if(b9&&bG.isFunction(b9.promise)){b9.promise().done(b4.resolve).fail(b4.reject).progress(b4.notify)}else{b4[b8+"With"](this===e?b4:this,[b9])}}:b4[b8])});b3=null}).promise()},promise:function(b3){return typeof b3==="object"?bG.extend(b3,b2):b2}},e={};b2.pipe=b2.then;bG.each(bZ,function(b4,b3){var b6=b3[2],b5=b3[3];b2[b3[1]]=b6.add;if(b5){b6.add(function(){b1=b5},bZ[b4^1][2].disable,bZ[2][2].lock)}e[b3[0]]=b6.fire;e[b3[0]+"With"]=b6.fireWith});b2.promise(e);if(b0){b0.call(e,e)}return e},when:function(b2){var b0=0,b4=a4.call(arguments),e=b4.length,bZ=e!==1||(b2&&bG.isFunction(b2.promise))?e:0,b7=bZ===1?b2:bG.Deferred(),b1=function(b9,ca,b8){return function(cb){ca[b9]=this;b8[b9]=arguments.length>1?a4.call(arguments):cb;if(b8===b6){b7.notifyWith(ca,b8)}else{if(!(--bZ)){b7.resolveWith(ca,b8)}}}},b6,b3,b5;if(e>1){b6=new Array(e);b3=new Array(e);b5=new Array(e);for(;b0
    a";ca=b0.getElementsByTagName("*");b8=b0.getElementsByTagName("a")[0];b8.style.cssText="top:1px;float:left;opacity:.5";if(!ca||!ca.length||!b8){return{}}b9=o.createElement("select");b2=b9.appendChild(o.createElement("option"));b7=b0.getElementsByTagName("input")[0];cb={leadingWhitespace:(b0.firstChild.nodeType===3),tbody:!b0.getElementsByTagName("tbody").length,htmlSerialize:!!b0.getElementsByTagName("link").length,style:/top/.test(b8.getAttribute("style")),hrefNormalized:(b8.getAttribute("href")==="/a"),opacity:/^0.5/.test(b8.style.opacity),cssFloat:!!b8.style.cssFloat,checkOn:(b7.value==="on"),optSelected:b2.selected,getSetAttribute:b0.className!=="t",enctype:!!o.createElement("form").enctype,html5Clone:o.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",boxModel:(o.compatMode==="CSS1Compat"),submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true,boxSizingReliable:true,pixelPosition:false};b7.checked=true;cb.noCloneChecked=b7.cloneNode(true).checked;b9.disabled=true;cb.optDisabled=!b2.disabled;try{delete b0.test}catch(b5){cb.deleteExpando=false}if(!b0.addEventListener&&b0.attachEvent&&b0.fireEvent){b0.attachEvent("onclick",bZ=function(){cb.noCloneEvent=false});b0.cloneNode(true).fireEvent("onclick");b0.detachEvent("onclick",bZ)}b7=o.createElement("input");b7.value="t";b7.setAttribute("type","radio");cb.radioValue=b7.value==="t";b7.setAttribute("checked","checked");b7.setAttribute("name","t");b0.appendChild(b7);b6=o.createDocumentFragment();b6.appendChild(b0.lastChild);cb.checkClone=b6.cloneNode(true).cloneNode(true).lastChild.checked;cb.appendChecked=b7.checked;b6.removeChild(b7);b6.appendChild(b0);if(b0.attachEvent){for(b3 in {submit:true,change:true,focusin:true}){b4="on"+b3;b1=(b4 in b0);if(!b1){b0.setAttribute(b4,"return;");b1=(typeof b0[b4]==="function")}cb[b3+"Bubbles"]=b1}}bG(function(){var cc,cg,ce,cf,cd="padding:0;margin:0;border:0;display:block;overflow:hidden;",e=o.getElementsByTagName("body")[0];if(!e){return}cc=o.createElement("div");cc.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";e.insertBefore(cc,e.firstChild);cg=o.createElement("div");cc.appendChild(cg);cg.innerHTML="
    t
    ";ce=cg.getElementsByTagName("td");ce[0].style.cssText="padding:0;margin:0;border:0;display:none";b1=(ce[0].offsetHeight===0);ce[0].style.display="";ce[1].style.display="none";cb.reliableHiddenOffsets=b1&&(ce[0].offsetHeight===0);cg.innerHTML="";cg.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";cb.boxSizing=(cg.offsetWidth===4);cb.doesNotIncludeMarginInBodyOffset=(e.offsetTop!==1);if(a2.getComputedStyle){cb.pixelPosition=(a2.getComputedStyle(cg,null)||{}).top!=="1%";cb.boxSizingReliable=(a2.getComputedStyle(cg,null)||{width:"4px"}).width==="4px";cf=o.createElement("div");cf.style.cssText=cg.style.cssText=cd;cf.style.marginRight=cf.style.width="0";cg.style.width="1px";cg.appendChild(cf);cb.reliableMarginRight=!parseFloat((a2.getComputedStyle(cf,null)||{}).marginRight)}if(typeof cg.style.zoom!=="undefined"){cg.innerHTML="";cg.style.cssText=cd+"width:1px;padding:1px;display:inline;zoom:1";cb.inlineBlockNeedsLayout=(cg.offsetWidth===3);cg.style.display="block";cg.style.overflow="visible";cg.innerHTML="
    ";cg.firstChild.style.width="5px";cb.shrinkWrapBlocks=(cg.offsetWidth!==3);cc.style.zoom=1}e.removeChild(cc);cc=cg=ce=cf=null});b6.removeChild(b0);ca=b8=b9=b2=b7=b6=b0=null;return cb})();var bt=/^(?:\{.*\}|\[.*\])$/,aL=/([A-Z])/g;bG.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(bG.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?bG.cache[e[bG.expando]]:e[bG.expando];return !!e&&!O(e)},data:function(b1,bZ,b3,b2){if(!bG.acceptData(b1)){return}var b4,b6,b7=bG.expando,b5=typeof bZ==="string",b8=b1.nodeType,e=b8?bG.cache:b1,b0=b8?b1[b7]:b1[b7]&&b7;if((!b0||!e[b0]||(!b2&&!e[b0].data))&&b5&&b3===aB){return}if(!b0){if(b8){b1[b7]=b0=bG.deletedIds.pop()||++bG.uuid}else{b0=b7}}if(!e[b0]){e[b0]={};if(!b8){e[b0].toJSON=bG.noop}}if(typeof bZ==="object"||typeof bZ==="function"){if(b2){e[b0]=bG.extend(e[b0],bZ)}else{e[b0].data=bG.extend(e[b0].data,bZ)}}b4=e[b0];if(!b2){if(!b4.data){b4.data={}}b4=b4.data}if(b3!==aB){b4[bG.camelCase(bZ)]=b3}if(b5){b6=b4[bZ];if(b6==null){b6=b4[bG.camelCase(bZ)]}}else{b6=b4}return b6},removeData:function(b1,bZ,b2){if(!bG.acceptData(b1)){return}var b5,b4,b3,b6=b1.nodeType,e=b6?bG.cache:b1,b0=b6?b1[bG.expando]:bG.expando;if(!e[b0]){return}if(bZ){b5=b2?e[b0]:e[b0].data;if(b5){if(!bG.isArray(bZ)){if(bZ in b5){bZ=[bZ]}else{bZ=bG.camelCase(bZ);if(bZ in b5){bZ=[bZ]}else{bZ=bZ.split(" ")}}}for(b4=0,b3=bZ.length;b41,null,false)},removeData:function(e){return this.each(function(){bG.removeData(this,e)})}});function bv(b1,b0,b2){if(b2===aB&&b1.nodeType===1){var bZ="data-"+b0.replace(aL,"-$1").toLowerCase();b2=b1.getAttribute(bZ);if(typeof b2==="string"){try{b2=b2==="true"?true:b2==="false"?false:b2==="null"?null:+b2+""===b2?+b2:bt.test(b2)?bG.parseJSON(b2):b2}catch(b3){}bG.data(b1,b0,b2)}else{b2=aB}}return b2}function O(bZ){var e;for(e in bZ){if(e==="data"&&bG.isEmptyObject(bZ[e])){continue}if(e!=="toJSON"){return false}}return true}bG.extend({queue:function(b0,bZ,b1){var e;if(b0){bZ=(bZ||"fx")+"queue";e=bG._data(b0,bZ);if(b1){if(!e||bG.isArray(b1)){e=bG._data(b0,bZ,bG.makeArray(b1))}else{e.push(b1)}}return e||[]}},dequeue:function(b3,b2){b2=b2||"fx";var bZ=bG.queue(b3,b2),b1=bZ.shift(),e=bG._queueHooks(b3,b2),b0=function(){bG.dequeue(b3,b2)};if(b1==="inprogress"){b1=bZ.shift()}if(b1){if(b2==="fx"){bZ.unshift("inprogress")}delete e.stop;b1.call(b3,b0,e)}if(!bZ.length&&e){e.empty.fire()}},_queueHooks:function(b0,bZ){var e=bZ+"queueHooks";return bG._data(b0,e)||bG._data(b0,e,{empty:bG.Callbacks("once memory").add(function(){bG.removeData(b0,bZ+"queue",true);bG.removeData(b0,e,true)})})}});bG.fn.extend({queue:function(e,bZ){var b0=2;if(typeof e!=="string"){bZ=e;e="fx";b0--}if(arguments.length1)},removeAttr:function(e){return this.each(function(){bG.removeAttr(this,e)})},prop:function(e,bZ){return bG.access(this,bG.prop,e,bZ,arguments.length>1)},removeProp:function(e){e=bG.propFix[e]||e;return this.each(function(){try{this[e]=aB;delete this[e]}catch(bZ){}})},addClass:function(b2){var b4,b0,bZ,b1,b3,b5,e;if(bG.isFunction(b2)){return this.each(function(b6){bG(this).addClass(b2.call(this,b6,this.className))})}if(b2&&typeof b2==="string"){b4=b2.split(aV);for(b0=0,bZ=this.length;b0-1){b2=b2.replace(" "+b1[b5]+" "," ")}}b3.className=b4?bG.trim(b2):""}}}return this},toggleClass:function(b1,bZ){var b0=typeof b1,e=typeof bZ==="boolean";if(bG.isFunction(b1)){return this.each(function(b2){bG(this).toggleClass(b1.call(this,b2,this.className,bZ),bZ)})}return this.each(function(){if(b0==="string"){var b4,b3=0,b2=bG(this),b5=bZ,b6=b1.split(aV);while((b4=b6[b3++])){b5=e?b5:!b2.hasClass(b4);b2[b5?"addClass":"removeClass"](b4)}}else{if(b0==="undefined"||b0==="boolean"){if(this.className){bG._data(this,"__className__",this.className)}this.className=this.className||b1===false?"":bG._data(this,"__className__")||""}}})},hasClass:function(e){var b1=" "+e+" ",b0=0,bZ=this.length;for(;b0-1){return true}}return false},val:function(b1){var e,bZ,b2,b0=this[0];if(!arguments.length){if(b0){e=bG.valHooks[b0.type]||bG.valHooks[b0.nodeName.toLowerCase()];if(e&&"get" in e&&(bZ=e.get(b0,"value"))!==aB){return bZ}bZ=b0.value;return typeof bZ==="string"?bZ.replace(ai,""):bZ==null?"":bZ}return}b2=bG.isFunction(b1);return this.each(function(b4){var b5,b3=bG(this);if(this.nodeType!==1){return}if(b2){b5=b1.call(this,b4,b3.val())}else{b5=b1}if(b5==null){b5=""}else{if(typeof b5==="number"){b5+=""}else{if(bG.isArray(b5)){b5=bG.map(b5,function(b6){return b6==null?"":b6+""})}}}e=bG.valHooks[this.type]||bG.valHooks[this.nodeName.toLowerCase()];if(!e||!("set" in e)||e.set(this,b5,"value")===aB){this.value=b5}})}});bG.extend({valHooks:{option:{get:function(e){var bZ=e.attributes.value;return !bZ||bZ.specified?e.value:e.text}},select:{get:function(e){var b4,bZ,b3,b1,b2=e.selectedIndex,b5=[],b6=e.options,b0=e.type==="select-one";if(b2<0){return null}bZ=b0?b2:0;b3=b0?b2+1:b6.length;for(;bZ=0});if(!e.length){bZ.selectedIndex=-1}return e}}},attrFn:{},attr:function(b4,b1,b5,b3){var b0,e,b2,bZ=b4.nodeType;if(!b4||bZ===3||bZ===8||bZ===2){return}if(b3&&bG.isFunction(bG.fn[b1])){return bG(b4)[b1](b5)}if(typeof b4.getAttribute==="undefined"){return bG.prop(b4,b1,b5)}b2=bZ!==1||!bG.isXMLDoc(b4);if(b2){b1=b1.toLowerCase();e=bG.attrHooks[b1]||(M.test(b1)?bV:a7)}if(b5!==aB){if(b5===null){bG.removeAttr(b4,b1);return}else{if(e&&"set" in e&&b2&&(b0=e.set(b4,b5,b1))!==aB){return b0}else{b4.setAttribute(b1,""+b5);return b5}}}else{if(e&&"get" in e&&b2&&(b0=e.get(b4,b1))!==null){return b0}else{b0=b4.getAttribute(b1);return b0===null?aB:b0}}},removeAttr:function(b1,b3){var b2,b4,bZ,e,b0=0;if(b3&&b1.nodeType===1){b4=b3.split(aV);for(;b0=0)}}})});var bE=/^(?:textarea|input|select)$/i,br=/^([^\.]*|)(?:\.(.+)|)$/,ba=/(?:^|\s)hover(\.\S+|)\b/,a3=/^key/,bK=/^(?:mouse|contextmenu)|click/,by=/^(?:focusinfocus|focusoutblur)$/,aq=function(e){return bG.event.special.hover?e:e.replace(ba,"mouseenter$1 mouseleave$1")};bG.event={add:function(b1,b5,cc,b3,b2){var b6,b4,cd,cb,ca,b8,e,b9,bZ,b0,b7;if(b1.nodeType===3||b1.nodeType===8||!b5||!cc||!(b6=bG._data(b1))){return}if(cc.handler){bZ=cc;cc=bZ.handler;b2=bZ.selector}if(!cc.guid){cc.guid=bG.guid++}cd=b6.events;if(!cd){b6.events=cd={}}b4=b6.handle;if(!b4){b6.handle=b4=function(ce){return typeof bG!=="undefined"&&(!ce||bG.event.triggered!==ce.type)?bG.event.dispatch.apply(b4.elem,arguments):aB};b4.elem=b1}b5=bG.trim(aq(b5)).split(" ");for(cb=0;cb=0){ca=ca.slice(0,-1);b1=true}if(ca.indexOf(".")>=0){b0=ca.split(".");ca=b0.shift();b0.sort()}if((!b4||bG.event.customEvent[ca])&&!bG.event.global[ca]){return}bZ=typeof bZ==="object"?bZ[bG.expando]?bZ:new bG.Event(ca,bZ):new bG.Event(ca);bZ.type=ca;bZ.isTrigger=true;bZ.exclusive=b1;bZ.namespace=b0.join(".");bZ.namespace_re=bZ.namespace?new RegExp("(^|\\.)"+b0.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;b2=ca.indexOf(":")<0?"on"+ca:"";if(!b4){e=bG.cache;for(b7 in e){if(e[b7].events&&e[b7].events[ca]){bG.event.trigger(bZ,b6,e[b7].handle.elem,true)}}return}bZ.result=aB;if(!bZ.target){bZ.target=b4}b6=b6!=null?bG.makeArray(b6):[];b6.unshift(bZ);b9=bG.event.special[ca]||{};if(b9.trigger&&b9.trigger.apply(b4,b6)===false){return}b5=[[b4,b9.bindType||ca]];if(!cd&&!b9.noBubble&&!bG.isWindow(b4)){cc=b9.delegateType||ca;cb=by.test(cc+ca)?b4:b4.parentNode;for(b3=b4;cb;cb=cb.parentNode){b5.push([cb,cc]);b3=cb}if(b3===(b4.ownerDocument||o)){b5.push([b3.defaultView||b3.parentWindow||a2,cc])}}for(b7=0;b7b6){bZ.push({elem:this,matches:b7.slice(b6)})}for(cd=0;cd0?this.on(e,null,b1,b0):this.trigger(e)};if(a3.test(e)){bG.event.fixHooks[e]=bG.event.keyHooks}if(bK.test(e)){bG.event.fixHooks[e]=bG.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://sizzlejs.com/ + */ +(function(cO,cg){var cT,co,cf,b2,b8,b6=cO.document,b9=b6.documentElement,cw="undefined",ca=false,b7=true,ce=0,cj=[].slice,cS=[].push,cW=("sizcache"+Math.random()).replace(".",""),cz="[\\x20\\t\\r\\n\\f]",ci="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",ch=ci.replace("w","w#"),c1="([*^$|!~]?=)",cL="\\["+cz+"*("+ci+")"+cz+"*(?:"+c1+cz+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+ch+")|)|)"+cz+"*\\]",c2=":("+ci+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",cB=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",cd=cz+"*([\\x20\\t\\r\\n\\f>+~])"+cz+"*",cc="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+cL+"|"+c2.replace(2,7)+"|[^\\\\(),])+",cU=new RegExp("^"+cz+"+|((?:^|[^\\\\])(?:\\\\.)*)"+cz+"+$","g"),cF=new RegExp("^"+cd),ct=new RegExp(cc+"?(?="+cz+"*,|$)","g"),cJ=new RegExp("^(?:(?!,)(?:(?:^|,)"+cz+"*"+cc+")*?|"+cz+"*(.*?))(\\)|$)"),cZ=new RegExp(cc.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+cd,"g"),cK=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,cP=/[\x20\t\r\n\f]*[+~]/,cX=/:not\($/,cp=/h\d/i,cM=/input|select|textarea|button/i,cs=/\\(?!\\)/g,cE={ID:new RegExp("^#("+ci+")"),CLASS:new RegExp("^\\.("+ci+")"),NAME:new RegExp("^\\[name=['\"]?("+ci+")['\"]?\\]"),TAG:new RegExp("^("+ci.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+cL),PSEUDO:new RegExp("^"+c2),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+cz+"*(even|odd|(([+-]|)(\\d*)n|)"+cz+"*(?:([+-]|)"+cz+"*(\\d+)|))"+cz+"*\\)|)","i"),POS:new RegExp(cB,"ig"),needsContext:new RegExp("^"+cz+"*[>+~]|"+cB,"i")},cR={},cq=[],cl={},cu=[],cY=function(e){e.sizzleFilter=true;return e},b3=function(e){return function(c3){return c3.nodeName.toLowerCase()==="input"&&c3.type===e}},cr=function(e){return function(c4){var c3=c4.nodeName.toLowerCase();return(c3==="input"||c3==="button")&&c4.type===e}},cH=function(c3){var c4=false,c6=b6.createElement("div");try{c4=c3(c6)}catch(c5){}c6=null;return c4},cn=cH(function(c3){c3.innerHTML="";var e=typeof c3.lastChild.getAttribute("multiple");return e!=="boolean"&&e!=="string"}),b0=cH(function(c3){c3.id=cW+0;c3.innerHTML="
    ";b9.insertBefore(c3,b9.firstChild);var e=b6.getElementsByName&&b6.getElementsByName(cW).length===2+b6.getElementsByName(cW+0).length;b8=!b6.getElementById(cW);b9.removeChild(c3);return e}),b5=cH(function(e){e.appendChild(b6.createComment(""));return e.getElementsByTagName("*").length===0}),cD=cH(function(e){e.innerHTML="";return e.firstChild&&typeof e.firstChild.getAttribute!==cw&&e.firstChild.getAttribute("href")==="#"}),cC=cH(function(e){e.innerHTML="";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return false}e.lastChild.className="e";return e.getElementsByClassName("e").length!==1});var cN=function(c5,e,c7,da){c7=c7||[];e=e||b6;var c8,c3,c9,c4,c6=e.nodeType;if(c6!==1&&c6!==9){return[]}if(!c5||typeof c5!=="string"){return c7}c9=ck(e);if(!c9&&!da){if((c8=cK.exec(c5))){if((c4=c8[1])){if(c6===9){c3=e.getElementById(c4);if(c3&&c3.parentNode){if(c3.id===c4){c7.push(c3);return c7}}else{return c7}}else{if(e.ownerDocument&&(c3=e.ownerDocument.getElementById(c4))&&cA(e,c3)&&c3.id===c4){c7.push(c3);return c7}}}else{if(c8[2]){cS.apply(c7,cj.call(e.getElementsByTagName(c5),0));return c7}else{if((c4=c8[3])&&cC&&e.getElementsByClassName){cS.apply(c7,cj.call(e.getElementsByClassName(c4),0));return c7}}}}}return cV(c5,e,c7,da,c9)};var cG=cN.selectors={cacheLength:50,match:cE,order:["ID","TAG"],attrHandle:{},createPseudo:cY,find:{ID:b8?function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e&&e.parentNode?[e]:[]}}:function(c5,c4,c3){if(typeof c4.getElementById!==cw&&!c3){var e=c4.getElementById(c5);return e?e.id===c5||typeof e.getAttributeNode!==cw&&e.getAttributeNode("id").value===c5?[e]:cg:[]}},TAG:b5?function(e,c3){if(typeof c3.getElementsByTagName!==cw){return c3.getElementsByTagName(e)}}:function(e,c6){var c5=c6.getElementsByTagName(e);if(e==="*"){var c7,c4=[],c3=0;for(;(c7=c5[c3]);c3++){if(c7.nodeType===1){c4.push(c7)}}return c4}return c5}},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){e[1]=e[1].replace(cs,"");e[3]=(e[4]||e[5]||"").replace(cs,"");if(e[2]==="~="){e[3]=" "+e[3]+" "}return e.slice(0,4)},CHILD:function(e){e[1]=e[1].toLowerCase();if(e[1]==="nth"){if(!e[2]){cN.error(e[0])}e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd"));e[4]=+((e[6]+e[7])||e[2]==="odd")}else{if(e[2]){cN.error(e[0])}}return e},PSEUDO:function(e){var c3,c4=e[4];if(cE.CHILD.test(e[0])){return null}if(c4&&(c3=cJ.exec(c4))&&c3.pop()){e[0]=e[0].slice(0,c3[0].length-c4.length-1);c4=c3[0].slice(0,-1)}e.splice(2,3,c4||e[3]);return e}},filter:{ID:b8?function(e){e=e.replace(cs,"");return function(c3){return c3.getAttribute("id")===e}}:function(e){e=e.replace(cs,"");return function(c4){var c3=typeof c4.getAttributeNode!==cw&&c4.getAttributeNode("id");return c3&&c3.value===e}},TAG:function(e){if(e==="*"){return function(){return true}}e=e.replace(cs,"").toLowerCase();return function(c3){return c3.nodeName&&c3.nodeName.toLowerCase()===e}},CLASS:function(e){var c3=cR[e];if(!c3){c3=cR[e]=new RegExp("(^|"+cz+")"+e+"("+cz+"|$)");cq.push(e);if(cq.length>cG.cacheLength){delete cR[cq.shift()]}}return function(c4){return c3.test(c4.className||(typeof c4.getAttribute!==cw&&c4.getAttribute("class"))||"")}},ATTR:function(c4,c3,e){if(!c3){return function(c5){return cN.attr(c5,c4)!=null}}return function(c6){var c5=cN.attr(c6,c4),c7=c5+"";if(c5==null){return c3==="!="}switch(c3){case"=":return c7===e;case"!=":return c7!==e;case"^=":return e&&c7.indexOf(e)===0;case"*=":return e&&c7.indexOf(e)>-1;case"$=":return e&&c7.substr(c7.length-e.length)===e;case"~=":return(" "+c7+" ").indexOf(e)>-1;case"|=":return c7===e||c7.substr(0,e.length+1)===e+"-"}}},CHILD:function(c3,c5,c6,c4){if(c3==="nth"){var e=ce++;return function(da){var c7,db,c9=0,c8=da;if(c6===1&&c4===0){return true}c7=da.parentNode;if(c7&&(c7[cW]!==e||!da.sizset)){for(c8=c7.firstChild;c8;c8=c8.nextSibling){if(c8.nodeType===1){c8.sizset=++c9;if(c8===da){break}}}c7[cW]=e}db=da.sizset-c4;if(c6===0){return db===0}else{return(db%c6===0&&db/c6>=0)}}}return function(c8){var c7=c8;switch(c3){case"only":case"first":while((c7=c7.previousSibling)){if(c7.nodeType===1){return false}}if(c3==="first"){return true}c7=c8;case"last":while((c7=c7.nextSibling)){if(c7.nodeType===1){return false}}return true}}},PSEUDO:function(c6,c5,c3,e){var c4=cG.pseudos[c6]||cG.pseudos[c6.toLowerCase()];if(!c4){cN.error("unsupported pseudo: "+c6)}if(!c4.sizzleFilter){return c4}return c4(c5,c3,e)}},pseudos:{not:cY(function(e,c4,c3){var c5=cb(e.replace(cU,"$1"),c4,c3);return function(c6){return !c5(c6)}}),enabled:function(e){return e.disabled===false},disabled:function(e){return e.disabled===true},checked:function(e){var c3=e.nodeName.toLowerCase();return(c3==="input"&&!!e.checked)||(c3==="option"&&!!e.selected)},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !cG.pseudos.empty(e)},empty:function(c3){var e;c3=c3.firstChild;while(c3){if(c3.nodeName>"@"||(e=c3.nodeType)===3||e===4){return false}c3=c3.nextSibling}return true},contains:cY(function(e){return function(c3){return(c3.textContent||c3.innerText||bZ(c3)).indexOf(e)>-1}}),has:cY(function(e){return function(c3){return cN(e,c3).length>0}}),header:function(e){return cp.test(e.nodeName)},text:function(c4){var c3,e;return c4.nodeName.toLowerCase()==="input"&&(c3=c4.type)==="text"&&((e=c4.getAttribute("type"))==null||e.toLowerCase()===c3)},radio:b3("radio"),checkbox:b3("checkbox"),file:b3("file"),password:b3("password"),image:b3("image"),submit:cr("submit"),reset:cr("reset"),button:function(c3){var e=c3.nodeName.toLowerCase();return e==="input"&&c3.type==="button"||e==="button"},input:function(e){return cM.test(e.nodeName)},focus:function(e){var c3=e.ownerDocument;return e===c3.activeElement&&(!c3.hasFocus||c3.hasFocus())&&!!(e.type||e.href)},active:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(c4,c3,e){return e?c4.slice(1):[c4[0]]},last:function(c5,c4,c3){var e=c5.pop();return c3?c5:[e]},even:function(c7,c6,c5){var c4=[],c3=c5?1:0,e=c7.length;for(;c30?c6(c5,c8,c7):[]}function cQ(dc,e,da,c4,dg){var c7,c3,c6,di,c9,dh,db,df,dd=0,de=dg.length,c5=cE.POS,c8=new RegExp("^"+c5.source+"(?!"+cz+")","i"),dj=function(){var dl=1,dk=arguments.length-2;for(;dlc6){db=dc.slice(c6,c7.index);c6=df;dh=[e];if(cF.test(db)){if(c9){dh=c9}c9=c4}if((c3=cX.test(db))){db=db.slice(0,-5).replace(cF,"$&*")}if(c7.length>1){c7[0].replace(c8,dj)}c9=cI(db,c7[1],c7[2],dh,c9,c3)}}if(c9){di=di.concat(c9);if((db=dc.slice(c6))&&db!==")"){if(cF.test(db)){cm(db,di,da,c4)}else{cN(db,e,da,c4?c4.concat(c9):c9)}}else{cS.apply(da,di)}}else{cN(dc,e,da,c4)}}return de===1?da:cN.uniqueSort(da)}function b1(c8,c4,db){var dd,dc,de,c6=[],c9=0,da=cJ.exec(c8),c3=!da.pop()&&!da.pop(),df=c3&&c8.match(ct)||[""],e=cG.preFilter,c5=cG.filter,c7=!db&&c4!==b6;for(;(dc=df[c9])!=null&&c3;c9++){c6.push(dd=[]);if(c7){dc=" "+dc}while(dc){c3=false;if((da=cF.exec(dc))){dc=dc.slice(da[0].length);c3=dd.push({part:da.pop().replace(cU," "),captures:da})}for(de in c5){if((da=cE[de].exec(dc))&&(!e[de]||(da=e[de](da,c4,db)))){dc=dc.slice(da.shift().length);c3=dd.push({part:de,captures:da})}}if(!c3){break}}}if(!c3){cN.error(c8)}return c6}function cx(c6,c5,c4){var e=c5.dir,c3=ce++;if(!c6){c6=function(c7){return c7===c4}}return c5.first?function(c8,c7){while((c8=c8[e])){if(c8.nodeType===1){return c6(c8,c7)&&c8}}}:function(c9,c8){var c7,da=c3+"."+co,db=da+"."+cT;while((c9=c9[e])){if(c9.nodeType===1){if((c7=c9[cW])===db){return c9.sizset}else{if(typeof c7==="string"&&c7.indexOf(da)===0){if(c9.sizset){return c9}}else{c9[cW]=db;if(c6(c9,c8)){c9.sizset=true;return c9}c9.sizset=false}}}}}}function cv(e,c3){return e?function(c6,c5){var c4=c3(c6,c5);return c4&&e(c4===true?c6:c4,c5)}:c3}function cy(c7,c5,e){var c4,c6,c3=0;for(;(c4=c7[c3]);c3++){if(cG.relative[c4.part]){c6=cx(c6,cG.relative[c4.part],c5)}else{c4.captures.push(c5,e);c6=cv(c6,cG.filter[c4.part].apply(null,c4.captures))}}return c6}function b4(e){return function(c5,c4){var c6,c3=0;for(;(c6=e[c3]);c3++){if(c6(c5,c4)){return true}}return false}}var cb=cN.compile=function(e,c5,c3){var c8,c7,c4,c6=cl[e];if(c6&&c6.context===c5){return c6}c7=b1(e,c5,c3);for(c4=0;(c8=c7[c4]);c4++){c7[c4]=cy(c8,c5,c3)}c6=cl[e]=b4(c7);c6.context=c5;c6.runs=c6.dirruns=0;cu.push(e);if(cu.length>cG.cacheLength){delete cl[cu.shift()]}return c6};cN.matches=function(c3,e){return cN(c3,null,null,e)};cN.matchesSelector=function(e,c3){return cN(c3,null,null,[e]).length>0};var cV=function(c6,c3,c8,dc,db){c6=c6.replace(cU,"$1");var e,dd,c9,de,c4,c5,dg,dh,c7,da=c6.match(ct),df=c6.match(cZ),di=c3.nodeType;if(cE.POS.test(c6)){return cQ(c6,c3,c8,dc,da)}if(dc){e=cj.call(dc,0)}else{if(da&&da.length===1){if(df.length>1&&di===9&&!db&&(da=cE.ID.exec(df[0]))){c3=cG.find.ID(da[1],c3,db)[0];if(!c3){return c8}c6=c6.slice(df.shift().length)}dh=((da=cP.exec(df[0]))&&!da.index&&c3.parentNode)||c3;c7=df.pop();c5=c7.split(":not")[0];for(c9=0,de=cG.order.length;c9";if(!c9.querySelectorAll("[selected]").length){c3.push("\\["+cz+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)")}if(!c9.querySelectorAll(":checked").length){c3.push(":checked")}});cH(function(c9){c9.innerHTML="

    ";if(c9.querySelectorAll("[test^='']").length){c3.push("[*^$]="+cz+"*(?:\"\"|'')")}c9.innerHTML="";if(!c9.querySelectorAll(":enabled").length){c3.push(":enabled",":disabled")}});c3=c3.length&&new RegExp(c3.join("|"));cV=function(de,da,df,dh,dg){if(!dh&&!dg&&(!c3||!c3.test(de))){if(da.nodeType===9){try{cS.apply(df,cj.call(da.querySelectorAll(de),0));return df}catch(dd){}}else{if(da.nodeType===1&&da.nodeName.toLowerCase()!=="object"){var dc=da.getAttribute("id"),c9=dc||cW,db=cP.test(de)&&da.parentNode||da;if(dc){c9=c9.replace(c6,"\\$&")}else{da.setAttribute("id",c9)}try{cS.apply(df,cj.call(db.querySelectorAll(de.replace(ct,"[id='"+c9+"'] $&")),0));return df}catch(dd){}finally{if(!dc){da.removeAttribute("id")}}}}}return c8(de,da,df,dh,dg)};if(c5){cH(function(da){c7=c5.call(da,"div");try{c5.call(da,"[test!='']:sizzle");e.push(cG.match.PSEUDO)}catch(c9){}});e=new RegExp(e.join("|"));cN.matchesSelector=function(da,dc){dc=dc.replace(c4,"='$1']");if(!ck(da)&&!e.test(dc)&&(!c3||!c3.test(dc))){try{var c9=c5.call(da,dc);if(c9||c7||da.document&&da.document.nodeType!==11){return c9}}catch(db){}}return cN(dc,null,null,[da]).length>0}}})()}cN.attr=bG.attr;bG.find=cN;bG.expr=cN.selectors;bG.expr[":"]=bG.expr.pseudos;bG.unique=cN.uniqueSort;bG.text=cN.getText;bG.isXMLDoc=cN.isXML;bG.contains=cN.contains})(a2);var ag=/Until$/,bq=/^(?:parents|prev(?:Until|All))/,al=/^.[^:#\[\.,]*$/,z=bG.expr.match.needsContext,bu={children:true,contents:true,next:true,prev:true};bG.fn.extend({find:function(e){var b2,bZ,b4,b5,b3,b1,b0=this;if(typeof e!=="string"){return bG(e).filter(function(){for(b2=0,bZ=b0.length;b20){for(b5=b4;b5=0:bG.filter(e,this).length>0:this.filter(e).length>0)},closest:function(b2,b1){var b3,b0=0,e=this.length,bZ=[],b4=z.test(b2)||typeof b2!=="string"?bG(b2,b1||this.context):0;for(;b0-1:bG.find.matchesSelector(b3,b2)){bZ.push(b3);break}b3=b3.parentNode}}bZ=bZ.length>1?bG.unique(bZ):bZ;return this.pushStack(bZ,"closest",b2)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return bG.inArray(this[0],bG(e))}return bG.inArray(e.jquery?e[0]:e,this)},add:function(e,bZ){var b1=typeof e==="string"?bG(e,bZ):bG.makeArray(e&&e.nodeType?[e]:e),b0=bG.merge(this.get(),b1);return this.pushStack(aR(b1[0])||aR(b0[0])?b0:bG.unique(b0))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});bG.fn.andSelf=bG.fn.addBack;function aR(e){return !e||!e.parentNode||e.parentNode.nodeType===11}function aY(bZ,e){do{bZ=bZ[e]}while(bZ&&bZ.nodeType!==1);return bZ}bG.each({parent:function(bZ){var e=bZ.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return bG.dir(e,"parentNode")},parentsUntil:function(bZ,e,b0){return bG.dir(bZ,"parentNode",b0)},next:function(e){return aY(e,"nextSibling")},prev:function(e){return aY(e,"previousSibling")},nextAll:function(e){return bG.dir(e,"nextSibling")},prevAll:function(e){return bG.dir(e,"previousSibling")},nextUntil:function(bZ,e,b0){return bG.dir(bZ,"nextSibling",b0)},prevUntil:function(bZ,e,b0){return bG.dir(bZ,"previousSibling",b0)},siblings:function(e){return bG.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return bG.sibling(e.firstChild)},contents:function(e){return bG.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:bG.merge([],e.childNodes)}},function(e,bZ){bG.fn[e]=function(b2,b0){var b1=bG.map(this,bZ,b2);if(!ag.test(e)){b0=b2}if(b0&&typeof b0==="string"){b1=bG.filter(b0,b1)}b1=this.length>1&&!bu[e]?bG.unique(b1):b1;if(this.length>1&&bq.test(e)){b1=b1.reverse()}return this.pushStack(b1,e,a4.call(arguments).join(","))}});bG.extend({filter:function(b0,e,bZ){if(bZ){b0=":not("+b0+")"}return e.length===1?bG.find.matchesSelector(e[0],b0)?[e[0]]:[]:bG.find.matches(b0,e)},dir:function(b0,bZ,b2){var e=[],b1=b0[bZ];while(b1&&b1.nodeType!==9&&(b2===aB||b1.nodeType!==1||!bG(b1).is(b2))){if(b1.nodeType===1){e.push(b1)}b1=b1[bZ]}return e},sibling:function(b0,bZ){var e=[];for(;b0;b0=b0.nextSibling){if(b0.nodeType===1&&b0!==bZ){e.push(b0)}}return e}});function aM(b1,b0,e){b0=b0||0;if(bG.isFunction(b0)){return bG.grep(b1,function(b3,b2){var b4=!!b0.call(b3,b2,b3);return b4===e})}else{if(b0.nodeType){return bG.grep(b1,function(b3,b2){return(b3===b0)===e})}else{if(typeof b0==="string"){var bZ=bG.grep(b1,function(b2){return b2.nodeType===1});if(al.test(b0)){return bG.filter(b0,bZ,!e)}else{b0=bG.filter(b0,bZ)}}}}return bG.grep(b1,function(b3,b2){return(bG.inArray(b3,b0)>=0)===e})}function B(e){var b0=c.split("|"),bZ=e.createDocumentFragment();if(bZ.createElement){while(b0.length){bZ.createElement(b0.pop())}}return bZ}var c="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",av=/ jQuery\d+="(?:null|\d+)"/g,bY=/^\s+/,ay=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,p=/<([\w:]+)/,bT=/]","i"),aE=/^(?:checkbox|radio)$/,bR=/checked\s*(?:[^=]|=\s*.checked.)/i,bw=/\/(java|ecma)script/i,aH=/^\s*\s*$/g,T={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},aQ=B(o),l=aQ.appendChild(o.createElement("div"));T.optgroup=T.option;T.tbody=T.tfoot=T.colgroup=T.caption=T.thead;T.th=T.td;if(!bG.support.htmlSerialize){T._default=[1,"X
    ","
    "]}bG.fn.extend({text:function(e){return bG.access(this,function(bZ){return bZ===aB?bG.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).createTextNode(bZ))},null,e,arguments.length)},wrapAll:function(e){if(bG.isFunction(e)){return this.each(function(b0){bG(this).wrapAll(e.call(this,b0))})}if(this[0]){var bZ=bG(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bZ.insertBefore(this[0])}bZ.map(function(){var b0=this;while(b0.firstChild&&b0.firstChild.nodeType===1){b0=b0.firstChild}return b0}).append(this)}return this},wrapInner:function(e){if(bG.isFunction(e)){return this.each(function(bZ){bG(this).wrapInner(e.call(this,bZ))})}return this.each(function(){var bZ=bG(this),b0=bZ.contents();if(b0.length){b0.wrapAll(e)}else{bZ.append(e)}})},wrap:function(e){var bZ=bG.isFunction(e);return this.each(function(b0){bG(this).wrapAll(bZ?e.call(this,b0):e)})},unwrap:function(){return this.parent().each(function(){if(!bG.nodeName(this,"body")){bG(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1||this.nodeType===11){this.insertBefore(e,this.firstChild)}})},before:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(e,this),"before",this.selector)}},after:function(){if(!aR(this[0])){return this.domManip(arguments,false,function(bZ){this.parentNode.insertBefore(bZ,this.nextSibling)})}if(arguments.length){var e=bG.clean(arguments);return this.pushStack(bG.merge(this,e),"after",this.selector)}},remove:function(e,b1){var b0,bZ=0;for(;(b0=this[bZ])!=null;bZ++){if(!e||bG.filter(e,[b0]).length){if(!b1&&b0.nodeType===1){bG.cleanData(b0.getElementsByTagName("*"));bG.cleanData([b0])}if(b0.parentNode){b0.parentNode.removeChild(b0)}}}return this},empty:function(){var bZ,e=0;for(;(bZ=this[e])!=null;e++){if(bZ.nodeType===1){bG.cleanData(bZ.getElementsByTagName("*"))}while(bZ.firstChild){bZ.removeChild(bZ.firstChild)}}return this},clone:function(bZ,e){bZ=bZ==null?false:bZ;e=e==null?bZ:e;return this.map(function(){return bG.clone(this,bZ,e)})},html:function(e){return bG.access(this,function(b2){var b1=this[0]||{},b0=0,bZ=this.length;if(b2===aB){return b1.nodeType===1?b1.innerHTML.replace(av,""):aB}if(typeof b2==="string"&&!aj.test(b2)&&(bG.support.htmlSerialize||!K.test(b2))&&(bG.support.leadingWhitespace||!bY.test(b2))&&!T[(p.exec(b2)||["",""])[1].toLowerCase()]){b2=b2.replace(ay,"<$1>");try{for(;b01&&typeof b5==="string"&&bR.test(b5)){return this.each(function(){bG(this).domManip(b4,b8,b7)})}if(bG.isFunction(b5)){return this.each(function(ca){var b9=bG(this);b4[0]=b5.call(this,ca,b8?b9.html():aB);b9.domManip(b4,b8,b7)})}if(this[0]){b0=bG.buildFragment(b4,this,bZ);b3=b0.fragment;b2=b3.firstChild;if(b3.childNodes.length===1){b3=b2}if(b2){b8=b8&&bG.nodeName(b2,"tr");for(b6=b0.cacheable||e-1;b10?this.clone(true):this).get();bG(b6[b4])[bZ](b2);b3=b3.concat(b2)}return this.pushStack(b3,e,b6.selector)}}});function m(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function bS(e){if(aE.test(e.type)){e.defaultChecked=e.checked}}bG.extend({clone:function(b2,b4,b0){var e,bZ,b1,b3;if(bG.support.html5Clone||bG.isXMLDoc(b2)||!K.test("<"+b2.nodeName+">")){b3=b2.cloneNode(true)}else{l.innerHTML=b2.outerHTML;l.removeChild(b3=l.firstChild)}if((!bG.support.noCloneEvent||!bG.support.noCloneChecked)&&(b2.nodeType===1||b2.nodeType===11)&&!bG.isXMLDoc(b2)){G(b2,b3);e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){if(bZ[b1]){G(e[b1],bZ[b1])}}}if(b4){ao(b2,b3);if(b0){e=m(b2);bZ=m(b3);for(b1=0;e[b1];++b1){ao(e[b1],bZ[b1])}}}e=bZ=null;return b3},clean:function(cb,b0,e,b1){var b7,b3,ca,cf,b4,ce,b5,b2,bZ,b9,cd,b6,b8=0,cc=[];if(!b0||typeof b0.createDocumentFragment==="undefined"){b0=o}for(b3=b0===o&&aQ;(ca=cb[b8])!=null;b8++){if(typeof ca==="number"){ca+=""}if(!ca){continue}if(typeof ca==="string"){if(!J.test(ca)){ca=b0.createTextNode(ca)}else{b3=b3||B(b0);b5=b5||b3.appendChild(b0.createElement("div"));ca=ca.replace(ay,"<$1>");cf=(p.exec(ca)||["",""])[1].toLowerCase();b4=T[cf]||T._default;ce=b4[0];b5.innerHTML=b4[1]+ca+b4[2];while(ce--){b5=b5.lastChild}if(!bG.support.tbody){b2=bT.test(ca);bZ=cf==="table"&&!b2?b5.firstChild&&b5.firstChild.childNodes:b4[1]===""&&!b2?b5.childNodes:[];for(b7=bZ.length-1;b7>=0;--b7){if(bG.nodeName(bZ[b7],"tbody")&&!bZ[b7].childNodes.length){bZ[b7].parentNode.removeChild(bZ[b7])}}}if(!bG.support.leadingWhitespace&&bY.test(ca)){b5.insertBefore(b0.createTextNode(bY.exec(ca)[0]),b5.firstChild)}ca=b5.childNodes;b5=b3.lastChild}}if(ca.nodeType){cc.push(ca)}else{cc=bG.merge(cc,ca)}}if(b5){b3.removeChild(b5);ca=b5=b3=null}if(!bG.support.appendChecked){for(b8=0;(ca=cc[b8])!=null;b8++){if(bG.nodeName(ca,"input")){bS(ca)}else{if(typeof ca.getElementsByTagName!=="undefined"){bG.grep(ca.getElementsByTagName("input"),bS)}}}}if(e){cd=function(cg){if(!cg.type||bw.test(cg.type)){return b1?b1.push(cg.parentNode?cg.parentNode.removeChild(cg):cg):e.appendChild(cg)}};for(b8=0;(ca=cc[b8])!=null;b8++){if(!(bG.nodeName(ca,"script")&&cd(ca))){e.appendChild(ca);if(typeof ca.getElementsByTagName!=="undefined"){b6=bG.grep(bG.merge([],ca.getElementsByTagName("script")),cd);cc.splice.apply(cc,[b8+1,0].concat(b6));b8+=b6.length}}}}return cc},cleanData:function(bZ,b7){var b2,b0,b1,b6,b3=0,b8=bG.expando,e=bG.cache,b4=bG.support.deleteExpando,b5=bG.event.special;for(;(b1=bZ[b3])!=null;b3++){if(b7||bG.acceptData(b1)){b0=b1[b8];b2=b0&&e[b0];if(b2){if(b2.events){for(b6 in b2.events){if(b5[b6]){bG.event.remove(b1,b6)}else{bG.removeEvent(b1,b6,b2.handle)}}}if(e[b0]){delete e[b0];if(b4){delete b1[b8]}else{if(b1.removeAttribute){b1.removeAttribute(b8)}else{b1[b8]=null}}bG.deletedIds.push(b0)}}}}}});(function(){var e,bZ;bG.uaMatch=function(b1){b1=b1.toLowerCase();var b0=/(chrome)[ \/]([\w.]+)/.exec(b1)||/(webkit)[ \/]([\w.]+)/.exec(b1)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(b1)||/(msie) ([\w.]+)/.exec(b1)||b1.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}};e=bG.uaMatch(d.userAgent);bZ={};if(e.browser){bZ[e.browser]=true;bZ.version=e.version}if(bZ.webkit){bZ.safari=true}bG.browser=bZ;bG.sub=function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bG.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bG&&!(b4 instanceof b0)){b4=b0(b4)}return bG.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(o);return b0}})();var F,az,aW,be=/alpha\([^)]*\)/i,aS=/opacity=([^)]*)/,bk=/^(top|right|bottom|left)$/,aZ=/^margin/,a8=new RegExp("^("+bx+")(.*)$","i"),W=new RegExp("^("+bx+")(?!px)[a-z%]+$","i"),S=new RegExp("^([-+])=("+bx+")","i"),bh={},a9={position:"absolute",visibility:"hidden",display:"block"},bA={letterSpacing:0,fontWeight:400,lineHeight:1},bQ=["Top","Right","Bottom","Left"],ar=["Webkit","O","Moz","ms"],aJ=bG.fn.toggle;function b(b1,bZ){if(bZ in b1){return bZ}var b2=bZ.charAt(0).toUpperCase()+bZ.slice(1),e=bZ,b0=ar.length;while(b0--){bZ=ar[b0]+b2;if(bZ in b1){return bZ}}return e}function Q(bZ,e){bZ=e||bZ;return bG.css(bZ,"display")==="none"||!bG.contains(bZ.ownerDocument,bZ)}function t(b3,e){var b2,b4,bZ=[],b0=0,b1=b3.length;for(;b01)},show:function(){return t(this,true)},hide:function(){return t(this)},toggle:function(b0,bZ){var e=typeof b0==="boolean";if(bG.isFunction(b0)&&bG.isFunction(bZ)){return aJ.apply(this,arguments)}return this.each(function(){if(e?b0:Q(this)){bG(this).show()}else{bG(this).hide()}})}});bG.extend({cssHooks:{opacity:{get:function(b0,bZ){if(bZ){var e=F(b0,"opacity");return e===""?"1":e}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":bG.support.cssFloat?"cssFloat":"styleFloat"},style:function(b1,b0,b7,b2){if(!b1||b1.nodeType===3||b1.nodeType===8||!b1.style){return}var b5,b6,b8,b3=bG.camelCase(b0),bZ=b1.style;b0=bG.cssProps[b3]||(bG.cssProps[b3]=b(bZ,b3));b8=bG.cssHooks[b0]||bG.cssHooks[b3];if(b7!==aB){b6=typeof b7;if(b6==="string"&&(b5=S.exec(b7))){b7=(b5[1]+1)*b5[2]+parseFloat(bG.css(b1,b0));b6="number"}if(b7==null||b6==="number"&&isNaN(b7)){return}if(b6==="number"&&!bG.cssNumber[b3]){b7+="px"}if(!b8||!("set" in b8)||(b7=b8.set(b1,b7,b2))!==aB){try{bZ[b0]=b7}catch(b4){}}}else{if(b8&&"get" in b8&&(b5=b8.get(b1,false,b2))!==aB){return b5}return bZ[b0]}},css:function(b4,b2,b3,bZ){var b5,b1,e,b0=bG.camelCase(b2);b2=bG.cssProps[b0]||(bG.cssProps[b0]=b(b4.style,b0));e=bG.cssHooks[b2]||bG.cssHooks[b0];if(e&&"get" in e){b5=e.get(b4,true,bZ)}if(b5===aB){b5=F(b4,b2)}if(b5==="normal"&&b2 in bA){b5=bA[b2]}if(b3||bZ!==aB){b1=parseFloat(b5);return b3||bG.isNumeric(b1)?b1||0:b5}return b5},swap:function(b2,b1,b3){var b0,bZ,e={};for(bZ in b1){e[bZ]=b2.style[bZ];b2.style[bZ]=b1[bZ]}b0=b3.call(b2);for(bZ in b1){b2.style[bZ]=e[bZ]}return b0}});if(a2.getComputedStyle){F=function(b5,bZ){var e,b2,b1,b4,b3=getComputedStyle(b5,null),b0=b5.style;if(b3){e=b3[bZ];if(e===""&&!bG.contains(b5.ownerDocument.documentElement,b5)){e=bG.style(b5,bZ)}if(W.test(e)&&aZ.test(bZ)){b2=b0.width;b1=b0.minWidth;b4=b0.maxWidth;b0.minWidth=b0.maxWidth=b0.width=e;e=b3.width;b0.width=b2;b0.minWidth=b1;b0.maxWidth=b4}}return e}}else{if(o.documentElement.currentStyle){F=function(b2,b0){var b3,e,bZ=b2.currentStyle&&b2.currentStyle[b0],b1=b2.style;if(bZ==null&&b1&&b1[b0]){bZ=b1[b0]}if(W.test(bZ)&&!bk.test(b0)){b3=b1.left;e=b2.runtimeStyle&&b2.runtimeStyle.left;if(e){b2.runtimeStyle.left=b2.currentStyle.left}b1.left=b0==="fontSize"?"1em":bZ;bZ=b1.pixelLeft+"px";b1.left=b3;if(e){b2.runtimeStyle.left=e}}return bZ===""?"auto":bZ}}}function aG(e,b0,b1){var bZ=a8.exec(b0);return bZ?Math.max(0,bZ[1]-(b1||0))+(bZ[2]||"px"):b0}function at(b1,bZ,e,b3){var b0=e===(b3?"border":"content")?4:bZ==="width"?1:0,b2=0;for(;b0<4;b0+=2){if(e==="margin"){b2+=bG.css(b1,e+bQ[b0],true)}if(b3){if(e==="content"){b2-=parseFloat(F(b1,"padding"+bQ[b0]))||0}if(e!=="margin"){b2-=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}else{b2+=parseFloat(F(b1,"padding"+bQ[b0]))||0;if(e!=="padding"){b2+=parseFloat(F(b1,"border"+bQ[b0]+"Width"))||0}}}return b2}function v(b1,bZ,e){var b2=bZ==="width"?b1.offsetWidth:b1.offsetHeight,b0=true,b3=bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box";if(b2<=0){b2=F(b1,bZ);if(b2<0||b2==null){b2=b1.style[bZ]}if(W.test(b2)){return b2}b0=b3&&(bG.support.boxSizingReliable||b2===b1.style[bZ]);b2=parseFloat(b2)||0}return(b2+at(b1,bZ,e||(b3?"border":"content"),b0))+"px"}function bC(b0){if(bh[b0]){return bh[b0]}var e=bG("<"+b0+">").appendTo(o.body),bZ=e.css("display");e.remove();if(bZ==="none"||bZ===""){az=o.body.appendChild(az||bG.extend(o.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!aW||!az.createElement){aW=(az.contentWindow||az.contentDocument).document;aW.write("");aW.close()}e=aW.body.appendChild(aW.createElement(b0));bZ=F(e,"display");o.body.removeChild(az)}bh[b0]=bZ;return bZ}bG.each(["height","width"],function(bZ,e){bG.cssHooks[e]={get:function(b2,b1,b0){if(b1){if(b2.offsetWidth!==0||F(b2,"display")!=="none"){return v(b2,e,b0)}else{return bG.swap(b2,a9,function(){return v(b2,e,b0)})}}},set:function(b1,b2,b0){return aG(b1,b2,b0?at(b1,e,b0,bG.support.boxSizing&&bG.css(b1,"boxSizing")==="border-box"):0)}}});if(!bG.support.opacity){bG.cssHooks.opacity={get:function(bZ,e){return aS.test((e&&bZ.currentStyle?bZ.currentStyle.filter:bZ.style.filter)||"")?(0.01*parseFloat(RegExp.$1))+"":e?"1":""},set:function(b2,b3){var b1=b2.style,bZ=b2.currentStyle,e=bG.isNumeric(b3)?"alpha(opacity="+b3*100+")":"",b0=bZ&&bZ.filter||b1.filter||"";b1.zoom=1;if(b3>=1&&bG.trim(b0.replace(be,""))===""&&b1.removeAttribute){b1.removeAttribute("filter");if(bZ&&!bZ.filter){return}}b1.filter=be.test(b0)?b0.replace(be,e):b0+" "+e}}}bG(function(){if(!bG.support.reliableMarginRight){bG.cssHooks.marginRight={get:function(bZ,e){return bG.swap(bZ,{display:"inline-block"},function(){if(e){return F(bZ,"marginRight")}})}}}if(!bG.support.pixelPosition&&bG.fn.position){bG.each(["top","left"],function(e,bZ){bG.cssHooks[bZ]={get:function(b2,b1){if(b1){var b0=F(b2,bZ);return W.test(b0)?bG(b2).position()[bZ]+"px":b0}}}})}});if(bG.expr&&bG.expr.filters){bG.expr.filters.hidden=function(e){return(e.offsetWidth===0&&e.offsetHeight===0)||(!bG.support.reliableHiddenOffsets&&((e.style&&e.style.display)||F(e,"display"))==="none")};bG.expr.filters.visible=function(e){return !bG.expr.filters.hidden(e)}}bG.each({margin:"",padding:"",border:"Width"},function(e,bZ){bG.cssHooks[e+bZ]={expand:function(b2){var b1,b3=typeof b2==="string"?b2.split(" "):[b2],b0={};for(b1=0;b1<4;b1++){b0[e+bQ[b1]+bZ]=b3[b1]||b3[b1-2]||b3[0]}return b0}};if(!aZ.test(e)){bG.cssHooks[e+bZ].set=aG}});var bs=/%20/g,aP=/\[\]$/,U=/\r?\n/g,bz=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aD=/^(?:select|textarea)/i;bG.fn.extend({serialize:function(){return bG.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?bG.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||aD.test(this.nodeName)||bz.test(this.type))}).map(function(e,bZ){var b0=bG(this).val();return b0==null?null:bG.isArray(b0)?bG.map(b0,function(b2,b1){return{name:bZ.name,value:b2.replace(U,"\r\n")}}):{name:bZ.name,value:b0.replace(U,"\r\n")}}).get()}});bG.param=function(e,b0){var b1,bZ=[],b2=function(b3,b4){b4=bG.isFunction(b4)?b4():(b4==null?"":b4);bZ[bZ.length]=encodeURIComponent(b3)+"="+encodeURIComponent(b4)};if(b0===aB){b0=bG.ajaxSettings&&bG.ajaxSettings.traditional}if(bG.isArray(e)||(e.jquery&&!bG.isPlainObject(e))){bG.each(e,function(){b2(this.name,this.value)})}else{for(b1 in e){k(b1,e[b1],b0,b2)}}return bZ.join("&").replace(bs,"+")};function k(b0,b2,bZ,b1){var e;if(bG.isArray(b2)){bG.each(b2,function(b4,b3){if(bZ||aP.test(b0)){b1(b0,b3)}else{k(b0+"["+(typeof b3==="object"?b4:"")+"]",b3,bZ,b1)}})}else{if(!bZ&&bG.type(b2)==="object"){for(e in b2){k(b0+"["+e+"]",b2[e],bZ,b1)}}else{b1(b0,b2)}}}var Y,bX,an=/#.*$/,ad=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,C=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,s=/^(?:GET|HEAD)$/,aC=/^\/\//,bN=/\?/,g=/)<[^<]*)*<\/script>/gi,P=/([?&])_=[^&]*/,aT=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,bW=bG.fn.load,w={},a6={},aX=["*/"]+["*"];try{Y=aI.href}catch(bd){Y=o.createElement("a");Y.href="";Y=Y.href}bX=aT.exec(Y.toLowerCase())||[];function bI(e){return function(b2,b4){if(typeof b2!=="string"){b4=b2;b2="*"}var bZ,b5,b6,b1=b2.toLowerCase().split(aV),b0=0,b3=b1.length;if(bG.isFunction(b4)){for(;b0=0){e=b1.slice(b3,b1.length);b1=b1.slice(0,b3)}if(bG.isFunction(b4)){b5=b4;b4=aB}else{if(typeof b4==="object"){b2="POST"}}bG.ajax({url:b1,type:b2,dataType:"html",data:b4,complete:function(b7,b6){if(b5){bZ.each(b5,b0||[b7.responseText,b6,b7])}}}).done(function(b6){b0=arguments;bZ.html(e?bG("
    ").append(b6.replace(g,"")).find(e):b6)});return this};bG.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bZ){bG.fn[bZ]=function(b0){return this.on(bZ,b0)}});bG.each(["get","post"],function(e,bZ){bG[bZ]=function(b0,b2,b3,b1){if(bG.isFunction(b2)){b1=b1||b3;b3=b2;b2=aB}return bG.ajax({type:bZ,url:b0,data:b2,success:b3,dataType:b1})}});bG.extend({getScript:function(e,bZ){return bG.get(e,aB,bZ,"script")},getJSON:function(e,bZ,b0){return bG.get(e,bZ,b0,"json")},ajaxSetup:function(bZ,e){if(e){u(bZ,bG.ajaxSettings)}else{e=bZ;bZ=bG.ajaxSettings}u(bZ,e);return bZ},ajaxSettings:{url:Y,isLocal:C.test(bX[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a2.String,"text html":true,"text json":bG.parseJSON,"text xml":bG.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:bI(w),ajaxTransport:bI(a6),ajax:function(b4,b1){if(typeof b4==="object"){b1=b4;b4=aB}b1=b1||{};var b7,cl,b2,cg,b9,cd,b0,cf,b8=bG.ajaxSetup({},b1),cn=b8.context||b8,cb=cn!==b8&&(cn.nodeType||cn instanceof bG)?bG(cn):bG.event,cm=bG.Deferred(),ci=bG.Callbacks("once memory"),b5=b8.statusCode||{},cc={},cj={},b3=0,b6="canceled",ce={readyState:0,setRequestHeader:function(co,cp){if(!b3){var e=co.toLowerCase();co=cj[e]=cj[e]||co;cc[co]=cp}return this},getAllResponseHeaders:function(){return b3===2?cl:null},getResponseHeader:function(co){var e;if(b3===2){if(!b2){b2={};while((e=ad.exec(cl))){b2[e[1].toLowerCase()]=e[2]}}e=b2[co.toLowerCase()]}return e===aB?null:e},overrideMimeType:function(e){if(!b3){b8.mimeType=e}return this},abort:function(e){e=e||b6;if(cg){cg.abort(e)}ca(0,e);return this}};function ca(cs,co,ct,cq){var e,cw,cu,cr,cv,cp=co;if(b3===2){return}b3=2;if(b9){clearTimeout(b9)}cg=aB;cl=cq||"";ce.readyState=cs>0?4:0;if(ct){cr=h(b8,ce,ct)}if(cs>=200&&cs<300||cs===304){if(b8.ifModified){cv=ce.getResponseHeader("Last-Modified");if(cv){bG.lastModified[b7]=cv}cv=ce.getResponseHeader("Etag");if(cv){bG.etag[b7]=cv}}if(cs===304){cp="notmodified";e=true}else{e=ae(b8,cr);cp=e.state;cw=e.data;cu=e.error;e=!cu}}else{cu=cp;if(!cp||cs){cp="error";if(cs<0){cs=0}}}ce.status=cs;ce.statusText=""+(co||cp);if(e){cm.resolveWith(cn,[cw,cp,ce])}else{cm.rejectWith(cn,[ce,cp,cu])}ce.statusCode(b5);b5=aB;if(b0){cb.trigger("ajax"+(e?"Success":"Error"),[ce,b8,e?cw:cu])}ci.fireWith(cn,[ce,cp]);if(b0){cb.trigger("ajaxComplete",[ce,b8]);if(!(--bG.active)){bG.event.trigger("ajaxStop")}}}cm.promise(ce);ce.success=ce.done;ce.error=ce.fail;ce.complete=ci.add;ce.statusCode=function(co){if(co){var e;if(b3<2){for(e in co){b5[e]=[b5[e],co[e]]}}else{e=co[ce.status];ce.always(e)}}return this};b8.url=((b4||b8.url)+"").replace(an,"").replace(aC,bX[1]+"//");b8.dataTypes=bG.trim(b8.dataType||"*").toLowerCase().split(aV);if(b8.crossDomain==null){cd=aT.exec(b8.url.toLowerCase());b8.crossDomain=!!(cd&&(cd[1]!=bX[1]||cd[2]!=bX[2]||(cd[3]||(cd[1]==="http:"?80:443))!=(bX[3]||(bX[1]==="http:"?80:443))))}if(b8.data&&b8.processData&&typeof b8.data!=="string"){b8.data=bG.param(b8.data,b8.traditional)}r(w,b8,b1,ce);if(b3===2){return ce}b0=b8.global;b8.type=b8.type.toUpperCase();b8.hasContent=!s.test(b8.type);if(b0&&bG.active++===0){bG.event.trigger("ajaxStart")}if(!b8.hasContent){if(b8.data){b8.url+=(bN.test(b8.url)?"&":"?")+b8.data;delete b8.data}b7=b8.url;if(b8.cache===false){var bZ=bG.now(),ck=b8.url.replace(P,"$1_="+bZ);b8.url=ck+((ck===b8.url)?(bN.test(b8.url)?"&":"?")+"_="+bZ:"")}}if(b8.data&&b8.hasContent&&b8.contentType!==false||b1.contentType){ce.setRequestHeader("Content-Type",b8.contentType)}if(b8.ifModified){b7=b7||b8.url;if(bG.lastModified[b7]){ce.setRequestHeader("If-Modified-Since",bG.lastModified[b7])}if(bG.etag[b7]){ce.setRequestHeader("If-None-Match",bG.etag[b7])}}ce.setRequestHeader("Accept",b8.dataTypes[0]&&b8.accepts[b8.dataTypes[0]]?b8.accepts[b8.dataTypes[0]]+(b8.dataTypes[0]!=="*"?", "+aX+"; q=0.01":""):b8.accepts["*"]);for(cf in b8.headers){ce.setRequestHeader(cf,b8.headers[cf])}if(b8.beforeSend&&(b8.beforeSend.call(cn,ce,b8)===false||b3===2)){return ce.abort()}b6="abort";for(cf in {success:1,error:1,complete:1}){ce[cf](b8[cf])}cg=r(a6,b8,b1,ce);if(!cg){ca(-1,"No Transport")}else{ce.readyState=1;if(b0){cb.trigger("ajaxSend",[ce,b8])}if(b8.async&&b8.timeout>0){b9=setTimeout(function(){ce.abort("timeout")},b8.timeout)}try{b3=1;cg.send(cc,ca)}catch(ch){if(b3<2){ca(-1,ch)}else{throw ch}}}return ce},active:0,lastModified:{},etag:{}});function h(b7,b6,b3){var b2,b4,b1,e,bZ=b7.contents,b5=b7.dataTypes,b0=b7.responseFields;for(b4 in b0){if(b4 in b3){b6[b0[b4]]=b3[b4]}}while(b5[0]==="*"){b5.shift();if(b2===aB){b2=b7.mimeType||b6.getResponseHeader("content-type")}}if(b2){for(b4 in bZ){if(bZ[b4]&&bZ[b4].test(b2)){b5.unshift(b4);break}}}if(b5[0] in b3){b1=b5[0]}else{for(b4 in b3){if(!b5[0]||b7.converters[b4+" "+b5[0]]){b1=b4;break}if(!e){e=b4}}b1=b1||e}if(b1){if(b1!==b5[0]){b5.unshift(b1)}return b3[b1]}}function ae(b9,b1){var b7,bZ,b5,b3,b6=b9.dataTypes.slice(),b0=b6[0],b8={},b2=0;if(b9.dataFilter){b1=b9.dataFilter(b1,b9.dataType)}if(b6[1]){for(b7 in b9.converters){b8[b7.toLowerCase()]=b9.converters[b7]}}for(;(b5=b6[++b2]);){if(b5!=="*"){if(b0!=="*"&&b0!==b5){b7=b8[b0+" "+b5]||b8["* "+b5];if(!b7){for(bZ in b8){b3=bZ.split(" ");if(b3[1]===b5){b7=b8[b0+" "+b3[0]]||b8["* "+b3[0]];if(b7){if(b7===true){b7=b8[bZ]}else{if(b8[bZ]!==true){b5=b3[0];b6.splice(b2--,0,b5)}}break}}}}if(b7!==true){if(b7&&b9["throws"]){b1=b7(b1)}else{try{b1=b7(b1)}catch(b4){return{state:"parsererror",error:b7?b4:"No conversion from "+b0+" to "+b5}}}}}b0=b5}}return{state:"success",data:b1}}var bp=[],aw=/\?/,a5=/(=)\?(?=&|$)|\?\?/,bl=bG.now();bG.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=bp.pop()||(bG.expando+"_"+(bl++));this[e]=true;return e}});bG.ajaxPrefilter("json jsonp",function(b8,b3,b7){var b6,e,b5,b1=b8.data,bZ=b8.url,b0=b8.jsonp!==false,b4=b0&&a5.test(bZ),b2=b0&&!b4&&typeof b1==="string"&&!(b8.contentType||"").indexOf("application/x-www-form-urlencoded")&&a5.test(b1);if(b8.dataTypes[0]==="jsonp"||b4||b2){b6=b8.jsonpCallback=bG.isFunction(b8.jsonpCallback)?b8.jsonpCallback():b8.jsonpCallback;e=a2[b6];if(b4){b8.url=bZ.replace(a5,"$1"+b6)}else{if(b2){b8.data=b1.replace(a5,"$1"+b6)}else{if(b0){b8.url+=(aw.test(bZ)?"&":"?")+b8.jsonp+"="+b6}}}b8.converters["script json"]=function(){if(!b5){bG.error(b6+" was not called")}return b5[0]};b8.dataTypes[0]="json";a2[b6]=function(){b5=arguments};b7.always(function(){a2[b6]=e;if(b8[b6]){b8.jsonpCallback=b3.jsonpCallback;bp.push(b6)}if(b5&&bG.isFunction(e)){e(b5[0])}b5=e=aB});return"script"}});bG.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){bG.globalEval(e);return e}}});bG.ajaxPrefilter("script",function(e){if(e.cache===aB){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});bG.ajaxTransport("script",function(b0){if(b0.crossDomain){var e,bZ=o.head||o.getElementsByTagName("head")[0]||o.documentElement;return{send:function(b1,b2){e=o.createElement("script");e.async="async";if(b0.scriptCharset){e.charset=b0.scriptCharset}e.src=b0.url;e.onload=e.onreadystatechange=function(b4,b3){if(b3||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bZ&&e.parentNode){bZ.removeChild(e)}e=aB;if(!b3){b2(200,"success")}}};bZ.insertBefore(e,bZ.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var ah,aO=a2.ActiveXObject?function(){for(var e in ah){ah[e](0,1)}}:false,au=0;function bB(){try{return new a2.XMLHttpRequest()}catch(bZ){}}function bb(){try{return new a2.ActiveXObject("Microsoft.XMLHTTP")}catch(bZ){}}bG.ajaxSettings.xhr=a2.ActiveXObject?function(){return !this.isLocal&&bB()||bb()}:bB;(function(e){bG.extend(bG.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(bG.ajaxSettings.xhr());if(bG.support.ajax){bG.ajaxTransport(function(e){if(!e.crossDomain||bG.support.cors){var bZ;return{send:function(b5,b0){var b3,b2,b4=e.xhr();if(e.username){b4.open(e.type,e.url,e.async,e.username,e.password)}else{b4.open(e.type,e.url,e.async)}if(e.xhrFields){for(b2 in e.xhrFields){b4[b2]=e.xhrFields[b2]}}if(e.mimeType&&b4.overrideMimeType){b4.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!b5["X-Requested-With"]){b5["X-Requested-With"]="XMLHttpRequest"}try{for(b2 in b5){b4.setRequestHeader(b2,b5[b2])}}catch(b1){}b4.send((e.hasContent&&e.data)||null);bZ=function(ce,b8){var b9,b7,b6,cc,cb;try{if(bZ&&(b8||b4.readyState===4)){bZ=aB;if(b3){b4.onreadystatechange=bG.noop;if(aO){delete ah[b3]}}if(b8){if(b4.readyState!==4){b4.abort()}}else{b9=b4.status;b6=b4.getAllResponseHeaders();cc={};cb=b4.responseXML;if(cb&&cb.documentElement){cc.xml=cb}try{cc.text=b4.responseText}catch(ce){}try{b7=b4.statusText}catch(cd){b7=""}if(!b9&&e.isLocal&&!e.crossDomain){b9=cc.text?200:404}else{if(b9===1223){b9=204}}}}}catch(ca){if(!b8){b0(-1,ca)}}if(cc){b0(b9,b7,cc,b6)}};if(!e.async){bZ()}else{if(b4.readyState===4){setTimeout(bZ,0)}else{b3=++au;if(aO){if(!ah){ah={};bG(a2).unload(aO)}ah[b3]=bZ}b4.onreadystatechange=bZ}}},abort:function(){if(bZ){bZ(0,1)}}}}})}var L,ab,bO=/^(?:toggle|show|hide)$/,bH=new RegExp("^(?:([-+])=|)("+bx+")([a-z%]*)$","i"),bM=/queueHooks$/,ax=[i],a1={"*":[function(bZ,b5){var b2,b6,e,b7=this.createTween(bZ,b5),b3=bH.exec(b5),b4=b7.cur(),b0=+b4||0,b1=1;if(b3){b2=+b3[2];b6=b3[3]||(bG.cssNumber[bZ]?"":"px");if(b6!=="px"&&b0){b0=bG.css(b7.elem,bZ,true)||b2||1;do{e=b1=b1||".5";b0=b0/b1;bG.style(b7.elem,bZ,b0+b6);b1=b7.cur()/b4}while(b1!==1&&b1!==e)}b7.unit=b6;b7.start=b0;b7.end=b3[1]?b0+(b3[1]+1)*b2:b2}return b7}]};function bj(){setTimeout(function(){L=aB},0);return(L=bG.now())}function bc(bZ,e){bG.each(e,function(b4,b2){var b3=(a1[b4]||[]).concat(a1["*"]),b0=0,b1=b3.length;for(;b0-1,b7={},b6={},b0,b2;if(b9){b6=b3.position();b0=b6.top;b2=b6.left}else{b0=parseFloat(e)||0;b2=parseFloat(b8)||0}if(bG.isFunction(ca)){ca=ca.call(b1,b4,bZ)}if(ca.top!=null){b7.top=(ca.top-bZ.top)+b0}if(ca.left!=null){b7.left=(ca.left-bZ.left)+b2}if("using" in ca){ca.using.call(b1,b7)}else{b3.css(b7)}}};bG.fn.extend({position:function(){if(!this[0]){return}var b0=this[0],bZ=this.offsetParent(),b1=this.offset(),e=bm.test(bZ[0].nodeName)?{top:0,left:0}:bZ.offset();b1.top-=parseFloat(bG.css(b0,"marginTop"))||0;b1.left-=parseFloat(bG.css(b0,"marginLeft"))||0;e.top+=parseFloat(bG.css(bZ[0],"borderTopWidth"))||0;e.left+=parseFloat(bG.css(bZ[0],"borderLeftWidth"))||0;return{top:b1.top-e.top,left:b1.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.body;while(e&&(!bm.test(e.nodeName)&&bG.css(e,"position")==="static")){e=e.offsetParent}return e||o.body})}});bG.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b0,bZ){var e=/Y/.test(bZ);bG.fn[b0]=function(b1){return bG.access(this,function(b2,b5,b4){var b3=bn(b2);if(b4===aB){return b3?(bZ in b3)?b3[bZ]:b3.document.documentElement[b5]:b2[b5]}if(b3){b3.scrollTo(!e?b4:bG(b3).scrollLeft(),e?b4:bG(b3).scrollTop())}else{b2[b5]=b4}},b0,b1,arguments.length,null)}});function bn(e){return bG.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}bG.each({Height:"height",Width:"width"},function(e,bZ){bG.each({padding:"inner"+e,content:bZ,"":"outer"+e},function(b0,b1){bG.fn[b1]=function(b5,b4){var b3=arguments.length&&(b0||typeof b5!=="boolean"),b2=b0||(b5===true||b4===true?"margin":"border");return bG.access(this,function(b7,b6,b8){var b9;if(bG.isWindow(b7)){return b7.document.documentElement["client"+e]}if(b7.nodeType===9){b9=b7.documentElement;return Math.max(b7.body["scroll"+e],b9["scroll"+e],b7.body["offset"+e],b9["offset"+e],b9["client"+e])}return b8===aB?bG.css(b7,b6,b8,b2):bG.style(b7,b6,b8,b2)},bZ,b3?b5:aB,b3)}})});a2.jQuery=a2.$=bG;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return bG})}})(window);!function(a){a(function(){a.support.transition=(function(){var b=(function(){var e=document.createElement("bootstrap"),d={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in d){if(e.style[c]!==undefined){return d[c]}}}());return b&&{end:b}})()})}(window.jQuery);!function(c){var b='[data-dismiss="alert"]',a=function(d){c(d).on("click",b,this.close)};a.prototype.close=function(i){var h=c(this),f=h.attr("data-target"),g;if(!f){f=h.attr("href");f=f&&f.replace(/.*(?=#[^\s]*$)/,"")}g=c(f);i&&i.preventDefault();g.length||(g=h.hasClass("alert")?h:h.parent());g.trigger(i=c.Event("close"));if(i.isDefaultPrevented()){return}g.removeClass("in");function d(){g.trigger("closed").remove()}c.support.transition&&g.hasClass("fade")?g.on(c.support.transition.end,d):d()};c.fn.alert=function(d){return this.each(function(){var f=c(this),e=f.data("alert");if(!e){f.data("alert",(e=new a(this)))}if(typeof d=="string"){e[d].call(f)}})};c.fn.alert.Constructor=a;c(function(){c("body").on("click.alert.data-api",b,a.prototype.close)})}(window.jQuery);!function(b){var a=function(d,c){this.$element=b(d);this.options=b.extend({},b.fn.button.defaults,c)};a.prototype.setState=function(f){var h="disabled",c=this.$element,e=c.data(),g=c.is("input")?"val":"html";f=f+"Text";e.resetText||c.data("resetText",c[g]());c[g](e[f]||this.options[f]);setTimeout(function(){f=="loadingText"?c.addClass(h).attr(h,h):c.removeClass(h).removeAttr(h)},0)};a.prototype.toggle=function(){var c=this.$element.parent('[data-toggle="buttons-radio"]');c&&c.find(".active").removeClass("active");this.$element.toggleClass("active")};b.fn.button=function(c){return this.each(function(){var f=b(this),e=f.data("button"),d=typeof c=="object"&&c;if(!e){f.data("button",(e=new a(this,d)))}if(c=="toggle"){e.toggle()}else{if(c){e.setState(c)}}})};b.fn.button.defaults={loadingText:"loading..."};b.fn.button.Constructor=a;b(function(){b("body").on("click.button.data-api","[data-toggle^=button]",function(d){var c=b(d.target);if(!c.hasClass("btn")){c=c.closest(".btn")}c.button("toggle")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=c;this.options.slide&&this.slide(this.options.slide);this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(c){if(!c){this.paused=false}this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval));return this},to:function(g){var c=this.$element.find(".item.active"),d=c.parent().children(),e=d.index(c),f=this;if(g>(d.length-1)||g<0){return}if(this.sliding){return this.$element.one("slid",function(){f.to(g)})}if(e==g){return this.pause().cycle()}return this.slide(g>e?"next":"prev",a(d[g]))},pause:function(c){if(!c){this.paused=true}if(this.$element.find(".next, .prev").length&&a.support.transition.end){this.$element.trigger(a.support.transition.end);this.cycle()}clearInterval(this.interval);this.interval=null;return this},next:function(){if(this.sliding){return}return this.slide("next")},prev:function(){if(this.sliding){return}return this.slide("prev")},slide:function(j,d){var l=this.$element.find(".item.active"),c=d||l[j](),i=this.interval,k=j=="next"?"left":"right",f=j=="next"?"first":"last",g=this,h=a.Event("slide",{relatedTarget:c[0]});this.sliding=true;i&&this.pause();c=c.length?c:this.$element.find(".item")[f]();if(c.hasClass("active")){return}if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(h);if(h.isDefaultPrevented()){return}c.addClass(j);c[0].offsetWidth;l.addClass(k);c.addClass(k);this.$element.one(a.support.transition.end,function(){c.removeClass([j,k].join(" ")).addClass("active");l.removeClass(["active",k].join(" "));g.sliding=false;setTimeout(function(){g.$element.trigger("slid")},0)})}else{this.$element.trigger(h);if(h.isDefaultPrevented()){return}l.removeClass("active");c.addClass("active");this.sliding=false;this.$element.trigger("slid")}i&&this.cycle();return this}};a.fn.carousel=function(c){return this.each(function(){var g=a(this),f=g.data("carousel"),d=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c),e=typeof c=="string"?c:d.slide;if(!f){g.data("carousel",(f=new b(this,d)))}if(typeof c=="number"){f.to(c)}else{if(e){f[e]()}else{if(d.interval){f.cycle()}}}})};a.fn.carousel.defaults={interval:5000,pause:"hover"};a.fn.carousel.Constructor=b;a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(h){var g=a(this),d,c=a(g.attr("data-target")||(d=g.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!c.data("modal")&&a.extend({},c.data(),g.data());c.carousel(f);h.preventDefault()})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.collapse.defaults,c);if(this.options.parent){this.$parent=a(this.options.parent)}this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var c=this.$element.hasClass("width");return c?"width":"height"},show:function(){var f,c,e,d;if(this.transitioning){return}f=this.dimension();c=a.camelCase(["scroll",f].join("-"));e=this.$parent&&this.$parent.find("> .accordion-group > .in");if(e&&e.length){d=e.data("collapse");if(d&&d.transitioning){return}e.collapse("hide");d||e.data("collapse",null)}this.$element[f](0);this.transition("addClass",a.Event("show"),"shown");a.support.transition&&this.$element[f](this.$element[0][c])},hide:function(){var c;if(this.transitioning){return}c=this.dimension();this.reset(this.$element[c]());this.transition("removeClass",a.Event("hide"),"hidden");this.$element[c](0)},reset:function(c){var d=this.dimension();this.$element.removeClass("collapse")[d](c||"auto")[0].offsetWidth;this.$element[c!==null?"addClass":"removeClass"]("collapse");return this},transition:function(g,d,e){var f=this,c=function(){if(d.type=="show"){f.reset()}f.transitioning=0;f.$element.trigger(e)};this.$element.trigger(d);if(d.isDefaultPrevented()){return}this.transitioning=1;this.$element[g]("in");a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,c):c()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};a.fn.collapse=function(c){return this.each(function(){var f=a(this),e=f.data("collapse"),d=typeof c=="object"&&c;if(!e){f.data("collapse",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.collapse.defaults={toggle:true};a.fn.collapse.Constructor=b;a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(h){var g=a(this),c,f=g.attr("data-target")||h.preventDefault()||(c=g.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),d=a(f).data("collapse")?"toggle":g.data();g[a(f).hasClass("in")?"addClass":"removeClass"]("collapsed");a(f).collapse(d)})})}(window.jQuery);!function(e){var b="[data-toggle=dropdown]",a=function(g){var f=e(g).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){f.parent().removeClass("open")})};a.prototype={constructor:a,toggle:function(i){var h=e(this),g,f;if(h.is(".disabled, :disabled")){return}g=d(h);f=g.hasClass("open");c();if(!f){g.toggleClass("open");h.focus()}return false},keydown:function(k){var j,l,f,i,h,g;if(!/(38|40|27)/.test(k.keyCode)){return}j=e(this);k.preventDefault();k.stopPropagation();if(j.is(".disabled, :disabled")){return}i=d(j);h=i.hasClass("open");if(!h||(h&&k.keyCode==27)){return j.click()}l=e("[role=menu] li:not(.divider) a",i);if(!l.length){return}g=l.index(l.filter(":focus"));if(k.keyCode==38&&g>0){g--}if(k.keyCode==40&&g').appendTo(document.body);if(this.options.backdrop!="static"){this.$backdrop.click(b.proxy(this.hide,this))}if(c){this.$backdrop[0].offsetWidth}this.$backdrop.addClass("in");c?this.$backdrop.one(b.support.transition.end,f):f()}else{if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");b.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(b.support.transition.end,b.proxy(this.removeBackdrop,this)):this.removeBackdrop()}else{if(f){f()}}}}};b.fn.modal=function(c){return this.each(function(){var f=b(this),e=f.data("modal"),d=b.extend({},b.fn.modal.defaults,f.data(),typeof c=="object"&&c);if(!e){f.data("modal",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}else{if(d.show){e.show()}}})};b.fn.modal.defaults={backdrop:true,keyboard:true,show:true};b.fn.modal.Constructor=a;b(function(){b("body").on("click.modal.data-api",'[data-toggle="modal"]',function(h){var g=b(this),d=g.attr("href"),c=b(g.attr("data-target")||(d&&d.replace(/.*(?=#[^\s]+$)/,""))),f=c.data("modal")?"toggle":b.extend({remote:!/#/.test(d)&&d},c.data(),g.data());h.preventDefault();c.modal(f).one("hide",function(){g.focus()})})})}(window.jQuery);!function(b){var a=function(d,c){this.init("tooltip",d,c)};a.prototype={constructor:a,init:function(f,e,d){var g,c;this.type=f;this.$element=b(e);this.options=this.getOptions(d);this.enabled=true;if(this.options.trigger=="click"){this.$element.on("click."+this.type,this.options.selector,b.proxy(this.toggle,this))}else{if(this.options.trigger!="manual"){g=this.options.trigger=="hover"?"mouseenter":"focus";c=this.options.trigger=="hover"?"mouseleave":"blur";this.$element.on(g+"."+this.type,this.options.selector,b.proxy(this.enter,this));this.$element.on(c+"."+this.type,this.options.selector,b.proxy(this.leave,this))}}this.options.selector?(this._options=b.extend({},this.options,{trigger:"manual",selector:""})):this.fixTitle()},getOptions:function(c){c=b.extend({},b.fn[this.type].defaults,c,this.$element.data());if(c.delay&&typeof c.delay=="number"){c.delay={show:c.delay,hide:c.delay}}return c},enter:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show){return c.show()}clearTimeout(this.timeout);c.hoverState="in";this.timeout=setTimeout(function(){if(c.hoverState=="in"){c.show()}},c.options.delay.show)},leave:function(d){var c=b(d.currentTarget)[this.type](this._options).data(this.type);if(this.timeout){clearTimeout(this.timeout)}if(!c.options.delay||!c.options.delay.hide){return c.hide()}c.hoverState="out";this.timeout=setTimeout(function(){if(c.hoverState=="out"){c.hide()}},c.options.delay.hide)},show:function(){var g,c,i,e,h,d,f;if(this.hasContent()&&this.enabled){g=this.tip();this.setContent();if(this.options.animation){g.addClass("fade")}d=typeof this.options.placement=="function"?this.options.placement.call(this,g[0],this.$element[0]):this.options.placement;c=/in/.test(d);g.remove().css({top:0,left:0,display:"block"}).appendTo(c?this.$element:document.body);i=this.getPosition(c);e=g[0].offsetWidth;h=g[0].offsetHeight;switch(c?d.split(" ")[1]:d){case"bottom":f={top:i.top+i.height,left:i.left+i.width/2-e/2};break;case"top":f={top:i.top-h,left:i.left+i.width/2-e/2};break;case"left":f={top:i.top+i.height/2-h/2,left:i.left-e};break;case"right":f={top:i.top+i.height/2-h/2,left:i.left+i.width};break}g.css(f).addClass(d).addClass("in")}},setContent:function(){var d=this.tip(),c=this.getTitle();d.find(".tooltip-inner")[this.options.html?"html":"text"](c);d.removeClass("fade in top bottom left right")},hide:function(){var c=this,d=this.tip();d.removeClass("in");function e(){var f=setTimeout(function(){d.off(b.support.transition.end).remove()},500);d.one(b.support.transition.end,function(){clearTimeout(f);d.remove()})}b.support.transition&&this.$tip.hasClass("fade")?e():d.remove();return this},fixTitle:function(){var c=this.$element;if(c.attr("title")||typeof(c.attr("data-original-title"))!="string"){c.attr("data-original-title",c.attr("title")||"").removeAttr("title")}},hasContent:function(){return this.getTitle()},getPosition:function(c){return b.extend({},(c?{top:0,left:0}:this.$element.offset()),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var e,c=this.$element,d=this.options;e=c.attr("data-original-title")||(typeof d.title=="function"?d.title.call(c[0]):d.title);return e},tip:function(){return this.$tip=this.$tip||b(this.options.template)},validate:function(){if(!this.$element[0].parentNode){this.hide();this.$element=null;this.options=null}},enable:function(){this.enabled=true},disable:function(){this.enabled=false},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}};b.fn.tooltip=function(c){return this.each(function(){var f=b(this),e=f.data("tooltip"),d=typeof c=="object"&&c;if(!e){f.data("tooltip",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.tooltip.Constructor=a;b.fn.tooltip.defaults={animation:true,placement:"top",selector:false,template:'
    ',trigger:"hover",title:"",delay:0,html:true}}(window.jQuery);!function(b){var a=function(d,c){this.init("popover",d,c)};a.prototype=b.extend({},b.fn.tooltip.Constructor.prototype,{constructor:a,setContent:function(){var e=this.tip(),d=this.getTitle(),c=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](d);e.find(".popover-content > *")[this.options.html?"html":"text"](c);e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var d,c=this.$element,e=this.options;d=c.attr("data-content")||(typeof e.content=="function"?e.content.call(c[0]):e.content);return d},tip:function(){if(!this.$tip){this.$tip=b(this.options.template)}return this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}});b.fn.popover=function(c){return this.each(function(){var f=b(this),e=f.data("popover"),d=typeof c=="object"&&c;if(!e){f.data("popover",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.popover.Constructor=a;b.fn.popover.defaults=b.extend({},b.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'

    '})}(window.jQuery);!function(b){function a(f,e){var g=b.proxy(this.process,this),c=b(f).is("body")?b(window):b(f),d;this.options=b.extend({},b.fn.scrollspy.defaults,e);this.$scrollElement=c.on("scroll.scroll-spy.data-api",g);this.selector=(this.options.target||((d=b(f).attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""))||"")+" .nav li > a";this.$body=b("body");this.refresh();this.process()}a.prototype={constructor:a,refresh:function(){var c=this,d;this.offsets=b([]);this.targets=b([]);d=this.$body.find(this.selector).map(function(){var f=b(this),e=f.data("target")||f.attr("href"),g=/^#\w/.test(e)&&b(e);return(g&&g.length&&[[g.position().top,e]])||null}).sort(function(f,e){return f[0]-e[0]}).each(function(){c.offsets.push(this[0]);c.targets.push(this[1])})},process:function(){var h=this.$scrollElement.scrollTop()+this.options.offset,e=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,g=e-this.$scrollElement.height(),f=this.offsets,c=this.targets,j=this.activeTarget,d;if(h>=g){return j!=(d=c.last()[0])&&this.activate(d)}for(d=f.length;d--;){j!=c[d]&&h>=f[d]&&(!f[d+1]||h<=f[d+1])&&this.activate(c[d])}},activate:function(e){var d,c;this.activeTarget=e;b(this.selector).parent(".active").removeClass("active");c=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]';d=b(c).parent("li").addClass("active");if(d.parent(".dropdown-menu").length){d=d.closest("li.dropdown").addClass("active")}d.trigger("activate")}};b.fn.scrollspy=function(c){return this.each(function(){var f=b(this),e=f.data("scrollspy"),d=typeof c=="object"&&c;if(!e){f.data("scrollspy",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.scrollspy.Constructor=a;b.fn.scrollspy.defaults={offset:10};b(window).on("load",function(){b('[data-spy="scroll"]').each(function(){var c=b(this);c.scrollspy(c.data())})})}(window.jQuery);!function(b){var a=function(c){this.element=b(c)};a.prototype={constructor:a,show:function(){var i=this.element,f=i.closest("ul:not(.dropdown-menu)"),d=i.attr("data-target"),g,c,h;if(!d){d=i.attr("href");d=d&&d.replace(/.*(?=#[^\s]*$)/,"")}if(i.parent("li").hasClass("active")){return}g=f.find(".active a").last()[0];h=b.Event("show",{relatedTarget:g});i.trigger(h);if(h.isDefaultPrevented()){return}c=b(d);this.activate(i.parent("li"),f);this.activate(c,c.parent(),function(){i.trigger({type:"shown",relatedTarget:g})})},activate:function(e,d,h){var c=d.find("> .active"),g=h&&b.support.transition&&c.hasClass("fade");function f(){c.removeClass("active").find("> .dropdown-menu > .active").removeClass("active");e.addClass("active");if(g){e[0].offsetWidth;e.addClass("in")}else{e.removeClass("fade")}if(e.parent(".dropdown-menu")){e.closest("li.dropdown").addClass("active")}h&&h()}g?c.one(b.support.transition.end,f):f();c.removeClass("in")}};b.fn.tab=function(c){return this.each(function(){var e=b(this),d=e.data("tab");if(!d){e.data("tab",(d=new a(this)))}if(typeof c=="string"){d[c]()}})};b.fn.tab.Constructor=a;b(function(){b("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(c){c.preventDefault();b(this).tab("show")})})}(window.jQuery);!function(a){var b=function(d,c){this.$element=a(d);this.options=a.extend({},a.fn.typeahead.defaults,c);this.matcher=this.options.matcher||this.matcher;this.sorter=this.options.sorter||this.sorter;this.highlighter=this.options.highlighter||this.highlighter;this.updater=this.options.updater||this.updater;this.$menu=a(this.options.menu).appendTo("body");this.source=this.options.source;this.shown=false;this.listen()};b.prototype={constructor:b,select:function(){var c=this.$menu.find(".active").attr("data-value");this.$element.val(this.updater(c)).change();return this.hide()},updater:function(c){return c},show:function(){var c=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});this.$menu.css({top:c.top+c.height,left:c.left});this.$menu.show();this.shown=true;return this},hide:function(){this.$menu.hide();this.shown=false;return this},lookup:function(d){var c;this.query=this.$element.val();if(!this.query||this.query.length"+f+""})},render:function(c){var d=this;c=a(c).map(function(e,f){e=a(d.options.item).attr("data-value",f);e.find("a").html(d.highlighter(f));return e[0]});c.first().addClass("active");this.$menu.html(c);return this},next:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.next();if(!c.length){c=a(this.$menu.find("li")[0])}c.addClass("active")},prev:function(d){var e=this.$menu.find(".active").removeClass("active"),c=e.prev();if(!c.length){c=this.$menu.find("li").last()}c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this));if(a.browser.webkit||a.browser.msie){this.$element.on("keydown",a.proxy(this.keydown,this))}this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},move:function(c){if(!this.shown){return}switch(c.keyCode){case 9:case 13:case 27:c.preventDefault();break;case 38:c.preventDefault();this.prev();break;case 40:c.preventDefault();this.next();break}c.stopPropagation()},keydown:function(c){this.suppressKeyPressRepeat=!~a.inArray(c.keyCode,[40,38,9,13,27]);this.move(c)},keypress:function(c){if(this.suppressKeyPressRepeat){return}this.move(c)},keyup:function(c){switch(c.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown){return}this.select();break;case 27:if(!this.shown){return}this.hide();break;default:this.lookup()}c.stopPropagation();c.preventDefault()},blur:function(d){var c=this;setTimeout(function(){c.hide()},150)},click:function(c){c.stopPropagation();c.preventDefault();this.select()},mouseenter:function(c){this.$menu.find(".active").removeClass("active");a(c.currentTarget).addClass("active")}};a.fn.typeahead=function(c){return this.each(function(){var f=a(this),e=f.data("typeahead"),d=typeof c=="object"&&c;if(!e){f.data("typeahead",(e=new b(this,d)))}if(typeof c=="string"){e[c]()}})};a.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1};a.fn.typeahead.Constructor=b;a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(d){var c=a(this);if(c.data("typeahead")){return}d.preventDefault();c.typeahead(c.data())})})}(window.jQuery);!function(b){var a=function(d,c){this.options=b.extend({},b.fn.affix.defaults,c);this.$window=b(window).on("scroll.affix.data-api",b.proxy(this.checkPosition,this));this.$element=b(d);this.checkPosition()};a.prototype.checkPosition=function(){if(!this.$element.is(":visible")){return}var g=b(document).height(),i=this.$window.scrollTop(),c=this.$element.offset(),j=this.options.offset,e=j.bottom,f=j.top,h="affix affix-top affix-bottom",d;if(typeof j!="object"){e=f=j}if(typeof f=="function"){f=j.top()}if(typeof e=="function"){e=j.bottom()}d=this.unpin!=null&&(i+this.unpin<=c.top)?false:e!=null&&(c.top+this.$element.height()>=g-e)?"bottom":f!=null&&i<=f?"top":false;if(this.affixed===d){return}this.affixed=d;this.unpin=d=="bottom"?c.top-i:null;this.$element.removeClass(h).addClass("affix"+(d?"-"+d:""))};b.fn.affix=function(c){return this.each(function(){var f=b(this),e=f.data("affix"),d=typeof c=="object"&&c;if(!e){f.data("affix",(e=new a(this,d)))}if(typeof c=="string"){e[c]()}})};b.fn.affix.Constructor=a;b.fn.affix.defaults={offset:0};b(window).on("load",function(){b('[data-spy="affix"]').each(function(){var d=b(this),c=d.data();c.offset=c.offset||{};c.offsetBottom&&(c.offset.bottom=c.offsetBottom);c.offsetTop&&(c.offset.top=c.offsetTop);d.affix(c)})})}(window.jQuery);var q=null;window.PR_SHOULD_USE_CONTINUATION=!0;(function(){function d(F){function w(J){var K=J.charCodeAt(0);if(K!==92){return K}var I=J.charAt(1);return(K=k[I])?K:"0"<=I&&I<="7"?parseInt(J.substring(1),8):I==="u"||I==="x"?parseInt(J.substring(2),16):J.charCodeAt(1)}function C(I){if(I<32){return(I<16?"\\x0":"\\x")+I.toString(16)}I=String.fromCharCode(I);if(I==="\\"||I==="-"||I==="["||I==="]"){I="\\"+I}return I}function A(J){for(var M=J.substring(1,J.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),J=[],I=[],O=M[0]==="^",P=O?1:0,L=M.length;P122||(N<65||K>90||I.push([Math.max(65,K)|32,Math.min(N,90)|32]),N<97||K>122||I.push([Math.max(97,K)&-33,Math.min(N,122)&-33]))}}I.sort(function(Q,R){return Q[0]-R[0]||R[1]-Q[1]});M=[];K=[NaN,NaN];for(P=0;PL[0]&&(L[1]+1>L[0]&&I.push("-"),I.push(C(L[1])))}I.push("]");return I.join("")}function E(J){for(var M=J.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),I=M.length,N=[],O=0,L=0;O=2&&J==="["?M[O]=A(K):J!=="\\"&&(M[O]=K.replace(/[A-Za-z]/g,function(P){P=P.charCodeAt(0);return"["+String.fromCharCode(P&-33,P|32)+"]"}))}}return M.join("")}for(var G=0,H=!1,x=!1,u=0,D=F.length;u=5&&"lang-"===O.substring(0,5))&&!(D&&typeof D[1]==="string")){M=!1,O="src"}M||(B[K]=O)}I=L;L+=K.length;if(M){M=D[1];var H=K.indexOf(M),G=H+M.length;D[2]&&(G=K.length-D[2].length,H=G-M.length);O=O.substring(5);t(F+I,K.substring(0,H),x,C);t(F+I+H,M,s(O,M),C);t(F+I+G,K.substring(G),x,C)}else{C.push(F+I,O)}}P.e=C}var w={},A;(function(){for(var G=u.concat(k),B=[],F={},H=0,E=G.length;H=0;){w[I.charAt(C)]=D}}D=D[1];I=""+D;F.hasOwnProperty(I)||(B.push(D),F[I]=q)}B.push(/[\S\s]/);A=d(B)})();var v=k.length;return x}function o(u){var k=[],w=[];u.tripleQuotedStrings?k.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):u.multiLineStrings?k.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,q,"'\"`"]):k.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]);u.verbatimStrings&&w.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var v=u.hashComments;v&&(u.cStyleComments?(v>1?k.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):k.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),w.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):k.push(["com",/^#[^\n\r]*/,q,"#"]));u.cStyleComments&&(w.push(["com",/^\/\/[^\n\r]*/,q]),w.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q]));u.regexLiterals&&w.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]);(v=u.types)&&w.push(["typ",v]);u=(""+u.keywords).replace(/^ | $/g,"");u.length&&w.push(["kwd",RegExp("^(?:"+u.replace(/[\s,]+/g,"|")+")\\b"),q]);k.push(["pln",/^\s+/,q," \r\n\t\xa0"]);w.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]);return h(k,w)}function r(H,x){function E(K){switch(K.nodeType){case 1:if(B.test(K.className)){break}if("BR"===K.nodeName){C(K),K.parentNode&&K.parentNode.removeChild(K)}else{for(K=K.firstChild;K;K=K.nextSibling){E(K)}}break;case 3:case 4:if(v){var k=K.nodeValue,L=k.match(I);if(L){var M=k.substring(0,L.index);K.nodeValue=M;(k=k.substring(L.index+L[0].length))&&K.parentNode.insertBefore(J.createTextNode(k),K.nextSibling);C(K);M||K.parentNode.removeChild(K)}}}}function C(K){function k(M,R){var Q=R?M.cloneNode(!1):M,P=M.parentNode;if(P){var P=k(P,1),O=M.nextSibling;P.appendChild(Q);for(var N=O;N;N=O){O=N.nextSibling,P.appendChild(N)}}return Q}for(;!K.nextSibling;){if(K=K.parentNode,!K){return}}for(var K=k(K.nextSibling,0),L;(L=K.parentNode)&&L.nodeType===1;){K=L}F.push(K)}var B=/(?:^|\s)nocode(?:\s|$)/,I=/\r\n?|\n/,J=H.ownerDocument,A;H.currentStyle?A=H.currentStyle.whiteSpace:window.getComputedStyle&&(A=J.defaultView.getComputedStyle(H,q).getPropertyValue("white-space"));var v=A&&"pre"===A.substring(0,3);for(A=J.createElement("LI");H.firstChild;){A.appendChild(H.firstChild)}for(var F=[A],D=0;D=0;){var v=k[w];y.hasOwnProperty(v)?window.console&&console.warn("cannot override language handler %s",v):y[v]=u}}function s(u,k){if(!u||!y.hasOwnProperty(u)){u=/^\s*=J&&(Q+=2);T>=V&&(X+=2)}}catch(C){"console" in window&&console.log(C&&C.stack?C.stack:C)}}var m=["break,continue,do,else,for,if,return,while"],j=[[m,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],n=[j,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],l=[j,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],i=[l,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],j=[j,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],g=[m,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],f=[m,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],m=[m,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,b=/\S/,a=o({keywords:[n,i,j,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+g,f,m],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),y={};z(a,["default-code"]);z(h([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);z(h([["pln",/^\s+/,q," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);z(h([],[["atv",/^[\S\s]+/]]),["uq.val"]);z(o({keywords:n,hashComments:!0,cStyleComments:!0,types:e}),["c","cc","cpp","cxx","cyc","m"]);z(o({keywords:"null,true,false"}),["json"]);z(o({keywords:i,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:e}),["cs"]);z(o({keywords:l,cStyleComments:!0}),["java"]);z(o({keywords:m,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]);z(o({keywords:g,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]);z(o({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]);z(o({keywords:f,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]);z(o({keywords:j,cStyleComments:!0,regexLiterals:!0}),["js"]);z(o({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);z(h([],[["str",/^[\S\s]+/]]),["regex"]);window.prettyPrintOne=function(u,k,w){var v=document.createElement("PRE");v.innerHTML=u;w&&r(v,w);p({g:k,i:w,h:v});return v.innerHTML};window.prettyPrint=function(E){function v(){for(var L=window.PR_SHOULD_USE_CONTINUATION?w.now()+250:Infinity;u=0){var I=I.match(B),K,H;if(H=!I){H=O;for(var M=void 0,N=H.firstChild;N;N=N.nextSibling){var J=N.nodeType,M=J===1?M?H:N:J===3?b.test(N.nodeValue)?H:M:M}H=(K=M===H?void 0:M)&&"CODE"===K.tagName}H&&(I=K.className.match(B));I&&(I=I[1]);H=!1;for(M=O.parentNode;M;M=M.parentNode){if((M.tagName==="pre"||M.tagName==="code"||M.tagName==="xmp")&&M.className&&M.className.indexOf("prettyprint")>=0){H=!0;break}}H||((H=(H=O.className.match(/\blinenums\b(?::(\d+))?/))?H[1]&&H[1].length?+H[1]:!0:!1)&&r(O,H),D={g:I,h:O,i:H},p(D))}}u + + + + + + + + dependency-check - Project License + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    +
    +

    Overview

    +

    Typically the licenses listed for the project are that of the project itself, and not of dependencies.

    +
    +

    Project License

    +
    +

    GNU General Public License version 3

    +
    +
                        GNU GENERAL PUBLIC LICENSE 
    +                       Version 3, 29 June 2007
    +
    + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
    + Everyone is permitted to copy and distribute verbatim copies
    + of this license document, but changing it is not allowed.
    +
    +                            Preamble
    +
    +  The GNU General Public License is a free, copyleft license for
    +software and other kinds of works.
    +
    +  The licenses for most software and other practical works are designed
    +to take away your freedom to share and change the works.  By contrast,
    +the GNU General Public License is intended to guarantee your freedom to
    +share and change all versions of a program--to make sure it remains free
    +software for all its users.  We, the Free Software Foundation, use the
    +GNU General Public License for most of our software; it applies also to
    +any other work released this way by its authors.  You can apply it to
    +your programs, too.
    +
    +  When we speak of free software, we are referring to freedom, not
    +price.  Our General Public Licenses are designed to make sure that you
    +have the freedom to distribute copies of free software (and charge for
    +them if you wish), that you receive source code or can get it if you
    +want it, that you can change the software or use pieces of it in new
    +free programs, and that you know you can do these things.
    +
    +  To protect your rights, we need to prevent others from denying you
    +these rights or asking you to surrender the rights.  Therefore, you have
    +certain responsibilities if you distribute copies of the software, or if
    +you modify it: responsibilities to respect the freedom of others.
    +
    +  For example, if you distribute copies of such a program, whether
    +gratis or for a fee, you must pass on to the recipients the same
    +freedoms that you received.  You must make sure that they, too, receive
    +or can get the source code.  And you must show them these terms so they
    +know their rights.
    +
    +  Developers that use the GNU GPL protect your rights with two steps:
    +(1) assert copyright on the software, and (2) offer you this License
    +giving you legal permission to copy, distribute and/or modify it.
    +
    +  For the developers' and authors' protection, the GPL clearly explains
    +that there is no warranty for this free software.  For both users' and
    +authors' sake, the GPL requires that modified versions be marked as
    +changed, so that their problems will not be attributed erroneously to
    +authors of previous versions.
    +
    +  Some devices are designed to deny users access to install or run
    +modified versions of the software inside them, although the manufacturer
    +can do so.  This is fundamentally incompatible with the aim of
    +protecting users' freedom to change the software.  The systematic
    +pattern of such abuse occurs in the area of products for individuals to
    +use, which is precisely where it is most unacceptable.  Therefore, we
    +have designed this version of the GPL to prohibit the practice for those
    +products.  If such problems arise substantially in other domains, we
    +stand ready to extend this provision to those domains in future versions
    +of the GPL, as needed to protect the freedom of users.
    +
    +  Finally, every program is threatened constantly by software patents.
    +States should not allow patents to restrict development and use of
    +software on general-purpose computers, but in those that do, we wish to
    +avoid the special danger that patents applied to a free program could
    +make it effectively proprietary.  To prevent this, the GPL assures that
    +patents cannot be used to render the program non-free.
    +
    +  The precise terms and conditions for copying, distribution and
    +modification follow.
    +
    +                       TERMS AND CONDITIONS
    +
    +  0. Definitions.
    +
    +  "This License" refers to version 3 of the GNU General Public License.
    +
    +  "Copyright" also means copyright-like laws that apply to other kinds of
    +works, such as semiconductor masks.
    +
    +  "The Program" refers to any copyrightable work licensed under this
    +License.  Each licensee is addressed as "you".  "Licensees" and
    +"recipients" may be individuals or organizations.
    +
    +  To "modify" a work means to copy from or adapt all or part of the work
    +in a fashion requiring copyright permission, other than the making of an
    +exact copy.  The resulting work is called a "modified version" of the
    +earlier work or a work "based on" the earlier work.
    +
    +  A "covered work" means either the unmodified Program or a work based
    +on the Program.
    +
    +  To "propagate" a work means to do anything with it that, without
    +permission, would make you directly or secondarily liable for
    +infringement under applicable copyright law, except executing it on a
    +computer or modifying a private copy.  Propagation includes copying,
    +distribution (with or without modification), making available to the
    +public, and in some countries other activities as well.
    +
    +  To "convey" a work means any kind of propagation that enables other
    +parties to make or receive copies.  Mere interaction with a user through
    +a computer network, with no transfer of a copy, is not conveying.
    +
    +  An interactive user interface displays "Appropriate Legal Notices"
    +to the extent that it includes a convenient and prominently visible
    +feature that (1) displays an appropriate copyright notice, and (2)
    +tells the user that there is no warranty for the work (except to the
    +extent that warranties are provided), that licensees may convey the
    +work under this License, and how to view a copy of this License.  If
    +the interface presents a list of user commands or options, such as a
    +menu, a prominent item in the list meets this criterion.
    +
    +  1. Source Code.
    +
    +  The "source code" for a work means the preferred form of the work
    +for making modifications to it.  "Object code" means any non-source
    +form of a work.
    +
    +  A "Standard Interface" means an interface that either is an official
    +standard defined by a recognized standards body, or, in the case of
    +interfaces specified for a particular programming language, one that
    +is widely used among developers working in that language.
    +
    +  The "System Libraries" of an executable work include anything, other
    +than the work as a whole, that (a) is included in the normal form of
    +packaging a Major Component, but which is not part of that Major
    +Component, and (b) serves only to enable use of the work with that
    +Major Component, or to implement a Standard Interface for which an
    +implementation is available to the public in source code form.  A
    +"Major Component", in this context, means a major essential component
    +(kernel, window system, and so on) of the specific operating system
    +(if any) on which the executable work runs, or a compiler used to
    +produce the work, or an object code interpreter used to run it.
    +
    +  The "Corresponding Source" for a work in object code form means all
    +the source code needed to generate, install, and (for an executable
    +work) run the object code and to modify the work, including scripts to
    +control those activities.  However, it does not include the work's
    +System Libraries, or general-purpose tools or generally available free
    +programs which are used unmodified in performing those activities but
    +which are not part of the work.  For example, Corresponding Source
    +includes interface definition files associated with source files for
    +the work, and the source code for shared libraries and dynamically
    +linked subprograms that the work is specifically designed to require,
    +such as by intimate data communication or control flow between those
    +subprograms and other parts of the work.
    +
    +  The Corresponding Source need not include anything that users
    +can regenerate automatically from other parts of the Corresponding
    +Source.
    +
    +  The Corresponding Source for a work in source code form is that
    +same work.
    +
    +  2. Basic Permissions.
    +
    +  All rights granted under this License are granted for the term of
    +copyright on the Program, and are irrevocable provided the stated
    +conditions are met.  This License explicitly affirms your unlimited
    +permission to run the unmodified Program.  The output from running a
    +covered work is covered by this License only if the output, given its
    +content, constitutes a covered work.  This License acknowledges your
    +rights of fair use or other equivalent, as provided by copyright law.
    +
    +  You may make, run and propagate covered works that you do not
    +convey, without conditions so long as your license otherwise remains
    +in force.  You may convey covered works to others for the sole purpose
    +of having them make modifications exclusively for you, or provide you
    +with facilities for running those works, provided that you comply with
    +the terms of this License in conveying all material for which you do
    +not control copyright.  Those thus making or running the covered works
    +for you must do so exclusively on your behalf, under your direction
    +and control, on terms that prohibit them from making any copies of
    +your copyrighted material outside their relationship with you.
    +
    +  Conveying under any other circumstances is permitted solely under
    +the conditions stated below.  Sublicensing is not allowed; section 10
    +makes it unnecessary.
    +
    +  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
    +
    +  No covered work shall be deemed part of an effective technological
    +measure under any applicable law fulfilling obligations under article
    +11 of the WIPO copyright treaty adopted on 20 December 1996, or
    +similar laws prohibiting or restricting circumvention of such
    +measures.
    +
    +  When you convey a covered work, you waive any legal power to forbid
    +circumvention of technological measures to the extent such circumvention
    +is effected by exercising rights under this License with respect to
    +the covered work, and you disclaim any intention to limit operation or
    +modification of the work as a means of enforcing, against the work's
    +users, your or third parties' legal rights to forbid circumvention of
    +technological measures.
    +
    +  4. Conveying Verbatim Copies.
    +
    +  You may convey verbatim copies of the Program's source code as you
    +receive it, in any medium, provided that you conspicuously and
    +appropriately publish on each copy an appropriate copyright notice;
    +keep intact all notices stating that this License and any
    +non-permissive terms added in accord with section 7 apply to the code;
    +keep intact all notices of the absence of any warranty; and give all
    +recipients a copy of this License along with the Program.
    +
    +  You may charge any price or no price for each copy that you convey,
    +and you may offer support or warranty protection for a fee.
    +
    +  5. Conveying Modified Source Versions.
    +
    +  You may convey a work based on the Program, or the modifications to
    +produce it from the Program, in the form of source code under the
    +terms of section 4, provided that you also meet all of these conditions:
    +
    +    a) The work must carry prominent notices stating that you modified
    +    it, and giving a relevant date.
    +
    +    b) The work must carry prominent notices stating that it is
    +    released under this License and any conditions added under section
    +    7.  This requirement modifies the requirement in section 4 to
    +    "keep intact all notices".
    +
    +    c) You must license the entire work, as a whole, under this
    +    License to anyone who comes into possession of a copy.  This
    +    License will therefore apply, along with any applicable section 7
    +    additional terms, to the whole of the work, and all its parts,
    +    regardless of how they are packaged.  This License gives no
    +    permission to license the work in any other way, but it does not
    +    invalidate such permission if you have separately received it.
    +
    +    d) If the work has interactive user interfaces, each must display
    +    Appropriate Legal Notices; however, if the Program has interactive
    +    interfaces that do not display Appropriate Legal Notices, your
    +    work need not make them do so.
    +
    +  A compilation of a covered work with other separate and independent
    +works, which are not by their nature extensions of the covered work,
    +and which are not combined with it such as to form a larger program,
    +in or on a volume of a storage or distribution medium, is called an
    +"aggregate" if the compilation and its resulting copyright are not
    +used to limit the access or legal rights of the compilation's users
    +beyond what the individual works permit.  Inclusion of a covered work
    +in an aggregate does not cause this License to apply to the other
    +parts of the aggregate.
    +
    +  6. Conveying Non-Source Forms.
    +
    +  You may convey a covered work in object code form under the terms
    +of sections 4 and 5, provided that you also convey the
    +machine-readable Corresponding Source under the terms of this License,
    +in one of these ways:
    +
    +    a) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by the
    +    Corresponding Source fixed on a durable physical medium
    +    customarily used for software interchange.
    +
    +    b) Convey the object code in, or embodied in, a physical product
    +    (including a physical distribution medium), accompanied by a
    +    written offer, valid for at least three years and valid for as
    +    long as you offer spare parts or customer support for that product
    +    model, to give anyone who possesses the object code either (1) a
    +    copy of the Corresponding Source for all the software in the
    +    product that is covered by this License, on a durable physical
    +    medium customarily used for software interchange, for a price no
    +    more than your reasonable cost of physically performing this
    +    conveying of source, or (2) access to copy the
    +    Corresponding Source from a network server at no charge.
    +
    +    c) Convey individual copies of the object code with a copy of the
    +    written offer to provide the Corresponding Source.  This
    +    alternative is allowed only occasionally and noncommercially, and
    +    only if you received the object code with such an offer, in accord
    +    with subsection 6b.
    +
    +    d) Convey the object code by offering access from a designated
    +    place (gratis or for a charge), and offer equivalent access to the
    +    Corresponding Source in the same way through the same place at no
    +    further charge.  You need not require recipients to copy the
    +    Corresponding Source along with the object code.  If the place to
    +    copy the object code is a network server, the Corresponding Source
    +    may be on a different server (operated by you or a third party)
    +    that supports equivalent copying facilities, provided you maintain
    +    clear directions next to the object code saying where to find the
    +    Corresponding Source.  Regardless of what server hosts the
    +    Corresponding Source, you remain obligated to ensure that it is
    +    available for as long as needed to satisfy these requirements.
    +
    +    e) Convey the object code using peer-to-peer transmission, provided
    +    you inform other peers where the object code and Corresponding
    +    Source of the work are being offered to the general public at no
    +    charge under subsection 6d.
    +
    +  A separable portion of the object code, whose source code is excluded
    +from the Corresponding Source as a System Library, need not be
    +included in conveying the object code work.
    +
    +  A "User Product" is either (1) a "consumer product", which means any
    +tangible personal property which is normally used for personal, family,
    +or household purposes, or (2) anything designed or sold for incorporation
    +into a dwelling.  In determining whether a product is a consumer product,
    +doubtful cases shall be resolved in favor of coverage.  For a particular
    +product received by a particular user, "normally used" refers to a
    +typical or common use of that class of product, regardless of the status
    +of the particular user or of the way in which the particular user
    +actually uses, or expects or is expected to use, the product.  A product
    +is a consumer product regardless of whether the product has substantial
    +commercial, industrial or non-consumer uses, unless such uses represent
    +the only significant mode of use of the product.
    +
    +  "Installation Information" for a User Product means any methods,
    +procedures, authorization keys, or other information required to install
    +and execute modified versions of a covered work in that User Product from
    +a modified version of its Corresponding Source.  The information must
    +suffice to ensure that the continued functioning of the modified object
    +code is in no case prevented or interfered with solely because
    +modification has been made.
    +
    +  If you convey an object code work under this section in, or with, or
    +specifically for use in, a User Product, and the conveying occurs as
    +part of a transaction in which the right of possession and use of the
    +User Product is transferred to the recipient in perpetuity or for a
    +fixed term (regardless of how the transaction is characterized), the
    +Corresponding Source conveyed under this section must be accompanied
    +by the Installation Information.  But this requirement does not apply
    +if neither you nor any third party retains the ability to install
    +modified object code on the User Product (for example, the work has
    +been installed in ROM).
    +
    +  The requirement to provide Installation Information does not include a
    +requirement to continue to provide support service, warranty, or updates
    +for a work that has been modified or installed by the recipient, or for
    +the User Product in which it has been modified or installed.  Access to a
    +network may be denied when the modification itself materially and
    +adversely affects the operation of the network or violates the rules and
    +protocols for communication across the network.
    +
    +  Corresponding Source conveyed, and Installation Information provided,
    +in accord with this section must be in a format that is publicly
    +documented (and with an implementation available to the public in
    +source code form), and must require no special password or key for
    +unpacking, reading or copying.
    +
    +  7. Additional Terms.
    +
    +  "Additional permissions" are terms that supplement the terms of this
    +License by making exceptions from one or more of its conditions.
    +Additional permissions that are applicable to the entire Program shall
    +be treated as though they were included in this License, to the extent
    +that they are valid under applicable law.  If additional permissions
    +apply only to part of the Program, that part may be used separately
    +under those permissions, but the entire Program remains governed by
    +this License without regard to the additional permissions.
    +
    +  When you convey a copy of a covered work, you may at your option
    +remove any additional permissions from that copy, or from any part of
    +it.  (Additional permissions may be written to require their own
    +removal in certain cases when you modify the work.)  You may place
    +additional permissions on material, added by you to a covered work,
    +for which you have or can give appropriate copyright permission.
    +
    +  Notwithstanding any other provision of this License, for material you
    +add to a covered work, you may (if authorized by the copyright holders of
    +that material) supplement the terms of this License with terms:
    +
    +    a) Disclaiming warranty or limiting liability differently from the
    +    terms of sections 15 and 16 of this License; or
    +
    +    b) Requiring preservation of specified reasonable legal notices or
    +    author attributions in that material or in the Appropriate Legal
    +    Notices displayed by works containing it; or
    +
    +    c) Prohibiting misrepresentation of the origin of that material, or
    +    requiring that modified versions of such material be marked in
    +    reasonable ways as different from the original version; or
    +
    +    d) Limiting the use for publicity purposes of names of licensors or
    +    authors of the material; or
    +
    +    e) Declining to grant rights under trademark law for use of some
    +    trade names, trademarks, or service marks; or
    +
    +    f) Requiring indemnification of licensors and authors of that
    +    material by anyone who conveys the material (or modified versions of
    +    it) with contractual assumptions of liability to the recipient, for
    +    any liability that these contractual assumptions directly impose on
    +    those licensors and authors.
    +
    +  All other non-permissive additional terms are considered "further
    +restrictions" within the meaning of section 10.  If the Program as you
    +received it, or any part of it, contains a notice stating that it is
    +governed by this License along with a term that is a further
    +restriction, you may remove that term.  If a license document contains
    +a further restriction but permits relicensing or conveying under this
    +License, you may add to a covered work material governed by the terms
    +of that license document, provided that the further restriction does
    +not survive such relicensing or conveying.
    +
    +  If you add terms to a covered work in accord with this section, you
    +must place, in the relevant source files, a statement of the
    +additional terms that apply to those files, or a notice indicating
    +where to find the applicable terms.
    +
    +  Additional terms, permissive or non-permissive, may be stated in the
    +form of a separately written license, or stated as exceptions;
    +the above requirements apply either way.
    +
    +  8. Termination.
    +
    +  You may not propagate or modify a covered work except as expressly
    +provided under this License.  Any attempt otherwise to propagate or
    +modify it is void, and will automatically terminate your rights under
    +this License (including any patent licenses granted under the third
    +paragraph of section 11).
    +
    +  However, if you cease all violation of this License, then your
    +license from a particular copyright holder is reinstated (a)
    +provisionally, unless and until the copyright holder explicitly and
    +finally terminates your license, and (b) permanently, if the copyright
    +holder fails to notify you of the violation by some reasonable means
    +prior to 60 days after the cessation.
    +
    +  Moreover, your license from a particular copyright holder is
    +reinstated permanently if the copyright holder notifies you of the
    +violation by some reasonable means, this is the first time you have
    +received notice of violation of this License (for any work) from that
    +copyright holder, and you cure the violation prior to 30 days after
    +your receipt of the notice.
    +
    +  Termination of your rights under this section does not terminate the
    +licenses of parties who have received copies or rights from you under
    +this License.  If your rights have been terminated and not permanently
    +reinstated, you do not qualify to receive new licenses for the same
    +material under section 10.
    +
    +  9. Acceptance Not Required for Having Copies.
    +
    +  You are not required to accept this License in order to receive or
    +run a copy of the Program.  Ancillary propagation of a covered work
    +occurring solely as a consequence of using peer-to-peer transmission
    +to receive a copy likewise does not require acceptance.  However,
    +nothing other than this License grants you permission to propagate or
    +modify any covered work.  These actions infringe copyright if you do
    +not accept this License.  Therefore, by modifying or propagating a
    +covered work, you indicate your acceptance of this License to do so.
    +
    +  10. Automatic Licensing of Downstream Recipients.
    +
    +  Each time you convey a covered work, the recipient automatically
    +receives a license from the original licensors, to run, modify and
    +propagate that work, subject to this License.  You are not responsible
    +for enforcing compliance by third parties with this License.
    +
    +  An "entity transaction" is a transaction transferring control of an
    +organization, or substantially all assets of one, or subdividing an
    +organization, or merging organizations.  If propagation of a covered
    +work results from an entity transaction, each party to that
    +transaction who receives a copy of the work also receives whatever
    +licenses to the work the party's predecessor in interest had or could
    +give under the previous paragraph, plus a right to possession of the
    +Corresponding Source of the work from the predecessor in interest, if
    +the predecessor has it or can get it with reasonable efforts.
    +
    +  You may not impose any further restrictions on the exercise of the
    +rights granted or affirmed under this License.  For example, you may
    +not impose a license fee, royalty, or other charge for exercise of
    +rights granted under this License, and you may not initiate litigation
    +(including a cross-claim or counterclaim in a lawsuit) alleging that
    +any patent claim is infringed by making, using, selling, offering for
    +sale, or importing the Program or any portion of it.
    +
    +  11. Patents.
    +
    +  A "contributor" is a copyright holder who authorizes use under this
    +License of the Program or a work on which the Program is based.  The
    +work thus licensed is called the contributor's "contributor version".
    +
    +  A contributor's "essential patent claims" are all patent claims
    +owned or controlled by the contributor, whether already acquired or
    +hereafter acquired, that would be infringed by some manner, permitted
    +by this License, of making, using, or selling its contributor version,
    +but do not include claims that would be infringed only as a
    +consequence of further modification of the contributor version.  For
    +purposes of this definition, "control" includes the right to grant
    +patent sublicenses in a manner consistent with the requirements of
    +this License.
    +
    +  Each contributor grants you a non-exclusive, worldwide, royalty-free
    +patent license under the contributor's essential patent claims, to
    +make, use, sell, offer for sale, import and otherwise run, modify and
    +propagate the contents of its contributor version.
    +
    +  In the following three paragraphs, a "patent license" is any express
    +agreement or commitment, however denominated, not to enforce a patent
    +(such as an express permission to practice a patent or covenant not to
    +sue for patent infringement).  To "grant" such a patent license to a
    +party means to make such an agreement or commitment not to enforce a
    +patent against the party.
    +
    +  If you convey a covered work, knowingly relying on a patent license,
    +and the Corresponding Source of the work is not available for anyone
    +to copy, free of charge and under the terms of this License, through a
    +publicly available network server or other readily accessible means,
    +then you must either (1) cause the Corresponding Source to be so
    +available, or (2) arrange to deprive yourself of the benefit of the
    +patent license for this particular work, or (3) arrange, in a manner
    +consistent with the requirements of this License, to extend the patent
    +license to downstream recipients.  "Knowingly relying" means you have
    +actual knowledge that, but for the patent license, your conveying the
    +covered work in a country, or your recipient's use of the covered work
    +in a country, would infringe one or more identifiable patents in that
    +country that you have reason to believe are valid.
    +
    +  If, pursuant to or in connection with a single transaction or
    +arrangement, you convey, or propagate by procuring conveyance of, a
    +covered work, and grant a patent license to some of the parties
    +receiving the covered work authorizing them to use, propagate, modify
    +or convey a specific copy of the covered work, then the patent license
    +you grant is automatically extended to all recipients of the covered
    +work and works based on it.
    +
    +  A patent license is "discriminatory" if it does not include within
    +the scope of its coverage, prohibits the exercise of, or is
    +conditioned on the non-exercise of one or more of the rights that are
    +specifically granted under this License.  You may not convey a covered
    +work if you are a party to an arrangement with a third party that is
    +in the business of distributing software, under which you make payment
    +to the third party based on the extent of your activity of conveying
    +the work, and under which the third party grants, to any of the
    +parties who would receive the covered work from you, a discriminatory
    +patent license (a) in connection with copies of the covered work
    +conveyed by you (or copies made from those copies), or (b) primarily
    +for and in connection with specific products or compilations that
    +contain the covered work, unless you entered into that arrangement,
    +or that patent license was granted, prior to 28 March 2007.
    +
    +  Nothing in this License shall be construed as excluding or limiting
    +any implied license or other defenses to infringement that may
    +otherwise be available to you under applicable patent law.
    +
    +  12. No Surrender of Others' Freedom.
    +
    +  If conditions are imposed on you (whether by court order, agreement or
    +otherwise) that contradict the conditions of this License, they do not
    +excuse you from the conditions of this License.  If you cannot convey a
    +covered work so as to satisfy simultaneously your obligations under this
    +License and any other pertinent obligations, then as a consequence you may
    +not convey it at all.  For example, if you agree to terms that obligate you
    +to collect a royalty for further conveying from those to whom you convey
    +the Program, the only way you could satisfy both those terms and this
    +License would be to refrain entirely from conveying the Program.
    +
    +  13. Use with the GNU Affero General Public License.
    +
    +  Notwithstanding any other provision of this License, you have
    +permission to link or combine any covered work with a work licensed
    +under version 3 of the GNU Affero General Public License into a single
    +combined work, and to convey the resulting work.  The terms of this
    +License will continue to apply to the part which is the covered work,
    +but the special requirements of the GNU Affero General Public License,
    +section 13, concerning interaction through a network will apply to the
    +combination as such.
    +
    +  14. Revised Versions of this License.
    +
    +  The Free Software Foundation may publish revised and/or new versions of
    +the GNU General Public License from time to time.  Such new versions will
    +be similar in spirit to the present version, but may differ in detail to
    +address new problems or concerns.
    +
    +  Each version is given a distinguishing version number.  If the
    +Program specifies that a certain numbered version of the GNU General
    +Public License "or any later version" applies to it, you have the
    +option of following the terms and conditions either of that numbered
    +version or of any later version published by the Free Software
    +Foundation.  If the Program does not specify a version number of the
    +GNU General Public License, you may choose any version ever published
    +by the Free Software Foundation.
    +
    +  If the Program specifies that a proxy can decide which future
    +versions of the GNU General Public License can be used, that proxy's
    +public statement of acceptance of a version permanently authorizes you
    +to choose that version for the Program.
    +
    +  Later license versions may give you additional or different
    +permissions.  However, no additional obligations are imposed on any
    +author or copyright holder as a result of your choosing to follow a
    +later version.
    +
    +  15. Disclaimer of Warranty.
    +
    +  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
    +APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
    +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
    +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
    +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    +PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
    +IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
    +ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
    +
    +  16. Limitation of Liability.
    +
    +  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
    +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
    +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
    +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
    +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
    +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
    +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
    +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
    +SUCH DAMAGES.
    +
    +  17. Interpretation of Sections 15 and 16.
    +
    +  If the disclaimer of warranty and limitation of liability provided
    +above cannot be given local legal effect according to their terms,
    +reviewing courts shall apply local law that most closely approximates
    +an absolute waiver of all civil liability in connection with the
    +Program, unless a warranty or assumption of liability accompanies a
    +copy of the Program in return for a fee.
    +
    +                     END OF TERMS AND CONDITIONS
    +
    +            How to Apply These Terms to Your New Programs
    +
    +  If you develop a new program, and you want it to be of the greatest
    +possible use to the public, the best way to achieve this is to make it
    +free software which everyone can redistribute and change under these terms.
    +
    +  To do so, attach the following notices to the program.  It is safest
    +to attach them to the start of each source file to most effectively
    +state the exclusion of warranty; and each file should have at least
    +the "copyright" line and a pointer to where the full notice is found.
    +
    +    <one line to give the program's name and a brief idea of what it does.>
    +    Copyright (C) <year>  <name of author>
    +
    +    This program is free software: you can redistribute it and/or modify
    +    it under the terms of the GNU General Public License as published by
    +    the Free Software Foundation, either version 3 of the License, or
    +    (at your option) any later version.
    +
    +    This program is distributed in the hope that it will be useful,
    +    but WITHOUT ANY WARRANTY; without even the implied warranty of
    +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    +    GNU General Public License for more details.
    +
    +    You should have received a copy of the GNU General Public License
    +    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    +
    +Also add information on how to contact you by electronic and paper mail.
    +
    +  If the program does terminal interaction, make it output a short
    +notice like this when it starts in an interactive mode:
    +
    +    <program>  Copyright (C) <year>  <name of author>
    +    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    +    This is free software, and you are welcome to redistribute it
    +    under certain conditions; type `show c' for details.
    +
    +The hypothetical commands `show w' and `show c' should show the appropriate
    +parts of the General Public License.  Of course, your program's commands
    +might be different; for a GUI interface, you would use an "about box".
    +
    +  You should also get your employer (if you work as a programmer) or school,
    +if any, to sign a "copyright disclaimer" for the program, if necessary.
    +For more information on this, and how to apply and follow the GNU GPL, see
    +<http://www.gnu.org/licenses/>.
    +
    +  The GNU General Public License does not permit incorporating your program
    +into proprietary programs.  If your program is a subroutine library, you
    +may consider it more useful to permit linking proprietary applications with
    +the library.  If this is what you want to do, use the GNU Lesser General
    +Public License instead of this License.  But first, please read
    +<http://www.gnu.org/philosophy/why-not-lgpl.html>.
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/mail-lists.html b/css/mail-lists.html new file mode 100644 index 000000000..17a022d60 --- /dev/null +++ b/css/mail-lists.html @@ -0,0 +1,242 @@ + + + + + + + + + dependency-check - Project Mailing Lists + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Mailing Lists

    +

    These are the mailing lists that have been established for this project. For each list, there is a subscribe, unsubscribe, and an archive link.

    +
    + + + + + + + + + + + +
    NameSubscribeUnsubscribePostArchive
    Dependency CheckSubscribeUnsubscribePostgroups.google.com
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/modules.html b/css/modules.html new file mode 100644 index 000000000..552cc83c0 --- /dev/null +++ b/css/modules.html @@ -0,0 +1,248 @@ + + + + + + + + + dependency-check - Project Modules + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Modules

    +

    This project has declared the following modules:

    + + + + + + + + + + + + + + + + + + +
    NameDescription
    Dependency-Check Core-
    Dependency-Check Command LineDependency-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 Ant TaskDependency-check is a utility 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 Maven PluginDependency-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 PluginThis plug-in can independently execute a Dependency-Check analysis and visualize the results.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/project-info.html b/css/project-info.html new file mode 100644 index 000000000..450b540d8 --- /dev/null +++ b/css/project-info.html @@ -0,0 +1,259 @@ + + + + + + + + + dependency-check - Project Information + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Information

    +

    This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by Maven on behalf of the project.

    +
    +

    Overview

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DocumentDescription
    AboutDependency-check is a utility 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.
    Project SummaryThis document lists other related information of this project
    Mailing ListsThis document provides subscription and archive information for this project's mailing lists.
    Issue TrackingThis is a link to the issue management system for this project. Issues (bugs, features, change requests) can be created and queried using this link.
    Project ModulesThis document lists the modules (sub-projects) of this project.
    Project TeamThis document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another.
    Source RepositoryThis is a link to the online source repository that can be viewed via a web browser.
    Project LicenseThis is a link to the definitions of project licenses.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/project-summary.html b/css/project-summary.html new file mode 100644 index 000000000..d3fe0566b --- /dev/null +++ b/css/project-summary.html @@ -0,0 +1,273 @@ + + + + + + + + + dependency-check - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    NameDependency-Check
    DescriptionDependency-check is a utility 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.
    Homepagehttps://github.com/jeremylong/DependencyCheck.git
    +
    +

    Project Organization

    + + + + + + + + + +
    FieldValue
    NameOWASP
    URLhttp://www.owasp.org
    +
    +

    Build Information

    + + + + + + + + + + + + + + + +
    FieldValue
    GroupIdorg.owasp
    ArtifactIddependency-check-parent
    Version1.0.6
    Typepom
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/source-repository.html b/css/source-repository.html new file mode 100644 index 000000000..f5f08d80d --- /dev/null +++ b/css/source-repository.html @@ -0,0 +1,247 @@ + + + + + + + + + dependency-check - Source Repository + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Overview

    +

    This project uses a Source Content Management System to manage its source code.

    +
    +

    Web Access

    +

    The following is a link to the online source repository.

    +
    +
    +

    Anonymous access

    +

    Refer to the documentation of the SCM used for more information about anonymously check out. The connection url is:

    +
    +
    git:git@github.com:jeremylong/DependencyCheck.git
    +
    +

    Developer access

    +

    Refer to the documentation of the SCM used for more information about developer check out. The connection url is:

    +
    +
    git:git@github.com:jeremylong/DependencyCheck.git
    +
    +

    Access from behind a firewall

    +

    Refer to the documentation of the SCM used for more information about access behind a firewall.

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/css/team-list.html b/css/team-list.html new file mode 100644 index 000000000..73e02e2ee --- /dev/null +++ b/css/team-list.html @@ -0,0 +1,279 @@ + + + + + + + + + dependency-check - Team list + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    The Team

    +

    A successful project requires many people to play many roles. Some members write code or documentation, while others are valuable as testers, submitting patches and suggestions.

    +

    The team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.

    +
    +

    Members

    +

    The following is a list of developers with commit privileges that have directly contributed to the project in one way or another.

    + + + + + + + + + + + + + + + + + + + + + + + + +
    ImageNameEmailOrganizationOrganization URLRolesProperties
    Jeremy Longjeremy.long@owasp.orgOWASPhttps://www.owasp.org/index.php/OWASP_Dependency_Checkarchitect, developerpicUrl=https://plus.google.com/s2/photos/profile/108968019311857145023, twitter=@ctxt
    Steve SpringettSteve.Springett@owasp.orgOWASPhttps://www.owasp.org/index.php/OWASP_Dependency_Checkcontributor-
    +
    +

    Contributors

    +

    The following additional people have contributed to this project through the way of suggestions, patches or documentation.

    + + +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/arguments.html b/dependency-check-cli/arguments.html new file mode 100644 index 000000000..c420d48ba --- /dev/null +++ b/dependency-check-cli/arguments.html @@ -0,0 +1,370 @@ + + + + + + + + + dependency-check-cli - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    Command Line Arguments

    +

    The following table lists the command line arguments:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Short Argument Name Parameter Description Requirement
    -a --app <name> The name of the application being scanned. This is a required argument.
    -c --connectiontimeout <timeout> The connection timeout (in milliseconds) to use when downloading resources. Optional
    -d --data <path> The location of the data directory used to store persistent data. This option should generally not be set. Optional
    -f --format <format> The output format to write to (XML, HTML, VULN, ALL). The default is HTML.
    -h --help Print the help message. Optional
    -l --log <file> The file path to write verbose logging information. Optional
    -n --noupdate Disables the automatic updating of the CPE data. Optional
    -o --out <folder> The folder to write reports to. This defaults to the current directory. Optional
    -p --proxyport <port> The proxy port to use when downloading resources. Optional
    -pp --proxypass <pass> The proxy password to use when downloading resources. Optional
    -pu --proxyuser <user> The proxy username to use when downloading resources. Optional
    -s --scan <path> The path to scan - this option can be specified multiple times.
    -sf --suppression <file> The file path to the suppression XML file. Optional
    -u --proxyurl <url> The proxy url to use when downloading resources. Optional
    -v --version Print the version information. Optional
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..2fb78dab6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html @@ -0,0 +1,383 @@ + + + + + + + +AbstractSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class AbstractSuppressionAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    Direct Known Subclasses:
    CpeSuppressionAnalyzer, VulnerabilitySuppressionAnalyzer
    +
    +
    +
    +
    public abstract class AbstractSuppressionAnalyzer
    extends AbstractAnalyzer
    + + +

    +Abstract base suppression analyzer that contains methods for parsing the + suppression xml file. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    AbstractSuppressionAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + List<SuppressionRule>getRules() + +
    +          Get the value of rules.
    + Set<String>getSupportedExtensions() + +
    +          Returns a list of file EXTENSIONS supported by this analyzer.
    + voidinitialize() + +
    +          The initialize method loads the suppression XML file.
    + voidsetRules(List<SuppressionRule> rules) + +
    +          Set the value of rules.
    + booleansupportsExtension(String extension) + +
    +          Returns whether or not this analyzer can process the given extension.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    + + + + + + + +
    Methods inherited from interface org.owasp.dependencycheck.analyzer.Analyzer
    analyze, getAnalysisPhase, getName
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +AbstractSuppressionAnalyzer

    +
    +public AbstractSuppressionAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupportedExtensions

    +
    +public Set<String> getSupportedExtensions()
    +
    +
    Returns a list of file EXTENSIONS supported by this analyzer. +

    +

    + +
    Returns:
    a list of file EXTENSIONS supported by this analyzer.
    +
    +
    +
    + +

    +supportsExtension

    +
    +public boolean supportsExtension(String extension)
    +
    +
    Returns whether or not this analyzer can process the given extension. +

    +

    +
    Parameters:
    extension - the file extension to test for support. +
    Returns:
    whether or not the specified file extension is supported by this + analyzer.
    +
    +
    +
    + +

    +initialize

    +
    +public void initialize()
    +                throws Exception
    +
    +
    The initialize method loads the suppression XML file. +

    +

    +
    Specified by:
    initialize in interface Analyzer
    Overrides:
    initialize in class AbstractAnalyzer
    +
    +
    + +
    Throws: +
    Exception - thrown if there is an exception
    +
    +
    +
    + +

    +getRules

    +
    +public List<SuppressionRule> getRules()
    +
    +
    Get the value of rules. +

    +

    + +
    Returns:
    the value of rules
    +
    +
    +
    + +

    +setRules

    +
    +public void setRules(List<SuppressionRule> rules)
    +
    +
    Set the value of rules. +

    +

    +
    Parameters:
    rules - new value of rules
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..f3540d826 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html @@ -0,0 +1,343 @@ + + + + + + + +CpeSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class CpeSuppressionAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +          extended by org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class CpeSuppressionAnalyzer
    extends AbstractSuppressionAnalyzer
    + + +

    +The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema. Any identified CPE entries within + the dependencies that match will be removed. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    CpeSuppressionAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    getRules, getSupportedExtensions, initialize, setRules, supportsExtension
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CpeSuppressionAnalyzer

    +
    +public CpeSuppressionAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Description copied from interface: Analyzer
    +
    Analyzes the given dependency. The analysis could be anything from + identifying an Identifier for the dependency, to finding vulnerabilities, + etc. Additionally, if the analyzer collects enough information to add a + description or license information for the dependency it should be added. +

    +

    +
    Parameters:
    dependency - a dependency to analyze.
    engine - the engine that is scanning the dependencies - this is + useful if we need to check other dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error analyzing the + dependency file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..6843b6988 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,343 @@ + + + + + + + +VulnerabilitySuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.analyzer +
    +Class VulnerabilitySuppressionAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +      extended by org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +          extended by org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    +
    public class VulnerabilitySuppressionAnalyzer
    extends AbstractSuppressionAnalyzer
    + + +

    +The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema. Any identified Vulnerability + entries within the dependencies that match will be removed. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    VulnerabilitySuppressionAnalyzer() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidanalyze(Dependency dependency, + Engine engine) + +
    +          Analyzes the given dependency.
    + AnalysisPhasegetAnalysisPhase() + +
    +          Returns the phase that the analyzer is intended to run in.
    + StringgetName() + +
    +          Returns the name of the analyzer.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    getRules, getSupportedExtensions, initialize, setRules, supportsExtension
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    close, newHashSet
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +VulnerabilitySuppressionAnalyzer

    +
    +public VulnerabilitySuppressionAnalyzer()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public String getName()
    +
    +
    Returns the name of the analyzer. +

    +

    + +
    Returns:
    the name of the analyzer.
    +
    +
    +
    + +

    +getAnalysisPhase

    +
    +public AnalysisPhase getAnalysisPhase()
    +
    +
    Returns the phase that the analyzer is intended to run in. +

    +

    + +
    Returns:
    the phase that the analyzer is intended to run in.
    +
    +
    +
    + +

    +analyze

    +
    +public void analyze(Dependency dependency,
    +                    Engine engine)
    +             throws AnalysisException
    +
    +
    Description copied from interface: Analyzer
    +
    Analyzes the given dependency. The analysis could be anything from + identifying an Identifier for the dependency, to finding vulnerabilities, + etc. Additionally, if the analyzer collects enough information to add a + description or license information for the dependency it should be added. +

    +

    +
    Parameters:
    dependency - a dependency to analyze.
    engine - the engine that is scanning the dependencies - this is + useful if we need to check other dependencies +
    Throws: +
    AnalysisException - is thrown if there is an error analyzing the + dependency file
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..bf8bd4d22 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractSuppressionAnalyzer.html @@ -0,0 +1,197 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer

    +
    + + + + + + + + + +
    +Packages that use AbstractSuppressionAnalyzer
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    +  +

    + + + + + +
    +Uses of AbstractSuppressionAnalyzer in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + +
    Subclasses of AbstractSuppressionAnalyzer in org.owasp.dependencycheck.analyzer
    + classCpeSuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    + classVulnerabilitySuppressionAnalyzer + +
    +          The suppression analyzer processes an externally defined XML document that + complies with the suppressions.xsd schema.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..2f08f0325 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CpeSuppressionAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..a9883e6e7 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer

    +
    +No usage of org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html new file mode 100644 index 000000000..71dcf51ab --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/BaseDB.html @@ -0,0 +1,524 @@ + + + + + + + +BaseDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data +
    +Class BaseDB

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.BaseDB
    +
    +
    +
    Direct Known Subclasses:
    CveDB
    +
    +
    +
    +
    public class BaseDB
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringDB_SCHEMA_VERSION + +
    +          The version of the current DB Schema.
    +static StringDB_STRUCTURE_RESOURCE + +
    +          Resource location for SQL file used to create the database schema.
    +  + + + + + + + + + + +
    +Constructor Summary
    BaseDB() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Closes the DB4O database.
    + voidcloseResultSet(ResultSet rs) + +
    +          Closes the result set capturing and ignoring any SQLExceptions that + occur.
    + voidcloseStatement(Statement statement) + +
    +          Closes the given statement object ignoring any exceptions that occur.
    + voidcommit() + +
    +          Commits all completed transactions.
    +protected  voidfinalize() + +
    +          Cleans up the object and ensures that "close" has been called.
    +protected  ConnectiongetConnection() + +
    +          Returns the database connection.
    +static FilegetDataDirectory() + +
    +          Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory.
    +protected  intgetGeneratedKey(PreparedStatement statement) + +
    +          Returns the generated integer primary key for a newly inserted row.
    + voidopen() + +
    +          Opens the database connection.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +DB_STRUCTURE_RESOURCE

    +
    +public static final String DB_STRUCTURE_RESOURCE
    +
    +
    Resource location for SQL file used to create the database schema. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DB_SCHEMA_VERSION

    +
    +public static final String DB_SCHEMA_VERSION
    +
    +
    The version of the current DB Schema. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +BaseDB

    +
    +public BaseDB()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getConnection

    +
    +protected Connection getConnection()
    +
    +
    Returns the database connection. +

    +

    + +
    Returns:
    the database connection
    +
    +
    +
    + +

    +open

    +
    +public void open()
    +          throws IOException,
    +                 SQLException,
    +                 DatabaseException,
    +                 ClassNotFoundException
    +
    +
    Opens the database connection. If the database does not exist, it will + create a new one. +

    +

    + +
    Throws: +
    IOException - thrown if there is an IO Exception +
    SQLException - thrown if there is a SQL Exception +
    DatabaseException - thrown if there is an error initializing a new + database +
    ClassNotFoundException - thrown if the h2 database driver cannot be + loaded
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the DB4O database. Close should be called on this object when it + is done being used. +

    +

    +
    +
    +
    +
    + +

    +commit

    +
    +public void commit()
    +            throws SQLException
    +
    +
    Commits all completed transactions. +

    +

    + +
    Throws: +
    SQLException - thrown if a SQL Exception occurs
    +
    +
    +
    + +

    +finalize

    +
    +protected void finalize()
    +                 throws Throwable
    +
    +
    Cleans up the object and ensures that "close" has been called. +

    +

    +
    Overrides:
    finalize in class Object
    +
    +
    + +
    Throws: +
    Throwable - thrown if there is a problem
    +
    +
    +
    + +

    +getDataDirectory

    +
    +public static File getDataDirectory()
    +                             throws IOException
    +
    +
    Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory. +

    +

    + +
    Returns:
    the data directory for this index. +
    Throws: +
    IOException - is thrown if an IOException occurs of course...
    +
    +
    +
    + +

    +getGeneratedKey

    +
    +protected int getGeneratedKey(PreparedStatement statement)
    +                       throws DatabaseException
    +
    +
    Returns the generated integer primary key for a newly inserted row. +

    +

    +
    Parameters:
    statement - a prepared statement that just executed an insert +
    Returns:
    a primary key +
    Throws: +
    DatabaseException - thrown if there is an exception obtaining the + key
    +
    +
    +
    + +

    +closeStatement

    +
    +public void closeStatement(Statement statement)
    +
    +
    Closes the given statement object ignoring any exceptions that occur. +

    +

    +
    Parameters:
    statement - a Statement object
    +
    +
    +
    + +

    +closeResultSet

    +
    +public void closeResultSet(ResultSet rs)
    +
    +
    Closes the result set capturing and ignoring any SQLExceptions that + occur. +

    +

    +
    Parameters:
    rs - a ResultSet to close
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html new file mode 100644 index 000000000..2252ba3bc --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/BaseDB.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.BaseDB (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.BaseDB

    +
    + + + + + + + + + +
    +Packages that use BaseDB
    org.owasp.dependencycheck.data.nvdcve + + org.owasp.dependencycheck.data.nvdcve + + + Contains classes used to work with the NVD CVE data. 
    +  +

    + + + + + +
    +Uses of BaseDB in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Subclasses of BaseDB in org.owasp.dependencycheck.data.nvdcve
    + classCveDB + +
    +          The database holding information about the NVD CVE data.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html new file mode 100644 index 000000000..05784578e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html @@ -0,0 +1,435 @@ + + + + + + + +CpeMemoryIndex (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class CpeMemoryIndex

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cpe.CpeMemoryIndex
    +
    +
    +
    +
    public final class CpeMemoryIndex
    extends Object
    + + +

    +An in memory lucene index that contains the vendor/product combinations from + the CPE (application) identifiers within the NVD CVE data. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Closes the CPE Index.
    + org.apache.lucene.document.DocumentgetDocument(int documentId) + +
    +          Retrieves a document from the Index.
    +static CpeMemoryIndexgetInstance() + +
    +          Gets the singleton instance of the CpeMemoryIndex.
    + booleanisOpen() + +
    +          returns whether or not the index is open.
    + intnumDocs() + +
    +          Returns the number of CPE entries stored in the index.
    + voidopen(CveDB cve) + +
    +          Creates and loads data into an in memory index.
    + voidsaveEntry(String vendor, + String product, + org.apache.lucene.index.IndexWriter indexWriter) + +
    +          Saves a CPE IndexEntry into the Lucene index.
    + org.apache.lucene.search.TopDocssearch(org.apache.lucene.search.Query query, + int maxQueryResults) + +
    +          Searches the index using the given query.
    + org.apache.lucene.search.TopDocssearch(String searchString, + int maxQueryResults) + +
    +          Searches the index using the given search string.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +getInstance

    +
    +public static CpeMemoryIndex getInstance()
    +
    +
    Gets the singleton instance of the CpeMemoryIndex. +

    +

    + +
    Returns:
    the instance of the CpeMemoryIndex
    +
    +
    +
    + +

    +open

    +
    +public void open(CveDB cve)
    +          throws IndexException
    +
    +
    Creates and loads data into an in memory index. +

    +

    +
    Parameters:
    cve - the data source to retrieve the cpe data +
    Throws: +
    IndexException - thrown if there is an error creating the index
    +
    +
    +
    + +

    +isOpen

    +
    +public boolean isOpen()
    +
    +
    returns whether or not the index is open. +

    +

    + +
    Returns:
    whether or not the index is open
    +
    +
    +
    + +

    +saveEntry

    +
    +public void saveEntry(String vendor,
    +                      String product,
    +                      org.apache.lucene.index.IndexWriter indexWriter)
    +               throws org.apache.lucene.index.CorruptIndexException,
    +                      IOException
    +
    +
    Saves a CPE IndexEntry into the Lucene index. +

    +

    +
    Parameters:
    vendor - the vendor to index
    product - the product to index
    indexWriter - the index writer to write the entry into +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the index is corrupt +
    IOException - is thrown if an IOException occurs
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the CPE Index. +

    +

    +
    +
    +
    +
    + +

    +search

    +
    +public org.apache.lucene.search.TopDocs search(String searchString,
    +                                               int maxQueryResults)
    +                                        throws org.apache.lucene.queryparser.classic.ParseException,
    +                                               IOException
    +
    +
    Searches the index using the given search string. +

    +

    +
    Parameters:
    searchString - the query text
    maxQueryResults - the maximum number of documents to return +
    Returns:
    the TopDocs found by the search +
    Throws: +
    org.apache.lucene.queryparser.classic.ParseException - thrown when the searchString is invalid +
    IOException - is thrown if there is an issue with the underlying + Index
    +
    +
    +
    + +

    +search

    +
    +public org.apache.lucene.search.TopDocs search(org.apache.lucene.search.Query query,
    +                                               int maxQueryResults)
    +                                        throws org.apache.lucene.index.CorruptIndexException,
    +                                               IOException
    +
    +
    Searches the index using the given query. +

    +

    +
    Parameters:
    query - the query used to search the index
    maxQueryResults - the max number of results to return +
    Returns:
    the TopDocs found be the query +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - thrown if the Index is corrupt +
    IOException - thrown if there is an IOException
    +
    +
    +
    + +

    +getDocument

    +
    +public org.apache.lucene.document.Document getDocument(int documentId)
    +                                                throws IOException
    +
    +
    Retrieves a document from the Index. +

    +

    +
    Parameters:
    documentId - the id of the document to retrieve +
    Returns:
    the Document +
    Throws: +
    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
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html new file mode 100644 index 000000000..96ff9908d --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexException.html @@ -0,0 +1,305 @@ + + + + + + + +IndexException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class IndexException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.data.cpe.IndexException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class IndexException
    extends Exception
    + + +

    +An exception thrown when the there is an issue using the in-memory CPE Index. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    IndexException() + +
    +          Creates a new IndexException.
    IndexException(String msg) + +
    +          Creates a new IndexException.
    IndexException(String msg, + Throwable ex) + +
    +          Creates a new IndexException.
    IndexException(Throwable ex) + +
    +          Creates a new IndexException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +IndexException

    +
    +public IndexException()
    +
    +
    Creates a new IndexException. +

    +

    +
    + +

    +IndexException

    +
    +public IndexException(String msg)
    +
    +
    Creates a new IndexException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +IndexException

    +
    +public IndexException(Throwable ex)
    +
    +
    Creates a new IndexException. +

    +

    +
    Parameters:
    ex - the cause of the failure.
    +
    +
    + +

    +IndexException

    +
    +public IndexException(String msg,
    +                      Throwable ex)
    +
    +
    Creates a new IndexException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html new file mode 100644 index 000000000..f731a03ba --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeMemoryIndex.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.CpeMemoryIndex (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.CpeMemoryIndex

    +
    + + + + + + + + + +
    +Packages that use CpeMemoryIndex
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    +  +

    + + + + + +
    +Uses of CpeMemoryIndex in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that return CpeMemoryIndex
    +static CpeMemoryIndexCpeMemoryIndex.getInstance() + +
    +          Gets the singleton instance of the CpeMemoryIndex.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html new file mode 100644 index 000000000..3480b4859 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexException.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.IndexException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.IndexException

    +
    + + + + + + + + + +
    +Packages that use IndexException
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    +  +

    + + + + + +
    +Uses of IndexException in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that throw IndexException
    + voidCpeMemoryIndex.open(CveDB cve) + +
    +          Creates and loads data into an in memory index.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html new file mode 100644 index 000000000..41151352e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/CallableDownloadTask.html @@ -0,0 +1,499 @@ + + + + + + + +CallableDownloadTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.update +
    +Class CallableDownloadTask

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.update.CallableDownloadTask
    +
    +
    +
    All Implemented Interfaces:
    Callable<CallableDownloadTask>
    +
    +
    +
    +
    public class CallableDownloadTask
    extends Object
    implements Callable<CallableDownloadTask>
    + + +

    +A callable object to download two files. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    CallableDownloadTask(NvdCveInfo nvdCveInfo, + File first, + File second) + +
    +          Simple constructor for the callable download task.
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + CallableDownloadTaskcall() + +
    +           
    + voidcleanup() + +
    +          Attempts to delete the files that were downloaded.
    + ExceptiongetException() + +
    +          Get the value of exception.
    + FilegetFirst() + +
    +          Get the value of first.
    + NvdCveInfogetNvdCveInfo() + +
    +          Get the value of nvdCveInfo.
    + FilegetSecond() + +
    +          Get the value of second.
    + booleanhasException() + +
    +          returns whether or not an exception occurred during download.
    + voidsetFirst(File first) + +
    +          Set the value of first.
    + voidsetNvdCveInfo(NvdCveInfo nvdCveInfo) + +
    +          Set the value of nvdCveInfo.
    + voidsetSecond(File second) + +
    +          Set the value of second.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +CallableDownloadTask

    +
    +public CallableDownloadTask(NvdCveInfo nvdCveInfo,
    +                            File first,
    +                            File second)
    +
    +
    Simple constructor for the callable download task. +

    +

    +
    Parameters:
    nvdCveInfo - the nvd cve info
    first - the first file
    second - the second file
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getNvdCveInfo

    +
    +public NvdCveInfo getNvdCveInfo()
    +
    +
    Get the value of nvdCveInfo. +

    +

    +
    +
    +
    + +
    Returns:
    the value of nvdCveInfo
    +
    +
    +
    + +

    +setNvdCveInfo

    +
    +public void setNvdCveInfo(NvdCveInfo nvdCveInfo)
    +
    +
    Set the value of nvdCveInfo. +

    +

    +
    +
    +
    +
    Parameters:
    nvdCveInfo - new value of nvdCveInfo
    +
    +
    +
    + +

    +getFirst

    +
    +public File getFirst()
    +
    +
    Get the value of first. +

    +

    +
    +
    +
    + +
    Returns:
    the value of first
    +
    +
    +
    + +

    +setFirst

    +
    +public void setFirst(File first)
    +
    +
    Set the value of first. +

    +

    +
    +
    +
    +
    Parameters:
    first - new value of first
    +
    +
    +
    + +

    +getSecond

    +
    +public File getSecond()
    +
    +
    Get the value of second. +

    +

    +
    +
    +
    + +
    Returns:
    the value of second
    +
    +
    +
    + +

    +setSecond

    +
    +public void setSecond(File second)
    +
    +
    Set the value of second. +

    +

    +
    +
    +
    +
    Parameters:
    second - new value of second
    +
    +
    +
    + +

    +getException

    +
    +public Exception getException()
    +
    +
    Get the value of exception. +

    +

    +
    +
    +
    + +
    Returns:
    the value of exception
    +
    +
    +
    + +

    +hasException

    +
    +public boolean hasException()
    +
    +
    returns whether or not an exception occurred during download. +

    +

    +
    +
    +
    + +
    Returns:
    whether or not an exception occurred during download
    +
    +
    +
    + +

    +call

    +
    +public CallableDownloadTask call()
    +                          throws Exception
    +
    +
    +
    Specified by:
    call in interface Callable<CallableDownloadTask>
    +
    +
    + +
    Throws: +
    Exception
    +
    +
    +
    + +

    +cleanup

    +
    +public void cleanup()
    +
    +
    Attempts to delete the files that were downloaded. +

    +

    +
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html new file mode 100644 index 000000000..da4da048e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/CallableDownloadTask.html @@ -0,0 +1,185 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.update.CallableDownloadTask (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.update.CallableDownloadTask

    +
    + + + + + + + + + +
    +Packages that use CallableDownloadTask
    org.owasp.dependencycheck.data.update + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of CallableDownloadTask in org.owasp.dependencycheck.data.update
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.update that return CallableDownloadTask
    + CallableDownloadTaskCallableDownloadTask.call() + +
    +           
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html new file mode 100644 index 000000000..6c0d10348 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/PropertyType.html @@ -0,0 +1,472 @@ + + + + + + + +PropertyType (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class PropertyType

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.PropertyType
    +
    +
    +
    +
    public class PropertyType
    extends Object
    + + +

    +A simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive. The equals method has been + over-ridden so that the object will correctly compare to strings. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    PropertyType() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + booleanequals(Object obj) + +
    +          Default implementation of equals.
    + StringgetValue() + +
    +          Gets the value of the value property.
    + inthashCode() + +
    +          Default implementation of hashCode.
    + booleanisCaseSensitive() + +
    +          Gets the value of the caseSensitive property.
    + booleanisRegex() + +
    +          Returns whether or not the value is a regex.
    + booleanmatches(String text) + +
    +          Uses the object's properties to determine if the supplied string matches + the value of this property.
    + voidsetCaseSensitive(boolean value) + +
    +          Sets the value of the caseSensitive property.
    + voidsetRegex(boolean value) + +
    +          Sets whether the value property is a regex.
    + voidsetValue(String value) + +
    +          Sets the value of the value property.
    + StringtoString() + +
    +          Default implementation of toString().
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +PropertyType

    +
    +public PropertyType()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getValue

    +
    +public String getValue()
    +
    +
    Gets the value of the value property. +

    +

    + +
    Returns:
    the value of the value property
    +
    +
    +
    + +

    +setValue

    +
    +public void setValue(String value)
    +
    +
    Sets the value of the value property. +

    +

    +
    Parameters:
    value - the value of the value property
    +
    +
    +
    + +

    +isRegex

    +
    +public boolean isRegex()
    +
    +
    Returns whether or not the value is a regex. +

    +

    + +
    Returns:
    true if the value is a regex, otherwise false
    +
    +
    +
    + +

    +setRegex

    +
    +public void setRegex(boolean value)
    +
    +
    Sets whether the value property is a regex. +

    +

    +
    Parameters:
    value - true if the value is a regex, otherwise false
    +
    +
    +
    + +

    +isCaseSensitive

    +
    +public boolean isCaseSensitive()
    +
    +
    Gets the value of the caseSensitive property. +

    +

    + +
    Returns:
    true if the value is case sensitive
    +
    +
    +
    + +

    +setCaseSensitive

    +
    +public void setCaseSensitive(boolean value)
    +
    +
    Sets the value of the caseSensitive property. +

    +

    +
    Parameters:
    value - whether the value is case sensitive
    +
    +
    +
    + +

    +matches

    +
    +public boolean matches(String text)
    +
    +
    Uses the object's properties to determine if the supplied string matches + the value of this property. +

    +

    +
    Parameters:
    text - the String to validate +
    Returns:
    whether the text supplied is matched by the value of the property
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Default implementation of hashCode. +

    +

    +
    Overrides:
    hashCode in class Object
    +
    +
    + +
    Returns:
    the hash code
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(Object obj)
    +
    +
    Default implementation of equals. +

    +

    +
    Overrides:
    equals in class Object
    +
    +
    +
    Parameters:
    obj - the object to compare +
    Returns:
    whether the objects are equivalent
    +
    +
    +
    + +

    +toString

    +
    +public String toString()
    +
    +
    Default implementation of toString(). +

    +

    +
    Overrides:
    toString in class Object
    +
    +
    + +
    Returns:
    the string representation of the object
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html new file mode 100644 index 000000000..67b315b8a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html @@ -0,0 +1,326 @@ + + + + + + + +SuppressionErrorHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionErrorHandler

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.SuppressionErrorHandler
    +
    +
    +
    All Implemented Interfaces:
    ErrorHandler
    +
    +
    +
    +
    public class SuppressionErrorHandler
    extends Object
    implements ErrorHandler
    + + +

    +An XML parsing error handler. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    SuppressionErrorHandler() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voiderror(SAXParseException ex) + +
    +          Handles errors.
    + voidfatalError(SAXParseException ex) + +
    +          Handles fatal exceptions.
    + voidwarning(SAXParseException ex) + +
    +          Logs warnings.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionErrorHandler

    +
    +public SuppressionErrorHandler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +warning

    +
    +public void warning(SAXParseException ex)
    +             throws SAXException
    +
    +
    Logs warnings. +

    +

    +
    Specified by:
    warning in interface ErrorHandler
    +
    +
    +
    Parameters:
    ex - the warning to log +
    Throws: +
    SAXException - is never thrown
    +
    +
    +
    + +

    +error

    +
    +public void error(SAXParseException ex)
    +           throws SAXException
    +
    +
    Handles errors. +

    +

    +
    Specified by:
    error in interface ErrorHandler
    +
    +
    +
    Parameters:
    ex - the error to handle +
    Throws: +
    SAXException - is always thrown
    +
    +
    +
    + +

    +fatalError

    +
    +public void fatalError(SAXParseException ex)
    +                throws SAXException
    +
    +
    Handles fatal exceptions. +

    +

    +
    Specified by:
    fatalError in interface ErrorHandler
    +
    +
    +
    Parameters:
    ex - a fatal exception +
    Throws: +
    SAXException - is always
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html new file mode 100644 index 000000000..e44ecc115 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionHandler.html @@ -0,0 +1,530 @@ + + + + + + + +SuppressionHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionHandler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.suppression.SuppressionHandler
    +
    +
    +
    All Implemented Interfaces:
    ContentHandler, DTDHandler, EntityResolver, ErrorHandler
    +
    +
    +
    +
    public class SuppressionHandler
    extends org.xml.sax.helpers.DefaultHandler
    + + +

    +A handler to load suppression rules. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringCPE + +
    +          The CPE element name.
    +static StringCVE + +
    +          The CVE element name.
    +static StringCVSS_BELOW + +
    +          The cvssBelow element name.
    +static StringCWE + +
    +          The CWE element name.
    +static StringFILE_PATH + +
    +          The file path element name.
    +static StringSHA1 + +
    +          The sha1 hash element name.
    +static StringSUPPRESS + +
    +          The suppress node, indicates the start of a new rule.
    +  + + + + + + + + + + +
    +Constructor Summary
    SuppressionHandler() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidcharacters(char[] ch, + int start, + int length) + +
    +          Collects the body text of the node being processed.
    + voidendElement(String uri, + String localName, + String qName) + +
    +          Handles the end element event.
    + List<SuppressionRule>getSupressionRules() + +
    +          Get the value of supressionRules.
    + voidstartElement(String uri, + String localName, + String qName, + Attributes attributes) + +
    +          Handles the start element event.
    + + + + + + + +
    Methods inherited from class org.xml.sax.helpers.DefaultHandler
    endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +SUPPRESS

    +
    +public static final String SUPPRESS
    +
    +
    The suppress node, indicates the start of a new rule. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +FILE_PATH

    +
    +public static final String FILE_PATH
    +
    +
    The file path element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SHA1

    +
    +public static final String SHA1
    +
    +
    The sha1 hash element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVE

    +
    +public static final String CVE
    +
    +
    The CVE element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CPE

    +
    +public static final String CPE
    +
    +
    The CPE element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CWE

    +
    +public static final String CWE
    +
    +
    The CWE element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CVSS_BELOW

    +
    +public static final String CVSS_BELOW
    +
    +
    The cvssBelow element name. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionHandler

    +
    +public SuppressionHandler()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getSupressionRules

    +
    +public List<SuppressionRule> getSupressionRules()
    +
    +
    Get the value of supressionRules. +

    +

    + +
    Returns:
    the value of supressionRules
    +
    +
    +
    + +

    +startElement

    +
    +public void startElement(String uri,
    +                         String localName,
    +                         String qName,
    +                         Attributes attributes)
    +                  throws SAXException
    +
    +
    Handles the start element event. +

    +

    +
    Specified by:
    startElement in interface ContentHandler
    Overrides:
    startElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    +
    Parameters:
    uri - the uri of the element being processed
    localName - the local name of the element being processed
    qName - the qName of the element being processed
    attributes - the attributes of the element being processed +
    Throws: +
    SAXException - thrown if there is an exception processing
    +
    +
    +
    + +

    +endElement

    +
    +public void endElement(String uri,
    +                       String localName,
    +                       String qName)
    +                throws SAXException
    +
    +
    Handles the end element event. +

    +

    +
    Specified by:
    endElement in interface ContentHandler
    Overrides:
    endElement in class org.xml.sax.helpers.DefaultHandler
    +
    +
    +
    Parameters:
    uri - the uri of the element
    localName - the local name of the element
    qName - the qName of the element +
    Throws: +
    SAXException - thrown if there is an exception processing
    +
    +
    +
    + +

    +characters

    +
    +public void characters(char[] ch,
    +                       int start,
    +                       int length)
    +                throws SAXException
    +
    +
    Collects the body text of the node being processed. +

    +

    +
    Specified by:
    characters in interface ContentHandler
    Overrides:
    characters in class org.xml.sax.helpers.DefaultHandler
    +
    +
    +
    Parameters:
    ch - the char array of text
    start - the start position to copy text from in the char array
    length - the number of characters to copy from the char array +
    Throws: +
    SAXException - thrown if there is a parsing exception
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html new file mode 100644 index 000000000..f7e6adb3a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParseException.html @@ -0,0 +1,306 @@ + + + + + + + +SuppressionParseException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionParseException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by java.io.IOException
    +              extended by org.owasp.dependencycheck.suppression.SuppressionParseException
    +
    +
    +
    All Implemented Interfaces:
    Serializable
    +
    +
    +
    +
    public class SuppressionParseException
    extends IOException
    + + +

    +An exception used when parsing a suppression rule file fails. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    See Also:
    Serialized Form
    +
    + +

    + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    SuppressionParseException() + +
    +          Creates a new SuppressionParseException.
    SuppressionParseException(String msg) + +
    +          Creates a new SuppressionParseException.
    SuppressionParseException(String msg, + Throwable ex) + +
    +          Creates a new SuppressionParseException.
    SuppressionParseException(Throwable ex) + +
    +          Creates a new SuppressionParseException.
    +  + + + + + + + +
    +Method Summary
    + + + + + + + +
    Methods inherited from class java.lang.Throwable
    fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException()
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException(String msg)
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    +
    +
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException(Throwable ex)
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    Parameters:
    ex - the cause of the download failure.
    +
    +
    + +

    +SuppressionParseException

    +
    +public SuppressionParseException(String msg,
    +                                 Throwable ex)
    +
    +
    Creates a new SuppressionParseException. +

    +

    +
    Parameters:
    msg - a message for the exception.
    ex - the cause of the download failure.
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html new file mode 100644 index 000000000..c2d3730bc --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionParser.html @@ -0,0 +1,350 @@ + + + + + + + +SuppressionParser (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionParser

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.SuppressionParser
    +
    +
    +
    +
    public class SuppressionParser
    extends Object
    + + +

    +A simple validating parser for XML Suppression Rules. +

    + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringJAXP_SCHEMA_LANGUAGE + +
    +          JAXP Schema Language.
    +static StringJAXP_SCHEMA_SOURCE + +
    +          JAXP Schema Source.
    +static StringW3C_XML_SCHEMA + +
    +          W3C XML Schema.
    +  + + + + + + + + + + +
    +Constructor Summary
    SuppressionParser() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + List<SuppressionRule>parseSuppressionRules(File file) + +
    +          Parses the given xml file and returns a list of the suppression rules + contained.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +JAXP_SCHEMA_LANGUAGE

    +
    +public static final String JAXP_SCHEMA_LANGUAGE
    +
    +
    JAXP Schema Language. Source: + http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +W3C_XML_SCHEMA

    +
    +public static final String W3C_XML_SCHEMA
    +
    +
    W3C XML Schema. Source: + http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +JAXP_SCHEMA_SOURCE

    +
    +public static final String JAXP_SCHEMA_SOURCE
    +
    +
    JAXP Schema Source. Source: + http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionParser

    +
    +public SuppressionParser()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +parseSuppressionRules

    +
    +public List<SuppressionRule> parseSuppressionRules(File file)
    +                                            throws SuppressionParseException
    +
    +
    Parses the given xml file and returns a list of the suppression rules + contained. +

    +

    +
    Parameters:
    file - an xml file containing suppression rules +
    Returns:
    a list of suppression rules +
    Throws: +
    SuppressionParseException - thrown if the xml file cannot be parsed
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html new file mode 100644 index 000000000..eaff5d3cd --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/SuppressionRule.html @@ -0,0 +1,692 @@ + + + + + + + +SuppressionRule (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.suppression +
    +Class SuppressionRule

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.suppression.SuppressionRule
    +
    +
    +
    +
    public class SuppressionRule
    extends Object
    + + +

    +

    +
    Author:
    +
    Jeremy Long (jeremy.long@owasp.org)
    +
    +
    + +

    + + + + + + + + + + + +
    +Constructor Summary
    SuppressionRule() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidaddCpe(PropertyType cpe) + +
    +          Adds the cpe to the cpe list.
    + voidaddCve(String cve) + +
    +          Adds the cve to the cve list.
    + voidaddCvssBelow(Float cvss) + +
    +          Adds the cvss to the cvssBelow list.
    + voidaddCwe(String cwe) + +
    +          Adds the cwe to the cwe list.
    + List<PropertyType>getCpe() + +
    +          Get the value of cpe.
    + List<String>getCve() + +
    +          Get the value of cve.
    + List<Float>getCvssBelow() + +
    +          Get the value of cvssBelow.
    + List<String>getCwe() + +
    +          Get the value of cwe.
    + PropertyTypegetFilePath() + +
    +          Get the value of filePath.
    + StringgetSha1() + +
    +          Get the value of sha1.
    + booleanhasCpe() + +
    +          Returns whether or not this suppression rule as CPE entries.
    + booleanhasCve() + +
    +          Returns whether this suppression rule has CVE entries.
    + booleanhasCvssBelow() + +
    +          Returns whether or not this suppression rule has cvss suppressions.
    + booleanhasCwe() + +
    +          Returns whether this suppression rule has CWE entries.
    + voidprocess(Dependency dependency) + +
    +          Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS + scores should be suppressed.
    + voidsetCpe(List<PropertyType> cpe) + +
    +          Set the value of cpe.
    + voidsetCve(List<String> cve) + +
    +          Set the value of cve.
    + voidsetCvssBelow(List<Float> cvssBelow) + +
    +          Set the value of cvssBelow.
    + voidsetCwe(List<String> cwe) + +
    +          Set the value of cwe.
    + voidsetFilePath(PropertyType filePath) + +
    +          Set the value of filePath.
    + voidsetSha1(String sha1) + +
    +          Set the value of sha1.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +SuppressionRule

    +
    +public SuppressionRule()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getFilePath

    +
    +public PropertyType getFilePath()
    +
    +
    Get the value of filePath. +

    +

    + +
    Returns:
    the value of filePath
    +
    +
    +
    + +

    +setFilePath

    +
    +public void setFilePath(PropertyType filePath)
    +
    +
    Set the value of filePath. +

    +

    +
    Parameters:
    filePath - new value of filePath
    +
    +
    +
    + +

    +getSha1

    +
    +public String getSha1()
    +
    +
    Get the value of sha1. +

    +

    + +
    Returns:
    the value of sha1
    +
    +
    +
    + +

    +setSha1

    +
    +public void setSha1(String sha1)
    +
    +
    Set the value of sha1. +

    +

    +
    Parameters:
    sha1 - new value of sha1
    +
    +
    +
    + +

    +getCpe

    +
    +public List<PropertyType> getCpe()
    +
    +
    Get the value of cpe. +

    +

    + +
    Returns:
    the value of cpe
    +
    +
    +
    + +

    +setCpe

    +
    +public void setCpe(List<PropertyType> cpe)
    +
    +
    Set the value of cpe. +

    +

    +
    Parameters:
    cpe - new value of cpe
    +
    +
    +
    + +

    +addCpe

    +
    +public void addCpe(PropertyType cpe)
    +
    +
    Adds the cpe to the cpe list. +

    +

    +
    Parameters:
    cpe - the cpe to add
    +
    +
    +
    + +

    +hasCpe

    +
    +public boolean hasCpe()
    +
    +
    Returns whether or not this suppression rule as CPE entries. +

    +

    + +
    Returns:
    whether or not this suppression rule as CPE entries
    +
    +
    +
    + +

    +getCvssBelow

    +
    +public List<Float> getCvssBelow()
    +
    +
    Get the value of cvssBelow. +

    +

    + +
    Returns:
    the value of cvssBelow
    +
    +
    +
    + +

    +setCvssBelow

    +
    +public void setCvssBelow(List<Float> cvssBelow)
    +
    +
    Set the value of cvssBelow. +

    +

    +
    Parameters:
    cvssBelow - new value of cvssBelow
    +
    +
    +
    + +

    +addCvssBelow

    +
    +public void addCvssBelow(Float cvss)
    +
    +
    Adds the cvss to the cvssBelow list. +

    +

    +
    Parameters:
    cvss - the cvss to add
    +
    +
    +
    + +

    +hasCvssBelow

    +
    +public boolean hasCvssBelow()
    +
    +
    Returns whether or not this suppression rule has cvss suppressions. +

    +

    + +
    Returns:
    whether or not this suppression rule has cvss suppressions
    +
    +
    +
    + +

    +getCwe

    +
    +public List<String> getCwe()
    +
    +
    Get the value of cwe. +

    +

    + +
    Returns:
    the value of cwe
    +
    +
    +
    + +

    +setCwe

    +
    +public void setCwe(List<String> cwe)
    +
    +
    Set the value of cwe. +

    +

    +
    Parameters:
    cwe - new value of cwe
    +
    +
    +
    + +

    +addCwe

    +
    +public void addCwe(String cwe)
    +
    +
    Adds the cwe to the cwe list. +

    +

    +
    Parameters:
    cwe - the cwe to add
    +
    +
    +
    + +

    +hasCwe

    +
    +public boolean hasCwe()
    +
    +
    Returns whether this suppression rule has CWE entries. +

    +

    + +
    Returns:
    whether this suppression rule has CWE entries
    +
    +
    +
    + +

    +getCve

    +
    +public List<String> getCve()
    +
    +
    Get the value of cve. +

    +

    + +
    Returns:
    the value of cve
    +
    +
    +
    + +

    +setCve

    +
    +public void setCve(List<String> cve)
    +
    +
    Set the value of cve. +

    +

    +
    Parameters:
    cve - new value of cve
    +
    +
    +
    + +

    +addCve

    +
    +public void addCve(String cve)
    +
    +
    Adds the cve to the cve list. +

    +

    +
    Parameters:
    cve - the cve to add
    +
    +
    +
    + +

    +hasCve

    +
    +public boolean hasCve()
    +
    +
    Returns whether this suppression rule has CVE entries. +

    +

    + +
    Returns:
    whether this suppression rule has CVE entries
    +
    +
    +
    + +

    +process

    +
    +public void process(Dependency dependency)
    +
    +
    Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS + scores should be suppressed. If any should be, they are removed from the + dependency. +

    +

    +
    Parameters:
    dependency - a project dependency to analyze
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html new file mode 100644 index 000000000..6b70d1eb7 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/PropertyType.html @@ -0,0 +1,242 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.PropertyType (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.PropertyType

    +
    + + + + + + + + + +
    +Packages that use PropertyType
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of PropertyType in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that return PropertyType
    + PropertyTypeSuppressionRule.getFilePath() + +
    +          Get the value of filePath.
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that return types with arguments of type PropertyType
    + List<PropertyType>SuppressionRule.getCpe() + +
    +          Get the value of cpe.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression with parameters of type PropertyType
    + voidSuppressionRule.addCpe(PropertyType cpe) + +
    +          Adds the cpe to the cpe list.
    + voidSuppressionRule.setFilePath(PropertyType filePath) + +
    +          Set the value of filePath.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.suppression with type arguments of type PropertyType
    + voidSuppressionRule.setCpe(List<PropertyType> cpe) + +
    +          Set the value of cpe.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html new file mode 100644 index 000000000..fdef98509 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionErrorHandler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionErrorHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionErrorHandler

    +
    +No usage of org.owasp.dependencycheck.suppression.SuppressionErrorHandler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html new file mode 100644 index 000000000..dfb6da29c --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionHandler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionHandler (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionHandler

    +
    +No usage of org.owasp.dependencycheck.suppression.SuppressionHandler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html new file mode 100644 index 000000000..d7725304e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParseException.html @@ -0,0 +1,187 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionParseException (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionParseException

    +
    + + + + + + + + + +
    +Packages that use SuppressionParseException
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of SuppressionParseException in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that throw SuppressionParseException
    + List<SuppressionRule>SuppressionParser.parseSuppressionRules(File file) + +
    +          Parses the given xml file and returns a list of the suppression rules + contained.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html new file mode 100644 index 000000000..4cd955b54 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionParser.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionParser (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionParser

    +
    +No usage of org.owasp.dependencycheck.suppression.SuppressionParser +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html new file mode 100644 index 000000000..a6571fe8f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/class-use/SuppressionRule.html @@ -0,0 +1,246 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.suppression.SuppressionRule (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.suppression.SuppressionRule

    +
    + + + + + + + + + + + + + +
    +Packages that use SuppressionRule
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + +
    +Uses of SuppressionRule in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that return types with arguments of type SuppressionRule
    + List<SuppressionRule>AbstractSuppressionAnalyzer.getRules() + +
    +          Get the value of rules.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.analyzer with type arguments of type SuppressionRule
    + voidAbstractSuppressionAnalyzer.setRules(List<SuppressionRule> rules) + +
    +          Set the value of rules.
    +  +

    + + + + + +
    +Uses of SuppressionRule in org.owasp.dependencycheck.suppression
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.suppression that return types with arguments of type SuppressionRule
    + List<SuppressionRule>SuppressionHandler.getSupressionRules() + +
    +          Get the value of supressionRules.
    + List<SuppressionRule>SuppressionParser.parseSuppressionRules(File file) + +
    +          Parses the given xml file and returns a list of the suppression rules + contained.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html new file mode 100644 index 000000000..8bdd09c5e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-frame.html @@ -0,0 +1,52 @@ + + + + + + + +org.owasp.dependencycheck.suppression (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + +org.owasp.dependencycheck.suppression + + + + +
    +Classes  + +
    +PropertyType +
    +SuppressionErrorHandler +
    +SuppressionHandler +
    +SuppressionParser +
    +SuppressionRule
    + + + + + + +
    +Exceptions  + +
    +SuppressionParseException
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html new file mode 100644 index 000000000..acfb14f96 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-summary.html @@ -0,0 +1,216 @@ + + + + + + + +org.owasp.dependencycheck.suppression (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.suppression +

    + + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    PropertyTypeA simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive.
    SuppressionErrorHandlerAn XML parsing error handler.
    SuppressionHandlerA handler to load suppression rules.
    SuppressionParserA simple validating parser for XML Suppression Rules.
    SuppressionRule 
    +  + +

    + + + + + + + + + +
    +Exception Summary
    SuppressionParseExceptionAn exception used when parsing a suppression rule file fails.
    +  + +

    +

    +Package org.owasp.dependencycheck.suppression Description +

    + +

    + + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html new file mode 100644 index 000000000..752968b14 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-tree.html @@ -0,0 +1,165 @@ + + + + + + + +org.owasp.dependencycheck.suppression Class Hierarchy (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.suppression +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html new file mode 100644 index 000000000..c2a737f7e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/suppression/package-use.html @@ -0,0 +1,214 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.suppression (Dependency-Check Core 1.0.6 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.suppression

    +
    + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.suppression
    org.owasp.dependencycheck.analyzer + + org.owasp.dependencycheck.analyzer + + + Analyzers are used to inspect the identified dependencies, collect Evidence, + and process the dependencies. 
    org.owasp.dependencycheck.suppression + + org.owasp.dependencycheck.suppression + + + Contains classes used to suppress findings. 
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.suppression used by org.owasp.dependencycheck.analyzer
    SuppressionRule + +
    +           
    +  +

    + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.suppression used by org.owasp.dependencycheck.suppression
    PropertyType + +
    +          A simple PropertyType used to represent a string value that could be used as + a regular expression or could be case insensitive.
    SuppressionParseException + +
    +          An exception used when parsing a suppression rule file fails.
    SuppressionRule + +
    +           
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html new file mode 100644 index 000000000..84e86033d --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.suppression.html @@ -0,0 +1,38 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.suppression +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + +
    PropertyType (70%)
    SuppressionErrorHandler (6%)
    SuppressionHandler (97%)
    SuppressionParseException (0%)
    SuppressionParser (58%)
    SuppressionRule (95%)
    + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html new file mode 100644 index 000000000..e94be51b5 --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.suppression.html @@ -0,0 +1,52 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.suppression6
    77%
    179/231
    74%
    98/132
    2.812
    + +
     
    + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    PropertyType
    70%
    28/40
    46%
    13/28
    3.1
    SuppressionErrorHandler
    6%
    1/16
    0%
    0/8
    2.5
    SuppressionHandler
    97%
    40/41
    84%
    22/26
    3.6
    SuppressionParseException
    0%
    0/8
    N/A
    1
    SuppressionParser
    58%
    17/29
    N/A
    10
    SuppressionRule
    95%
    93/97
    90%
    63/70
    2.583
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..36876ffca --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer.html @@ -0,0 +1,233 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.AbstractSuppressionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AbstractSuppressionAnalyzer
    47%
    10/21
    50%
    1/2
    1.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import java.io.File;
     22  
     import java.util.List;
     23  
     import java.util.Set;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.Logger;
     26  
     import org.owasp.dependencycheck.suppression.SuppressionParseException;
     27  
     import org.owasp.dependencycheck.suppression.SuppressionParser;
     28  
     import org.owasp.dependencycheck.suppression.SuppressionRule;
     29  
     import org.owasp.dependencycheck.utils.Settings;
     30  
     
     31  
     /**
     32  
      * Abstract base suppression analyzer that contains methods for parsing the
     33  
      * suppression xml file.
     34  
      *
     35  
      * @author Jeremy Long (jeremy.long@owasp.org)
     36  
      */
     37  2
     public abstract class AbstractSuppressionAnalyzer extends AbstractAnalyzer {
     38  
     
     39  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     40  
         /**
     41  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     42  
          *
     43  
          * @return a list of file EXTENSIONS supported by this analyzer.
     44  
          */
     45  
         public Set<String> getSupportedExtensions() {
     46  264
             return null;
     47  
         }
     48  
     
     49  
         /**
     50  
          * Returns whether or not this analyzer can process the given extension.
     51  
          *
     52  
          * @param extension the file extension to test for support.
     53  
          * @return whether or not the specified file extension is supported by this
     54  
          * analyzer.
     55  
          */
     56  
         @Override
     57  
         public boolean supportsExtension(String extension) {
     58  18
             return true;
     59  
         }
     60  
     
     61  
         //</editor-fold>
     62  
         /**
     63  
          * The initialize method loads the suppression XML file.
     64  
          *
     65  
          * @throws Exception thrown if there is an exception
     66  
          */
     67  
         @Override
     68  
         public void initialize() throws Exception {
     69  6
             super.initialize();
     70  6
             loadSuppressionData();
     71  6
         }
     72  
         /**
     73  
          * The list of suppression rules
     74  
          */
     75  
         private List<SuppressionRule> rules;
     76  
     
     77  
         /**
     78  
          * Get the value of rules.
     79  
          *
     80  
          * @return the value of rules
     81  
          */
     82  
         public List<SuppressionRule> getRules() {
     83  18
             return rules;
     84  
         }
     85  
     
     86  
         /**
     87  
          * Set the value of rules.
     88  
          *
     89  
          * @param rules new value of rules
     90  
          */
     91  
         public void setRules(List<SuppressionRule> rules) {
     92  0
             this.rules = rules;
     93  0
         }
     94  
     
     95  
         /**
     96  
          * Loads the suppression rules file.
     97  
          *
     98  
          * @throws SuppressionParseException thrown if the XML cannot be parsed.
     99  
          */
     100  
         private void loadSuppressionData() throws SuppressionParseException {
     101  6
             final File file = Settings.getFile(Settings.KEYS.SUPPRESSION_FILE);
     102  6
             if (file != null) {
     103  0
                 final SuppressionParser parser = new SuppressionParser();
     104  
                 try {
     105  0
                     rules = parser.parseSuppressionRules(file);
     106  0
                 } catch (SuppressionParseException ex) {
     107  0
                     final String msg = String.format("Unable to parse suppression xml file '%s'", file.getPath());
     108  0
                     Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, msg);
     109  0
                     Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, ex.getMessage());
     110  0
                     Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.FINE, null, ex);
     111  0
                     throw ex;
     112  0
                 }
     113  
             }
     114  6
         }
     115  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..b0d7f33fd --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer.html @@ -0,0 +1,167 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.CpeSuppressionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CpeSuppressionAnalyzer
    66%
    6/9
    16%
    1/6
    2.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import org.owasp.dependencycheck.Engine;
     22  
     import org.owasp.dependencycheck.dependency.Dependency;
     23  
     import org.owasp.dependencycheck.suppression.SuppressionRule;
     24  
     
     25  
     /**
     26  
      * The suppression analyzer processes an externally defined XML document that
     27  
      * complies with the suppressions.xsd schema. Any identified CPE entries within
     28  
      * the dependencies that match will be removed.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  1
     public class CpeSuppressionAnalyzer extends AbstractSuppressionAnalyzer {
     33  
     
     34  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     35  
         /**
     36  
          * The name of the analyzer.
     37  
          */
     38  
         private static final String ANALYZER_NAME = "Cpe Suppression Analyzer";
     39  
         /**
     40  
          * The phase that this analyzer is intended to run in.
     41  
          */
     42  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_IDENTIFIER_ANALYSIS;
     43  
     
     44  
         /**
     45  
          * Returns the name of the analyzer.
     46  
          *
     47  
          * @return the name of the analyzer.
     48  
          */
     49  
         @Override
     50  
         public String getName() {
     51  9
             return ANALYZER_NAME;
     52  
         }
     53  
     
     54  
         /**
     55  
          * Returns the phase that the analyzer is intended to run in.
     56  
          *
     57  
          * @return the phase that the analyzer is intended to run in.
     58  
          */
     59  
         @Override
     60  
         public AnalysisPhase getAnalysisPhase() {
     61  6
             return ANALYSIS_PHASE;
     62  
         }
     63  
         //</editor-fold>
     64  
     
     65  
         @Override
     66  
         public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
     67  
     
     68  9
             if (getRules() == null || getRules().size() <= 0) {
     69  9
                 return;
     70  
             }
     71  
     
     72  0
             for (final SuppressionRule rule : getRules()) {
     73  0
                 rule.process(dependency);
     74  
             }
     75  0
         }
     76  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..714425600 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,167 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.VulnerabilitySuppressionAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    VulnerabilitySuppressionAnalyzer
    66%
    6/9
    16%
    1/6
    2.333
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.analyzer;
     20  
     
     21  
     import org.owasp.dependencycheck.Engine;
     22  
     import org.owasp.dependencycheck.dependency.Dependency;
     23  
     import org.owasp.dependencycheck.suppression.SuppressionRule;
     24  
     
     25  
     /**
     26  
      * The suppression analyzer processes an externally defined XML document that
     27  
      * complies with the suppressions.xsd schema. Any identified Vulnerability
     28  
      * entries within the dependencies that match will be removed.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  1
     public class VulnerabilitySuppressionAnalyzer extends AbstractSuppressionAnalyzer {
     33  
     
     34  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     35  
         /**
     36  
          * The name of the analyzer.
     37  
          */
     38  
         private static final String ANALYZER_NAME = "Vulnerability Suppression Analyzer";
     39  
         /**
     40  
          * The phase that this analyzer is intended to run in.
     41  
          */
     42  1
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_FINDING_ANALYSIS;
     43  
     
     44  
         /**
     45  
          * Returns the name of the analyzer.
     46  
          *
     47  
          * @return the name of the analyzer.
     48  
          */
     49  
         @Override
     50  
         public String getName() {
     51  9
             return ANALYZER_NAME;
     52  
         }
     53  
     
     54  
         /**
     55  
          * Returns the phase that the analyzer is intended to run in.
     56  
          *
     57  
          * @return the phase that the analyzer is intended to run in.
     58  
          */
     59  
         @Override
     60  
         public AnalysisPhase getAnalysisPhase() {
     61  6
             return ANALYSIS_PHASE;
     62  
         }
     63  
         //</editor-fold>
     64  
     
     65  
         @Override
     66  
         public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
     67  
     
     68  9
             if (getRules() == null || getRules().size() <= 0) {
     69  9
                 return;
     70  
             }
     71  
     
     72  0
             for (final SuppressionRule rule : getRules()) {
     73  0
                 rule.process(dependency);
     74  
             }
     75  0
         }
     76  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html new file mode 100644 index 000000000..1f999c121 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.BaseDB.html @@ -0,0 +1,440 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.BaseDB
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    BaseDB
    45%
    34/74
    50%
    10/20
    2.8
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data;
     20  
     
     21  
     import java.io.BufferedReader;
     22  
     import java.io.File;
     23  
     import java.io.IOException;
     24  
     import java.io.InputStream;
     25  
     import java.io.InputStreamReader;
     26  
     import java.sql.Connection;
     27  
     import java.sql.DriverManager;
     28  
     import java.sql.PreparedStatement;
     29  
     import java.sql.ResultSet;
     30  
     import java.sql.SQLException;
     31  
     import java.sql.Statement;
     32  
     import java.util.logging.Level;
     33  
     import java.util.logging.Logger;
     34  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     35  
     import static org.owasp.dependencycheck.data.nvdcve.CveDB.DB_SCHEMA_VERSION;
     36  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     37  
     import org.owasp.dependencycheck.utils.Settings;
     38  
     
     39  
     /**
     40  
      *
     41  
      * @author Jeremy Long (jeremy.long@owasp.org)
     42  
      */
     43  21
     public class BaseDB {
     44  
     
     45  
         /**
     46  
          * Resource location for SQL file used to create the database schema.
     47  
          */
     48  
         public static final String DB_STRUCTURE_RESOURCE = "data/initialize.sql";
     49  
         /**
     50  
          * The version of the current DB Schema.
     51  
          */
     52  
         public static final String DB_SCHEMA_VERSION = "2.7";
     53  
         /**
     54  
          * Database connection
     55  
          */
     56  
         private Connection conn;
     57  
     
     58  
         /**
     59  
          * Returns the database connection.
     60  
          *
     61  
          * @return the database connection
     62  
          */
     63  
         protected Connection getConnection() {
     64  278
             return conn;
     65  
         }
     66  
     
     67  
         /**
     68  
          * Opens the database connection. If the database does not exist, it will
     69  
          * create a new one.
     70  
          *
     71  
          * @throws IOException thrown if there is an IO Exception
     72  
          * @throws SQLException thrown if there is a SQL Exception
     73  
          * @throws DatabaseException thrown if there is an error initializing a new
     74  
          * database
     75  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     76  
          * loaded
     77  
          */
     78  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(
     79  
                 value = "DMI_EMPTY_DB_PASSWORD",
     80  
                 justification = "Yes, I know... Blank password.")
     81  
         public void open() throws IOException, SQLException, DatabaseException, ClassNotFoundException {
     82  21
             final String fileName = CveDB.getDataDirectory().getCanonicalPath();
     83  21
             final File f = new File(fileName, "cve." + DB_SCHEMA_VERSION);
     84  21
             final File check = new File(f.getAbsolutePath() + ".h2.db");
     85  21
             final boolean createTables = !check.exists();
     86  21
             final String connStr = String.format("jdbc:h2:file:%s;AUTO_SERVER=TRUE", f.getAbsolutePath());
     87  21
             Class.forName("org.h2.Driver");
     88  21
             conn = DriverManager.getConnection(connStr, "sa", "");
     89  21
             if (createTables) {
     90  0
                 createTables();
     91  
             }
     92  21
         }
     93  
     
     94  
         /**
     95  
          * Closes the DB4O database. Close should be called on this object when it
     96  
          * is done being used.
     97  
          */
     98  
         public void close() {
     99  37
             if (conn != null) {
     100  
                 try {
     101  21
                     conn.close();
     102  0
                 } catch (SQLException ex) {
     103  0
                     final String msg = "There was an error attempting to close the CveDB, see the log for more details.";
     104  0
                     Logger.getLogger(BaseDB.class.getName()).log(Level.SEVERE, msg, ex);
     105  0
                     Logger.getLogger(BaseDB.class.getName()).log(Level.FINE, null, ex);
     106  21
                 }
     107  21
                 conn = null;
     108  
             }
     109  37
         }
     110  
     
     111  
         /**
     112  
          * Commits all completed transactions.
     113  
          *
     114  
          * @throws SQLException thrown if a SQL Exception occurs
     115  
          */
     116  
         public void commit() throws SQLException {
     117  1
             if (conn != null) {
     118  1
                 conn.commit();
     119  
             }
     120  1
         }
     121  
     
     122  
         /**
     123  
          * Cleans up the object and ensures that "close" has been called.
     124  
          *
     125  
          * @throws Throwable thrown if there is a problem
     126  
          */
     127  
         @Override
     128  
         protected void finalize() throws Throwable {
     129  16
             close();
     130  16
             super.finalize(); //not necessary if extending Object.
     131  16
         }
     132  
     
     133  
         /**
     134  
          * Creates the database structure (tables and indexes) to store the CVE data
     135  
          *
     136  
          * @throws SQLException thrown if there is a sql exception
     137  
          * @throws DatabaseException thrown if there is a database exception
     138  
          */
     139  
         private void createTables() throws SQLException, DatabaseException {
     140  
             InputStream is;
     141  
             InputStreamReader reader;
     142  0
             BufferedReader in = null;
     143  
             try {
     144  0
                 is = this.getClass().getClassLoader().getResourceAsStream(DB_STRUCTURE_RESOURCE);
     145  0
                 reader = new InputStreamReader(is, "UTF-8");
     146  0
                 in = new BufferedReader(reader);
     147  0
                 final StringBuilder sb = new StringBuilder(2110);
     148  
                 String tmp;
     149  0
                 while ((tmp = in.readLine()) != null) {
     150  0
                     sb.append(tmp);
     151  
                 }
     152  0
                 Statement statement = null;
     153  
                 try {
     154  0
                     statement = conn.createStatement();
     155  0
                     statement.execute(sb.toString());
     156  
                 } finally {
     157  0
                     closeStatement(statement);
     158  0
                 }
     159  0
             } catch (IOException ex) {
     160  0
                 throw new DatabaseException("Unable to create database schema", ex);
     161  
             } finally {
     162  0
                 if (in != null) {
     163  
                     try {
     164  0
                         in.close();
     165  0
                     } catch (IOException ex) {
     166  0
                         Logger.getLogger(CveDB.class
     167  
                                 .getName()).log(Level.FINEST, null, ex);
     168  0
                     }
     169  
                 }
     170  
             }
     171  0
         }
     172  
     
     173  
         /**
     174  
          * Retrieves the directory that the JAR file exists in so that we can ensure
     175  
          * we always use a common data directory.
     176  
          *
     177  
          * @return the data directory for this index.
     178  
          * @throws IOException is thrown if an IOException occurs of course...
     179  
          */
     180  
         public static File getDataDirectory() throws IOException {
     181  22
             final File path = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
     182  22
             if (!path.exists()) {
     183  1
                 if (!path.mkdirs()) {
     184  0
                     throw new IOException("Unable to create NVD CVE Data directory");
     185  
                 }
     186  
             }
     187  22
             return path;
     188  
         }
     189  
     
     190  
         /**
     191  
          * Returns the generated integer primary key for a newly inserted row.
     192  
          *
     193  
          * @param statement a prepared statement that just executed an insert
     194  
          * @return a primary key
     195  
          * @throws DatabaseException thrown if there is an exception obtaining the
     196  
          * key
     197  
          */
     198  
         protected int getGeneratedKey(PreparedStatement statement) throws DatabaseException {
     199  0
             ResultSet rs = null;
     200  0
             int id = 0;
     201  
             try {
     202  0
                 rs = statement.getGeneratedKeys();
     203  0
                 rs.next();
     204  0
                 id = rs.getInt(1);
     205  0
             } catch (SQLException ex) {
     206  0
                 throw new DatabaseException("Unable to get primary key for inserted row");
     207  
             } finally {
     208  0
                 closeResultSet(rs);
     209  0
             }
     210  0
             return id;
     211  
         }
     212  
     
     213  
         /**
     214  
          * Closes the given statement object ignoring any exceptions that occur.
     215  
          *
     216  
          * @param statement a Statement object
     217  
          */
     218  
         public void closeStatement(Statement statement) {
     219  267
             if (statement != null) {
     220  
                 try {
     221  267
                     statement.close();
     222  0
                 } catch (SQLException ex) {
     223  0
                     Logger.getLogger(CveDB.class
     224  
                             .getName()).log(Level.FINEST, statement.toString(), ex);
     225  267
                 }
     226  
             }
     227  267
         }
     228  
     
     229  
         /**
     230  
          * Closes the result set capturing and ignoring any SQLExceptions that
     231  
          * occur.
     232  
          *
     233  
          * @param rs a ResultSet to close
     234  
          */
     235  
         public void closeResultSet(ResultSet rs) {
     236  279
             if (rs != null) {
     237  
                 try {
     238  279
                     rs.close();
     239  0
                 } catch (SQLException ex) {
     240  0
                     Logger.getLogger(CveDB.class
     241  
                             .getName()).log(Level.FINEST, rs.toString(), ex);
     242  279
                 }
     243  
             }
     244  279
         }
     245  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html new file mode 100644 index 000000000..59b0e8a8d --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeMemoryIndex.html @@ -0,0 +1,584 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.CpeMemoryIndex
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CpeMemoryIndex
    72%
    70/96
    50%
    13/26
    3.071
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cpe;
     20  
     
     21  
     import java.io.IOException;
     22  
     import java.sql.ResultSet;
     23  
     import java.sql.SQLException;
     24  
     import java.util.HashMap;
     25  
     import java.util.Map;
     26  
     import java.util.logging.Level;
     27  
     import java.util.logging.Logger;
     28  
     import org.apache.lucene.analysis.Analyzer;
     29  
     import org.apache.lucene.analysis.core.KeywordAnalyzer;
     30  
     import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
     31  
     import org.apache.lucene.document.Document;
     32  
     import org.apache.lucene.document.Field;
     33  
     import org.apache.lucene.document.TextField;
     34  
     import org.apache.lucene.index.CorruptIndexException;
     35  
     import org.apache.lucene.index.DirectoryReader;
     36  
     import org.apache.lucene.index.IndexReader;
     37  
     import org.apache.lucene.index.IndexWriter;
     38  
     import org.apache.lucene.index.IndexWriterConfig;
     39  
     import org.apache.lucene.queryparser.classic.ParseException;
     40  
     import org.apache.lucene.queryparser.classic.QueryParser;
     41  
     import org.apache.lucene.search.IndexSearcher;
     42  
     import org.apache.lucene.search.Query;
     43  
     import org.apache.lucene.search.TopDocs;
     44  
     import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
     45  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     46  
     import org.apache.lucene.store.RAMDirectory;
     47  
     import org.owasp.dependencycheck.data.lucene.LuceneUtils;
     48  
     import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
     49  
     
     50  
     /**
     51  
      * An in memory lucene index that contains the vendor/product combinations from
     52  
      * the CPE (application) identifiers within the NVD CVE data.
     53  
      *
     54  
      * @author Jeremy Long (jeremy.long@owasp.org)
     55  
      */
     56  
     public final class CpeMemoryIndex {
     57  
     
     58  
         /**
     59  
          * singleton instance.
     60  
          */
     61  1
         private static CpeMemoryIndex instance = new CpeMemoryIndex();
     62  
     
     63  
         /**
     64  
          * private constructor for singleton.
     65  
          */
     66  1
         private CpeMemoryIndex() {
     67  1
         }
     68  
     
     69  
         /**
     70  
          * Gets the singleton instance of the CpeMemoryIndex.
     71  
          *
     72  
          * @return the instance of the CpeMemoryIndex
     73  
          */
     74  
         public static CpeMemoryIndex getInstance() {
     75  14
             return instance;
     76  
         }
     77  
         /**
     78  
          * The in memory Lucene index.
     79  
          */
     80  
         private RAMDirectory index;
     81  
         /**
     82  
          * The Lucene IndexReader.
     83  
          */
     84  
         private IndexReader indexReader;
     85  
         /**
     86  
          * The Lucene IndexSearcher.
     87  
          */
     88  
         private IndexSearcher indexSearcher;
     89  
         /**
     90  
          * The Lucene Analyzer used for Searching.
     91  
          */
     92  
         private Analyzer searchingAnalyzer;
     93  
         /**
     94  
          * The Lucene QueryParser used for Searching.
     95  
          */
     96  
         private QueryParser queryParser;
     97  
         /**
     98  
          * The search field analyzer for the product field.
     99  
          */
     100  
         private SearchFieldAnalyzer productSearchFieldAnalyzer;
     101  
         /**
     102  
          * The search field analyzer for the vendor field.
     103  
          */
     104  
         private SearchFieldAnalyzer vendorSearchFieldAnalyzer;
     105  
     
     106  
         /**
     107  
          * Creates and loads data into an in memory index.
     108  
          *
     109  
          * @param cve the data source to retrieve the cpe data
     110  
          * @throws IndexException thrown if there is an error creating the index
     111  
          */
     112  
         public void open(CveDB cve) throws IndexException {
     113  14
             if (!openState) {
     114  11
                 index = new RAMDirectory();
     115  11
                 buildIndex(cve);
     116  
                 try {
     117  11
                     indexReader = DirectoryReader.open(index);
     118  0
                 } catch (IOException ex) {
     119  0
                     throw new IndexException(ex);
     120  11
                 }
     121  11
                 indexSearcher = new IndexSearcher(indexReader);
     122  11
                 searchingAnalyzer = createSearchingAnalyzer();
     123  11
                 queryParser = new QueryParser(LuceneUtils.CURRENT_VERSION, Fields.DOCUMENT_KEY, searchingAnalyzer);
     124  11
                 openState = true;
     125  
             }
     126  14
         }
     127  
         /**
     128  
          * A flag indicating whether or not the index is open.
     129  
          */
     130  1
         private boolean openState = false;
     131  
     
     132  
         /**
     133  
          * returns whether or not the index is open.
     134  
          *
     135  
          * @return whether or not the index is open
     136  
          */
     137  
         public boolean isOpen() {
     138  0
             return openState;
     139  
         }
     140  
     
     141  
         /**
     142  
          * Creates the indexing analyzer for the CPE Index.
     143  
          *
     144  
          * @return the CPE Analyzer.
     145  
          */
     146  
         @SuppressWarnings("unchecked")
     147  
         private Analyzer createIndexingAnalyzer() {
     148  11
             final Map fieldAnalyzers = new HashMap();
     149  11
             fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
     150  11
             return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
     151  
         }
     152  
     
     153  
         /**
     154  
          * Creates an Analyzer for searching the CPE Index.
     155  
          *
     156  
          * @return the CPE Analyzer.
     157  
          */
     158  
         @SuppressWarnings("unchecked")
     159  
         private Analyzer createSearchingAnalyzer() {
     160  11
             final Map fieldAnalyzers = new HashMap();
     161  11
             fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
     162  11
             productSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
     163  11
             vendorSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
     164  11
             fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);
     165  11
             fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);
     166  
     
     167  11
             return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
     168  
         }
     169  
     
     170  
         /**
     171  
          * Saves a CPE IndexEntry into the Lucene index.
     172  
          *
     173  
          * @param vendor the vendor to index
     174  
          * @param product the product to index
     175  
          * @param indexWriter the index writer to write the entry into
     176  
          * @throws CorruptIndexException is thrown if the index is corrupt
     177  
          * @throws IOException is thrown if an IOException occurs
     178  
          */
     179  
         public void saveEntry(String vendor, String product, IndexWriter indexWriter) throws CorruptIndexException, IOException {
     180  234234
             final Document doc = new Document();
     181  234234
             final Field v = new TextField(Fields.VENDOR, vendor, Field.Store.YES);
     182  234234
             final Field p = new TextField(Fields.PRODUCT, product, Field.Store.YES);
     183  234234
             doc.add(v);
     184  234234
             doc.add(p);
     185  234234
             indexWriter.addDocument(doc);
     186  234234
         }
     187  
     
     188  
         /**
     189  
          * Closes the CPE Index.
     190  
          */
     191  
         public void close() {
     192  11
             if (searchingAnalyzer != null) {
     193  11
                 searchingAnalyzer.close();
     194  11
                 searchingAnalyzer = null;
     195  
             }
     196  11
             if (indexReader != null) {
     197  
                 try {
     198  11
                     indexReader.close();
     199  0
                 } catch (IOException ex) {
     200  0
                     Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINEST, null, ex);
     201  11
                 }
     202  11
                 indexReader = null;
     203  
             }
     204  11
             queryParser = null;
     205  11
             indexSearcher = null;
     206  11
             if (index != null) {
     207  11
                 index.close();
     208  11
                 index = null;
     209  
             }
     210  11
             openState = false;
     211  11
         }
     212  
     
     213  
         /**
     214  
          * Builds the lucene index based off of the data within the CveDB.
     215  
          *
     216  
          * @param cve the data base containing the CPE data
     217  
          * @throws IndexException thrown if there is an issue creating the index
     218  
          */
     219  
         private void buildIndex(CveDB cve) throws IndexException {
     220  11
             Analyzer analyzer = null;
     221  11
             IndexWriter indexWriter = null;
     222  
             try {
     223  11
                 analyzer = createIndexingAnalyzer();
     224  11
                 final IndexWriterConfig conf = new IndexWriterConfig(LuceneUtils.CURRENT_VERSION, analyzer);
     225  11
                 indexWriter = new IndexWriter(index, conf);
     226  11
                 final ResultSet rs = cve.getVendorProductList();
     227  11
                 if (rs == null) {
     228  0
                     throw new IndexException("No data exists");
     229  
                 }
     230  
                 try {
     231  234245
                     while (rs.next()) {
     232  234234
                         saveEntry(rs.getString(1), rs.getString(2), indexWriter);
     233  
                     }
     234  0
                 } catch (SQLException ex) {
     235  0
                     Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINE, null, ex);
     236  0
                     throw new IndexException("Error reading CPE data", ex);
     237  11
                 }
     238  0
             } catch (CorruptIndexException ex) {
     239  0
                 throw new IndexException("Unable to close an in-memory index", ex);
     240  0
             } catch (IOException ex) {
     241  0
                 throw new IndexException("Unable to close an in-memory index", ex);
     242  
             } finally {
     243  11
                 if (indexWriter != null) {
     244  
                     try {
     245  
                         try {
     246  11
                             indexWriter.commit();
     247  
                         } finally {
     248  11
                             indexWriter.close(true);
     249  11
                         }
     250  0
                     } catch (CorruptIndexException ex) {
     251  0
                         throw new IndexException("Unable to close an in-memory index", ex);
     252  0
                     } catch (IOException ex) {
     253  0
                         throw new IndexException("Unable to close an in-memory index", ex);
     254  11
                     }
     255  11
                     if (analyzer != null) {
     256  11
                         analyzer.close();
     257  
                     }
     258  
                 }
     259  
             }
     260  11
         }
     261  
     
     262  
         /**
     263  
          * Resets the searching analyzers
     264  
          */
     265  
         private void resetSearchingAnalyzer() {
     266  0
             if (productSearchFieldAnalyzer != null) {
     267  0
                 productSearchFieldAnalyzer.clear();
     268  
             }
     269  0
             if (vendorSearchFieldAnalyzer != null) {
     270  0
                 vendorSearchFieldAnalyzer.clear();
     271  
             }
     272  0
         }
     273  
     
     274  
         /**
     275  
          * Searches the index using the given search string.
     276  
          *
     277  
          * @param searchString the query text
     278  
          * @param maxQueryResults the maximum number of documents to return
     279  
          * @return the TopDocs found by the search
     280  
          * @throws ParseException thrown when the searchString is invalid
     281  
          * @throws IOException is thrown if there is an issue with the underlying
     282  
          * Index
     283  
          */
     284  
         public TopDocs search(String searchString, int maxQueryResults) throws ParseException, IOException {
     285  73
             if (searchString == null || searchString.trim().isEmpty()) {
     286  0
                 throw new ParseException("Query is null or empty");
     287  
             }
     288  73
             final Query query = queryParser.parse(searchString);
     289  73
             return indexSearcher.search(query, maxQueryResults);
     290  
         }
     291  
     
     292  
         /**
     293  
          * Searches the index using the given query.
     294  
          *
     295  
          * @param query the query used to search the index
     296  
          * @param maxQueryResults the max number of results to return
     297  
          * @return the TopDocs found be the query
     298  
          * @throws CorruptIndexException thrown if the Index is corrupt
     299  
          * @throws IOException thrown if there is an IOException
     300  
          */
     301  
         public TopDocs search(Query query, int maxQueryResults) throws CorruptIndexException, IOException {
     302  0
             resetSearchingAnalyzer();
     303  0
             return indexSearcher.search(query, maxQueryResults);
     304  
         }
     305  
     
     306  
         /**
     307  
          * Retrieves a document from the Index.
     308  
          *
     309  
          * @param documentId the id of the document to retrieve
     310  
          * @return the Document
     311  
          * @throws IOException thrown if there is an IOException
     312  
          */
     313  
         public Document getDocument(int documentId) throws IOException {
     314  745
             return indexSearcher.doc(documentId);
     315  
         }
     316  
     
     317  
         /**
     318  
          * Returns the number of CPE entries stored in the index.
     319  
          *
     320  
          * @return the number of CPE entries stored in the index
     321  
          */
     322  
         public int numDocs() {
     323  3
             if (indexReader == null) {
     324  0
                 return -1;
     325  
             }
     326  3
             return indexReader.numDocs();
     327  
         }
     328  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html new file mode 100644 index 000000000..9e64eb47d --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexException.html @@ -0,0 +1,150 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.IndexException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    IndexException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.cpe;
     20  
     
     21  
     /**
     22  
      * An exception thrown when the there is an issue using the in-memory CPE Index.
     23  
      *
     24  
      * @author Jeremy Long (jeremy.long@owasp.org)
     25  
      */
     26  
     public class IndexException extends Exception {
     27  
     
     28  
         /**
     29  
          * The serial version UID for serialization.
     30  
          */
     31  
         private static final long serialVersionUID = 1L;
     32  
     
     33  
         /**
     34  
          * Creates a new IndexException.
     35  
          */
     36  
         public IndexException() {
     37  0
             super();
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Creates a new IndexException.
     42  
          *
     43  
          * @param msg a message for the exception.
     44  
          */
     45  
         public IndexException(String msg) {
     46  0
             super(msg);
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Creates a new IndexException.
     51  
          *
     52  
          * @param ex the cause of the failure.
     53  
          */
     54  
         public IndexException(Throwable ex) {
     55  0
             super(ex);
     56  0
         }
     57  
     
     58  
         /**
     59  
          * Creates a new IndexException.
     60  
          *
     61  
          * @param msg a message for the exception.
     62  
          * @param ex the cause of the failure.
     63  
          */
     64  
         public IndexException(String msg, Throwable ex) {
     65  0
             super(msg, ex);
     66  0
         }
     67  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html new file mode 100644 index 000000000..85faad900 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.CallableDownloadTask.html @@ -0,0 +1,341 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.update.CallableDownloadTask
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CallableDownloadTask
    0%
    0/41
    0%
    0/22
    2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.data.update;
     20  
     
     21  
     import java.io.File;
     22  
     import java.net.URL;
     23  
     import java.util.concurrent.Callable;
     24  
     import java.util.logging.Level;
     25  
     import java.util.logging.Logger;
     26  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     27  
     import org.owasp.dependencycheck.utils.Downloader;
     28  
     
     29  
     /**
     30  
      * A callable object to download two files.
     31  
      *
     32  
      * @author Jeremy Long (jeremy.long@owasp.org)
     33  
      */
     34  0
     public class CallableDownloadTask implements Callable<CallableDownloadTask> {
     35  
     
     36  
         /**
     37  
          * Simple constructor for the callable download task.
     38  
          *
     39  
          * @param nvdCveInfo the nvd cve info
     40  
          * @param first the first file
     41  
          * @param second the second file
     42  
          */
     43  0
         public CallableDownloadTask(NvdCveInfo nvdCveInfo, File first, File second) {
     44  0
             this.nvdCveInfo = nvdCveInfo;
     45  0
             this.first = first;
     46  0
             this.second = second;
     47  0
         }
     48  
         /**
     49  
          * The NVD CVE Meta Data.
     50  
          */
     51  
         private NvdCveInfo nvdCveInfo;
     52  
     
     53  
         /**
     54  
          * Get the value of nvdCveInfo.
     55  
          *
     56  
          * @return the value of nvdCveInfo
     57  
          */
     58  
         public NvdCveInfo getNvdCveInfo() {
     59  0
             return nvdCveInfo;
     60  
         }
     61  
     
     62  
         /**
     63  
          * Set the value of nvdCveInfo.
     64  
          *
     65  
          * @param nvdCveInfo new value of nvdCveInfo
     66  
          */
     67  
         public void setNvdCveInfo(NvdCveInfo nvdCveInfo) {
     68  0
             this.nvdCveInfo = nvdCveInfo;
     69  0
         }
     70  
         /**
     71  
          * a file.
     72  
          */
     73  
         private File first;
     74  
     
     75  
         /**
     76  
          * Get the value of first.
     77  
          *
     78  
          * @return the value of first
     79  
          */
     80  
         public File getFirst() {
     81  0
             return first;
     82  
         }
     83  
     
     84  
         /**
     85  
          * Set the value of first.
     86  
          *
     87  
          * @param first new value of first
     88  
          */
     89  
         public void setFirst(File first) {
     90  0
             this.first = first;
     91  0
         }
     92  
         /**
     93  
          * a file.
     94  
          */
     95  
         private File second;
     96  
     
     97  
         /**
     98  
          * Get the value of second.
     99  
          *
     100  
          * @return the value of second
     101  
          */
     102  
         public File getSecond() {
     103  0
             return second;
     104  
         }
     105  
     
     106  
         /**
     107  
          * Set the value of second.
     108  
          *
     109  
          * @param second new value of second
     110  
          */
     111  
         public void setSecond(File second) {
     112  0
             this.second = second;
     113  0
         }
     114  
         /**
     115  
          * A placeholder for an exception.
     116  
          */
     117  0
         private Exception exception = null;
     118  
     
     119  
         /**
     120  
          * Get the value of exception.
     121  
          *
     122  
          * @return the value of exception
     123  
          */
     124  
         public Exception getException() {
     125  0
             return exception;
     126  
         }
     127  
     
     128  
         /**
     129  
          * returns whether or not an exception occurred during download.
     130  
          *
     131  
          * @return whether or not an exception occurred during download
     132  
          */
     133  
         public boolean hasException() {
     134  0
             return exception != null;
     135  
         }
     136  
     
     137  
         @Override
     138  
         public CallableDownloadTask call() throws Exception {
     139  
             try {
     140  0
                 final URL url1 = new URL(nvdCveInfo.getUrl());
     141  0
                 final URL url2 = new URL(nvdCveInfo.getOldSchemaVersionUrl());
     142  0
                 String msg = String.format("Download Started for NVD CVE - %s", nvdCveInfo.getId());
     143  0
                 Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
     144  0
                 Downloader.fetchFile(url1, first);
     145  0
                 Downloader.fetchFile(url2, second);
     146  0
                 msg = String.format("Download Complete for NVD CVE - %s", nvdCveInfo.getId());
     147  0
                 Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
     148  0
             } catch (DownloadFailedException ex) {
     149  0
                 this.exception = ex;
     150  0
             }
     151  0
             return this;
     152  
         }
     153  
     
     154  
         /**
     155  
          * Attempts to delete the files that were downloaded.
     156  
          */
     157  
         public void cleanup() {
     158  0
             boolean deleted = false;
     159  
             try {
     160  0
                 if (first != null && first.exists()) {
     161  0
                     deleted = first.delete();
     162  
                 }
     163  
             } finally {
     164  0
                 if (first != null && (first.exists() || !deleted)) {
     165  0
                     first.deleteOnExit();
     166  
                 }
     167  
             }
     168  
             try {
     169  0
                 deleted = false;
     170  0
                 if (second != null && second.exists()) {
     171  0
                     deleted = second.delete();
     172  
                 }
     173  
             } finally {
     174  0
                 if (second != null && (second.exists() || !deleted)) {
     175  0
                     second.deleteOnExit();
     176  
                 }
     177  
             }
     178  0
         }
     179  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html new file mode 100644 index 000000000..1501b2be6 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.PropertyType.html @@ -0,0 +1,356 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.PropertyType
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    PropertyType
    70%
    28/40
    46%
    13/28
    3.1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.regex.Pattern;
     22  
     
     23  
     /**
     24  
      * A simple PropertyType used to represent a string value that could be used as
     25  
      * a regular expression or could be case insensitive. The equals method has been
     26  
      * over-ridden so that the object will correctly compare to strings.
     27  
      *
     28  
      * @author Jeremy Long (jeremy.long@owasp.org)
     29  
      */
     30  22
     public class PropertyType {
     31  
     
     32  
         //<editor-fold defaultstate="collapsed" desc="properties">
     33  
         /**
     34  
          * The value.
     35  
          */
     36  
         private String value;
     37  
     
     38  
         /**
     39  
          * Gets the value of the value property.
     40  
          *
     41  
          * @return the value of the value property
     42  
          *
     43  
          */
     44  
         public String getValue() {
     45  15
             return value;
     46  
         }
     47  
     
     48  
         /**
     49  
          * Sets the value of the value property.
     50  
          *
     51  
          * @param value the value of the value property
     52  
          */
     53  
         public void setValue(String value) {
     54  29
             this.value = value;
     55  29
         }
     56  
         /**
     57  
          * Whether or not the expression is a regex.
     58  
          */
     59  22
         private boolean regex = false;
     60  
     
     61  
         /**
     62  
          * Returns whether or not the value is a regex.
     63  
          *
     64  
          * @return true if the value is a regex, otherwise false
     65  
          *
     66  
          */
     67  
         public boolean isRegex() {
     68  17
             return regex;
     69  
         }
     70  
     
     71  
         /**
     72  
          * Sets whether the value property is a regex.
     73  
          *
     74  
          * @param value true if the value is a regex, otherwise false
     75  
          *
     76  
          */
     77  
         public void setRegex(boolean value) {
     78  12
             this.regex = value;
     79  12
         }
     80  
         /**
     81  
          * Indicates case sensitivity.
     82  
          */
     83  22
         private boolean caseSensitive = false;
     84  
     
     85  
         /**
     86  
          * Gets the value of the caseSensitive property.
     87  
          *
     88  
          * @return true if the value is case sensitive
     89  
          *
     90  
          */
     91  
         public boolean isCaseSensitive() {
     92  4
             return caseSensitive;
     93  
         }
     94  
     
     95  
         /**
     96  
          * Sets the value of the caseSensitive property.
     97  
          *
     98  
          * @param value whether the value is case sensitive
     99  
          *
     100  
          */
     101  
         public void setCaseSensitive(boolean value) {
     102  13
             this.caseSensitive = value;
     103  13
         }
     104  
         //</editor-fold>
     105  
     
     106  
         /**
     107  
          * Uses the object's properties to determine if the supplied string matches
     108  
          * the value of this property.
     109  
          *
     110  
          * @param text the String to validate
     111  
          * @return whether the text supplied is matched by the value of the property
     112  
          */
     113  
         public boolean matches(String text) {
     114  22
             if (text == null) {
     115  0
                 return false;
     116  
             }
     117  22
             if (this.regex) {
     118  
                 Pattern rx;
     119  7
                 if (this.caseSensitive) {
     120  2
                     rx = Pattern.compile(this.value);
     121  
                 } else {
     122  5
                     rx = Pattern.compile(this.value, Pattern.CASE_INSENSITIVE);
     123  
                 }
     124  7
                 return rx.matcher(text).matches();
     125  
             } else {
     126  15
                 if (this.caseSensitive) {
     127  2
                     return value.equals(text);
     128  
                 } else {
     129  13
                     return value.equalsIgnoreCase(text);
     130  
                 }
     131  
             }
     132  
         }
     133  
     
     134  
         //<editor-fold defaultstate="collapsed" desc="standard implmentations of hashCode, equals, and toString">
     135  
         /**
     136  
          * Default implementation of hashCode.
     137  
          *
     138  
          * @return the hash code
     139  
          */
     140  
         @Override
     141  
         public int hashCode() {
     142  0
             int hash = 3;
     143  0
             hash = 59 * hash + (this.value != null ? this.value.hashCode() : 0);
     144  0
             hash = 59 * hash + (this.regex ? 1 : 0);
     145  0
             hash = 59 * hash + (this.caseSensitive ? 1 : 0);
     146  0
             return hash;
     147  
         }
     148  
     
     149  
         /**
     150  
          * Default implementation of equals.
     151  
          *
     152  
          * @param obj the object to compare
     153  
          * @return whether the objects are equivalent
     154  
          */
     155  
         @Override
     156  
         public boolean equals(Object obj) {
     157  1
             if (obj == null) {
     158  0
                 return false;
     159  
             }
     160  1
             if (getClass() != obj.getClass()) {
     161  0
                 return false;
     162  
             }
     163  1
             final PropertyType other = (PropertyType) obj;
     164  1
             if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
     165  0
                 return false;
     166  
             }
     167  1
             if (this.regex != other.regex) {
     168  0
                 return false;
     169  
             }
     170  1
             if (this.caseSensitive != other.caseSensitive) {
     171  0
                 return false;
     172  
             }
     173  1
             return true;
     174  
         }
     175  
     
     176  
         /**
     177  
          * Default implementation of toString().
     178  
          *
     179  
          * @return the string representation of the object
     180  
          */
     181  
         @Override
     182  
         public String toString() {
     183  0
             return "PropertyType{" + "value=" + value + ", regex=" + regex + ", caseSensitive=" + caseSensitive + '}';
     184  
         }
     185  
         //</editor-fold>
     186  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html new file mode 100644 index 000000000..3c8edbf8a --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionErrorHandler.html @@ -0,0 +1,194 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionErrorHandler
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionErrorHandler
    6%
    1/16
    0%
    0/8
    2.5
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.logging.Level;
     22  
     import java.util.logging.Logger;
     23  
     import org.xml.sax.ErrorHandler;
     24  
     import org.xml.sax.SAXException;
     25  
     import org.xml.sax.SAXParseException;
     26  
     
     27  
     /**
     28  
      * An XML parsing error handler.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  2
     public class SuppressionErrorHandler implements ErrorHandler {
     33  
     
     34  
         /**
     35  
          * Builds a prettier exception message.
     36  
          *
     37  
          * @param ex the SAXParseException
     38  
          * @return an easier to read exception message
     39  
          */
     40  
         private String getPrettyParseExceptionInfo(SAXParseException ex) {
     41  
     
     42  0
             final StringBuffer sb = new StringBuffer();
     43  
     
     44  0
             if (ex.getSystemId() != null) {
     45  0
                 sb.append("systemId=").append(ex.getSystemId()).append(", ");
     46  
             }
     47  0
             if (ex.getPublicId() != null) {
     48  0
                 sb.append("publicId=").append(ex.getPublicId()).append(", ");
     49  
             }
     50  0
             if (ex.getLineNumber() > 0) {
     51  0
                 sb.append("Line=").append(ex.getLineNumber());
     52  
             }
     53  0
             if (ex.getColumnNumber() > 0) {
     54  0
                 sb.append(", Column=").append(ex.getColumnNumber());
     55  
             }
     56  0
             sb.append(": ").append(ex.getMessage());
     57  
     
     58  0
             return sb.toString();
     59  
         }
     60  
     
     61  
         /**
     62  
          * Logs warnings.
     63  
          *
     64  
          * @param ex the warning to log
     65  
          * @throws SAXException is never thrown
     66  
          */
     67  
         @Override
     68  
         public void warning(SAXParseException ex) throws SAXException {
     69  0
             Logger.getLogger(SuppressionErrorHandler.class.getName()).log(Level.FINE, null, ex);
     70  0
         }
     71  
     
     72  
         /**
     73  
          * Handles errors.
     74  
          *
     75  
          * @param ex the error to handle
     76  
          * @throws SAXException is always thrown
     77  
          */
     78  
         @Override
     79  
         public void error(SAXParseException ex) throws SAXException {
     80  0
             throw new SAXException(getPrettyParseExceptionInfo(ex));
     81  
         }
     82  
     
     83  
         /**
     84  
          * Handles fatal exceptions.
     85  
          *
     86  
          * @param ex a fatal exception
     87  
          * @throws SAXException is always
     88  
          */
     89  
         @Override
     90  
         public void fatalError(SAXParseException ex) throws SAXException {
     91  0
             throw new SAXException(getPrettyParseExceptionInfo(ex));
     92  
         }
     93  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html new file mode 100644 index 000000000..38cc485e1 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionHandler.html @@ -0,0 +1,331 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionHandler
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionHandler
    97%
    40/41
    84%
    22/26
    3.6
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.List;
     23  
     import org.xml.sax.Attributes;
     24  
     import org.xml.sax.SAXException;
     25  
     import org.xml.sax.helpers.DefaultHandler;
     26  
     
     27  
     /**
     28  
      * A handler to load suppression rules.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  2
     public class SuppressionHandler extends DefaultHandler {
     33  
     
     34  
         /**
     35  
          * The suppress node, indicates the start of a new rule.
     36  
          */
     37  
         public static final String SUPPRESS = "suppress";
     38  
         /**
     39  
          * The file path element name.
     40  
          */
     41  
         public static final String FILE_PATH = "filePath";
     42  
         /**
     43  
          * The sha1 hash element name.
     44  
          */
     45  
         public static final String SHA1 = "sha1";
     46  
         /**
     47  
          * The CVE element name.
     48  
          */
     49  
         public static final String CVE = "cve";
     50  
         /**
     51  
          * The CPE element name.
     52  
          */
     53  
         public static final String CPE = "cpe";
     54  
         /**
     55  
          * The CWE element name.
     56  
          */
     57  
         public static final String CWE = "cwe";
     58  
         /**
     59  
          * The cvssBelow element name.
     60  
          */
     61  
         public static final String CVSS_BELOW = "cvssBelow";
     62  
         /**
     63  
          * A list of suppression rules.
     64  
          */
     65  2
         private List<SuppressionRule> supressionRules = new ArrayList<SuppressionRule>();
     66  
     
     67  
         /**
     68  
          * Get the value of supressionRules.
     69  
          *
     70  
          * @return the value of supressionRules
     71  
          */
     72  
         public List<SuppressionRule> getSupressionRules() {
     73  2
             return supressionRules;
     74  
         }
     75  
         /**
     76  
          * The current rule being read.
     77  
          */
     78  
         private SuppressionRule rule;
     79  
         /**
     80  
          * The attributes of the node being read.
     81  
          */
     82  
         private Attributes currentAttributes;
     83  
         /**
     84  
          * The current node text being extracted from the element.
     85  
          */
     86  
         private StringBuffer currentText;
     87  
     
     88  
         /**
     89  
          * Handles the start element event.
     90  
          *
     91  
          * @param uri the uri of the element being processed
     92  
          * @param localName the local name of the element being processed
     93  
          * @param qName the qName of the element being processed
     94  
          * @param attributes the attributes of the element being processed
     95  
          * @throws SAXException thrown if there is an exception processing
     96  
          */
     97  
         @Override
     98  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     99  40
             currentAttributes = null;
     100  40
             currentText = new StringBuffer();
     101  
     
     102  40
             if (SUPPRESS.equals(qName)) {
     103  10
                 rule = new SuppressionRule();
     104  30
             } else if (FILE_PATH.equals(qName)) {
     105  6
                 currentAttributes = attributes;
     106  
             }
     107  40
         }
     108  
     
     109  
         /**
     110  
          * Handles the end element event.
     111  
          *
     112  
          * @param uri the uri of the element
     113  
          * @param localName the local name of the element
     114  
          * @param qName the qName of the element
     115  
          * @throws SAXException thrown if there is an exception processing
     116  
          */
     117  
         @Override
     118  
         public void endElement(String uri, String localName, String qName) throws SAXException {
     119  40
             if (SUPPRESS.equals(qName)) {
     120  10
                 supressionRules.add(rule);
     121  10
                 rule = null;
     122  30
             } else if (FILE_PATH.equals(qName)) {
     123  6
                 final PropertyType pt = processPropertyType();
     124  6
                 rule.setFilePath(pt);
     125  6
             } else if (SHA1.equals(qName)) {
     126  2
                 rule.setSha1(currentText.toString());
     127  22
             } else if (CPE.equals(qName)) {
     128  4
                 final PropertyType pt = processPropertyType();
     129  4
                 rule.addCpe(pt);
     130  4
             } else if (CWE.equals(qName)) {
     131  0
                 rule.addCwe(currentText.toString());
     132  18
             } else if (CVE.equals(qName)) {
     133  4
                 rule.addCve(currentText.toString());
     134  14
             } else if (CVSS_BELOW.equals(qName)) {
     135  2
                 final float cvss = Float.parseFloat(currentText.toString());
     136  2
                 rule.addCvssBelow(cvss);
     137  
             }
     138  40
         }
     139  
     
     140  
         /**
     141  
          * Collects the body text of the node being processed.
     142  
          *
     143  
          * @param ch the char array of text
     144  
          * @param start the start position to copy text from in the char array
     145  
          * @param length the number of characters to copy from the char array
     146  
          * @throws SAXException thrown if there is a parsing exception
     147  
          */
     148  
         @Override
     149  
         public void characters(char[] ch, int start, int length) throws SAXException {
     150  88
             currentText.append(ch, start, length);
     151  88
         }
     152  
     
     153  
         /**
     154  
          * Processes field members that have been collected during the characters
     155  
          * and startElement method to construct a PropertyType object.
     156  
          *
     157  
          * @return a PropertyType object
     158  
          */
     159  
         private PropertyType processPropertyType() {
     160  10
             final PropertyType pt = new PropertyType();
     161  10
             pt.setValue(currentText.toString());
     162  10
             if (currentAttributes != null && currentAttributes.getLength() > 0) {
     163  6
                 final String regex = currentAttributes.getValue("regex");
     164  6
                 if (regex != null) {
     165  6
                     pt.setRegex(Boolean.parseBoolean(regex));
     166  
                 }
     167  6
                 final String caseSensitive = currentAttributes.getValue("caseSensitive");
     168  6
                 if (regex != null) {
     169  6
                     pt.setCaseSensitive(Boolean.parseBoolean(caseSensitive));
     170  
                 }
     171  
             }
     172  10
             return pt;
     173  
         }
     174  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html new file mode 100644 index 000000000..096cd8bc9 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParseException.html @@ -0,0 +1,154 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionParseException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionParseException
    0%
    0/8
    N/A
    1
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.io.IOException;
     22  
     
     23  
     /**
     24  
      * An exception used when parsing a suppression rule file fails.
     25  
      *
     26  
      * @author Jeremy Long (jeremy.long@owasp.org)
     27  
      */
     28  
     public class SuppressionParseException extends IOException {
     29  
     
     30  
         /**
     31  
          * The serial version UID.
     32  
          */
     33  
         private static final long serialVersionUID = 1L;
     34  
     
     35  
         /**
     36  
          * Creates a new SuppressionParseException.
     37  
          */
     38  
         public SuppressionParseException() {
     39  0
             super();
     40  0
         }
     41  
     
     42  
         /**
     43  
          * Creates a new SuppressionParseException.
     44  
          *
     45  
          * @param msg a message for the exception.
     46  
          */
     47  
         public SuppressionParseException(String msg) {
     48  0
             super(msg);
     49  0
         }
     50  
     
     51  
         /**
     52  
          * Creates a new SuppressionParseException.
     53  
          *
     54  
          * @param ex the cause of the download failure.
     55  
          */
     56  
         public SuppressionParseException(Throwable ex) {
     57  0
             super(ex);
     58  0
         }
     59  
     
     60  
         /**
     61  
          * Creates a new SuppressionParseException.
     62  
          *
     63  
          * @param msg a message for the exception.
     64  
          * @param ex the cause of the download failure.
     65  
          */
     66  
         public SuppressionParseException(String msg, Throwable ex) {
     67  0
             super(msg, ex);
     68  0
         }
     69  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html new file mode 100644 index 000000000..1163128a6 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionParser.html @@ -0,0 +1,209 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionParser
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionParser
    58%
    17/29
    N/A
    10
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileInputStream;
     23  
     import java.io.FileNotFoundException;
     24  
     import java.io.IOException;
     25  
     import java.io.InputStream;
     26  
     import java.io.InputStreamReader;
     27  
     import java.io.Reader;
     28  
     import java.util.List;
     29  
     import java.util.logging.Level;
     30  
     import java.util.logging.Logger;
     31  
     import javax.xml.parsers.ParserConfigurationException;
     32  
     import javax.xml.parsers.SAXParser;
     33  
     import javax.xml.parsers.SAXParserFactory;
     34  
     import org.xml.sax.InputSource;
     35  
     import org.xml.sax.SAXException;
     36  
     import org.xml.sax.XMLReader;
     37  
     
     38  
     /**
     39  
      * A simple validating parser for XML Suppression Rules.
     40  
      *
     41  
      * @author Jeremy Long (jeremy.long@owasp.org)
     42  
      */
     43  1
     public class SuppressionParser {
     44  
     
     45  
         /**
     46  
          * JAXP Schema Language. Source:
     47  
          * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
     48  
          */
     49  
         public static final String JAXP_SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage";
     50  
         /**
     51  
          * W3C XML Schema. Source:
     52  
          * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
     53  
          */
     54  
         public static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema";
     55  
         /**
     56  
          * JAXP Schema Source. Source:
     57  
          * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
     58  
          */
     59  
         public static final String JAXP_SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource";
     60  
     
     61  
         /**
     62  
          * Parses the given xml file and returns a list of the suppression rules
     63  
          * contained.
     64  
          *
     65  
          * @param file an xml file containing suppression rules
     66  
          * @return a list of suppression rules
     67  
          * @throws SuppressionParseException thrown if the xml file cannot be parsed
     68  
          */
     69  
         public List<SuppressionRule> parseSuppressionRules(File file) throws SuppressionParseException {
     70  
             try {
     71  1
                 final InputStream schemaStream = this.getClass().getClassLoader().getResourceAsStream("schema/suppression.xsd");
     72  1
                 final SuppressionHandler handler = new SuppressionHandler();
     73  
     
     74  1
                 final SAXParserFactory factory = SAXParserFactory.newInstance();
     75  1
                 factory.setNamespaceAware(true);
     76  1
                 factory.setValidating(true);
     77  1
                 final SAXParser saxParser = factory.newSAXParser();
     78  1
                 saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_LANGUAGE, SuppressionParser.W3C_XML_SCHEMA);
     79  1
                 saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_SOURCE, new InputSource(schemaStream));
     80  1
                 final XMLReader xmlReader = saxParser.getXMLReader();
     81  1
                 xmlReader.setErrorHandler(new SuppressionErrorHandler());
     82  1
                 xmlReader.setContentHandler(handler);
     83  
     
     84  1
                 final InputStream inputStream = new FileInputStream(file);
     85  1
                 final Reader reader = new InputStreamReader(inputStream, "UTF-8");
     86  1
                 final InputSource in = new InputSource(reader);
     87  
                 //in.setEncoding("UTF-8");
     88  
     
     89  1
                 xmlReader.parse(in);
     90  
     
     91  
     
     92  1
                 return handler.getSupressionRules();
     93  0
             } catch (ParserConfigurationException ex) {
     94  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     95  0
                 throw new SuppressionParseException(ex);
     96  0
             } catch (SAXException ex) {
     97  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     98  0
                 throw new SuppressionParseException(ex);
     99  0
             } catch (FileNotFoundException ex) {
     100  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     101  0
                 throw new SuppressionParseException(ex);
     102  0
             } catch (IOException ex) {
     103  0
                 Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
     104  0
                 throw new SuppressionParseException(ex);
     105  
             }
     106  
         }
     107  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html new file mode 100644 index 000000000..eb0137e0a --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.suppression.SuppressionRule.html @@ -0,0 +1,657 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.suppression.SuppressionRule
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    SuppressionRule
    95%
    93/97
    90%
    63/70
    2.583
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-core.
     3  
      *
     4  
      * Dependency-check-core is free software: you can redistribute it and/or modify it
     5  
      * under the terms of the GNU General Public License as published by the Free
     6  
      * Software Foundation, either version 3 of the License, or (at your option) any
     7  
      * later version.
     8  
      *
     9  
      * Dependency-check-core is distributed in the hope that it will be useful, but
     10  
      * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     11  
      * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
     12  
      * details.
     13  
      *
     14  
      * You should have received a copy of the GNU General Public License along with
     15  
      * dependency-check-core. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.suppression;
     20  
     
     21  
     import java.util.ArrayList;
     22  
     import java.util.Iterator;
     23  
     import java.util.List;
     24  
     import org.owasp.dependencycheck.dependency.Dependency;
     25  
     import org.owasp.dependencycheck.dependency.Identifier;
     26  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     27  
     
     28  
     /**
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  23
     public class SuppressionRule {
     33  
     
     34  
         /**
     35  
          * The file path for the suppression.
     36  
          */
     37  
         private PropertyType filePath;
     38  
     
     39  
         /**
     40  
          * Get the value of filePath.
     41  
          *
     42  
          * @return the value of filePath
     43  
          */
     44  
         public PropertyType getFilePath() {
     45  1
             return filePath;
     46  
         }
     47  
     
     48  
         /**
     49  
          * Set the value of filePath.
     50  
          *
     51  
          * @param filePath new value of filePath
     52  
          */
     53  
         public void setFilePath(PropertyType filePath) {
     54  8
             this.filePath = filePath;
     55  8
         }
     56  
         /**
     57  
          * The sha1 hash.
     58  
          */
     59  
         private String sha1;
     60  
     
     61  
         /**
     62  
          * Get the value of sha1.
     63  
          *
     64  
          * @return the value of sha1
     65  
          */
     66  
         public String getSha1() {
     67  1
             return sha1;
     68  
         }
     69  
     
     70  
         /**
     71  
          * Set the value of sha1.
     72  
          *
     73  
          * @param sha1 new value of sha1
     74  
          */
     75  
         public void setSha1(String sha1) {
     76  4
             this.sha1 = sha1;
     77  4
         }
     78  
         /**
     79  
          * A list of CPEs to suppression
     80  
          */
     81  23
         private List<PropertyType> cpe = new ArrayList<PropertyType>();
     82  
     
     83  
         /**
     84  
          * Get the value of cpe.
     85  
          *
     86  
          * @return the value of cpe
     87  
          */
     88  
         public List<PropertyType> getCpe() {
     89  1
             return cpe;
     90  
         }
     91  
     
     92  
         /**
     93  
          * Set the value of cpe.
     94  
          *
     95  
          * @param cpe new value of cpe
     96  
          */
     97  
         public void setCpe(List<PropertyType> cpe) {
     98  1
             this.cpe = cpe;
     99  1
         }
     100  
     
     101  
         /**
     102  
          * Adds the cpe to the cpe list.
     103  
          *
     104  
          * @param cpe the cpe to add
     105  
          */
     106  
         public void addCpe(PropertyType cpe) {
     107  8
             this.cpe.add(cpe);
     108  8
         }
     109  
     
     110  
         /**
     111  
          * Returns whether or not this suppression rule as CPE entries.
     112  
          *
     113  
          * @return whether or not this suppression rule as CPE entries
     114  
          */
     115  
         public boolean hasCpe() {
     116  10
             return cpe.size() > 0;
     117  
         }
     118  
         /**
     119  
          * The list of cvssBelow scores.
     120  
          */
     121  23
         private List<Float> cvssBelow = new ArrayList<Float>();
     122  
     
     123  
         /**
     124  
          * Get the value of cvssBelow.
     125  
          *
     126  
          * @return the value of cvssBelow
     127  
          */
     128  
         public List<Float> getCvssBelow() {
     129  1
             return cvssBelow;
     130  
         }
     131  
     
     132  
         /**
     133  
          * Set the value of cvssBelow.
     134  
          *
     135  
          * @param cvssBelow new value of cvssBelow
     136  
          */
     137  
         public void setCvssBelow(List<Float> cvssBelow) {
     138  1
             this.cvssBelow = cvssBelow;
     139  1
         }
     140  
     
     141  
         /**
     142  
          * Adds the cvss to the cvssBelow list.
     143  
          *
     144  
          * @param cvss the cvss to add
     145  
          */
     146  
         public void addCvssBelow(Float cvss) {
     147  5
             this.cvssBelow.add(cvss);
     148  5
         }
     149  
     
     150  
         /**
     151  
          * Returns whether or not this suppression rule has cvss suppressions.
     152  
          *
     153  
          * @return whether or not this suppression rule has cvss suppressions
     154  
          */
     155  
         public boolean hasCvssBelow() {
     156  7
             return cvssBelow.size() > 0;
     157  
         }
     158  
         /**
     159  
          * The list of cwe entries to suppress.
     160  
          */
     161  23
         private List<String> cwe = new ArrayList<String>();
     162  
     
     163  
         /**
     164  
          * Get the value of cwe.
     165  
          *
     166  
          * @return the value of cwe
     167  
          */
     168  
         public List<String> getCwe() {
     169  1
             return cwe;
     170  
         }
     171  
     
     172  
         /**
     173  
          * Set the value of cwe.
     174  
          *
     175  
          * @param cwe new value of cwe
     176  
          */
     177  
         public void setCwe(List<String> cwe) {
     178  1
             this.cwe = cwe;
     179  1
         }
     180  
     
     181  
         /**
     182  
          * Adds the cwe to the cwe list.
     183  
          *
     184  
          * @param cwe the cwe to add
     185  
          */
     186  
         public void addCwe(String cwe) {
     187  2
             this.cwe.add(cwe);
     188  2
         }
     189  
     
     190  
         /**
     191  
          * Returns whether this suppression rule has CWE entries.
     192  
          *
     193  
          * @return whether this suppression rule has CWE entries
     194  
          */
     195  
         public boolean hasCwe() {
     196  8
             return cwe.size() > 0;
     197  
         }
     198  
         /**
     199  
          * The list of cve entries to suppress.
     200  
          */
     201  23
         private List<String> cve = new ArrayList<String>();
     202  
     
     203  
         /**
     204  
          * Get the value of cve.
     205  
          *
     206  
          * @return the value of cve
     207  
          */
     208  
         public List<String> getCve() {
     209  1
             return cve;
     210  
         }
     211  
     
     212  
         /**
     213  
          * Set the value of cve.
     214  
          *
     215  
          * @param cve new value of cve
     216  
          */
     217  
         public void setCve(List<String> cve) {
     218  1
             this.cve = cve;
     219  1
         }
     220  
     
     221  
         /**
     222  
          * Adds the cve to the cve list.
     223  
          *
     224  
          * @param cve the cve to add
     225  
          */
     226  
         public void addCve(String cve) {
     227  7
             this.cve.add(cve);
     228  7
         }
     229  
     
     230  
         /**
     231  
          * Returns whether this suppression rule has CVE entries.
     232  
          *
     233  
          * @return whether this suppression rule has CVE entries
     234  
          */
     235  
         public boolean hasCve() {
     236  10
             return cve.size() > 0;
     237  
         }
     238  
     
     239  
         /**
     240  
          * Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS
     241  
          * scores should be suppressed. If any should be, they are removed from the
     242  
          * dependency.
     243  
          *
     244  
          * @param dependency a project dependency to analyze
     245  
          */
     246  
         public void process(Dependency dependency) {
     247  9
             if (filePath != null && !filePath.matches(dependency.getFilePath())) {
     248  0
                 return;
     249  
             }
     250  9
             if (sha1 != null && !sha1.equalsIgnoreCase(dependency.getSha1sum())) {
     251  1
                 return;
     252  
             }
     253  8
             if (this.hasCpe()) {
     254  3
                 final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
     255  8
                 while (itr.hasNext()) {
     256  5
                     final Identifier i = itr.next();
     257  5
                     for (PropertyType c : this.cpe) {
     258  9
                         if (cpeMatches(c, i)) {
     259  4
                             itr.remove();
     260  4
                             break;
     261  
                         }
     262  
                     }
     263  5
                 }
     264  
             }
     265  8
             if (hasCve() || hasCwe() || hasCvssBelow()) {
     266  5
                 final Iterator<Vulnerability> itr = dependency.getVulnerabilities().iterator();
     267  5
                 boolean remove = false;
     268  10
                 while (!remove && itr.hasNext()) {
     269  5
                     final Vulnerability v = itr.next();
     270  5
                     for (String entry : this.cve) {
     271  3
                         if (entry.equalsIgnoreCase(v.getName())) {
     272  1
                             remove = true;
     273  1
                             break;
     274  
                         }
     275  
                     }
     276  5
                     if (!remove) {
     277  4
                         for (String entry : this.cwe) {
     278  1
                             if (v.getCwe() != null) {
     279  1
                                 final String toMatch = String.format("CWE-%s ", entry);
     280  1
                                 final String toTest = v.getCwe().substring(0, toMatch.length()).toUpperCase();
     281  1
                                 if (toTest.equals(toMatch)) {
     282  1
                                     remove = true;
     283  1
                                     break;
     284  
                                 }
     285  0
                             }
     286  
                         }
     287  
                     }
     288  5
                     if (!remove) {
     289  3
                         for (float cvss : this.cvssBelow) {
     290  3
                             if (v.getCvssScore() < cvss) {
     291  1
                                 remove = true;
     292  1
                                 break;
     293  
                             }
     294  
                         }
     295  
                     }
     296  5
                     if (remove) {
     297  3
                         itr.remove();
     298  
                     }
     299  5
                 }
     300  
             }
     301  8
         }
     302  
     
     303  
         /**
     304  
          * Identifies if the cpe specified by the cpe suppression rule does not
     305  
          * specify a version.
     306  
          *
     307  
          * @param c a suppression rule identifier
     308  
          * @return true if the property type does not specify a version; otherwise
     309  
          * false
     310  
          */
     311  
         boolean cpeHasNoVersion(PropertyType c) {
     312  14
             if (c.isRegex()) {
     313  2
                 return false;
     314  
             } // cpe:/a:jboss:jboss:1.0.0:
     315  12
             if (countCharacter(c.getValue(), ':') == 3) {
     316  3
                 return true;
     317  
             }
     318  9
             return false;
     319  
         }
     320  
     
     321  
         /**
     322  
          * Counts the number of occurrences of the character found within the
     323  
          * string.
     324  
          *
     325  
          * @param str the string to check
     326  
          * @param c the character to count
     327  
          * @return the number of times the character is found in the string
     328  
          */
     329  
         int countCharacter(String str, char c) {
     330  15
             int count = 0;
     331  15
             int pos = str.indexOf(c) + 1;
     332  66
             while (pos > 0) {
     333  51
                 count += 1;
     334  51
                 pos = str.indexOf(c, pos) + 1;
     335  
             }
     336  15
             return count;
     337  
         }
     338  
     
     339  
         /**
     340  
          * Determines if the cpeEntry specified as a PropertyType matches the given
     341  
          * Identifier.
     342  
          *
     343  
          * @param cpeEntry a suppression rule entry
     344  
          * @param identifier a CPE identifier to check
     345  
          * @return true if the entry matches; otherwise false
     346  
          */
     347  
         boolean cpeMatches(PropertyType cpeEntry, Identifier identifier) {
     348  16
             if (cpeEntry.matches(identifier.getValue())) {
     349  5
                 return true;
     350  11
             } else if (cpeHasNoVersion(cpeEntry)) {
     351  2
                 if (cpeEntry.isCaseSensitive()) {
     352  0
                     if (identifier.getValue().startsWith(cpeEntry.getValue())) {
     353  0
                         return true;
     354  
                     }
     355  
                 } else {
     356  2
                     final String id = identifier.getValue().toLowerCase();
     357  2
                     final String check = cpeEntry.getValue().toLowerCase();
     358  2
                     if (id.startsWith(check)) {
     359  2
                         return true;
     360  
                     }
     361  
                 }
     362  
             }
     363  9
             return false;
     364  
         }
     365  
     }
    + + + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html new file mode 100644 index 000000000..a7ea0e323 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/PropertyTypeTest.html @@ -0,0 +1,122 @@ + + + + +PropertyTypeTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import org.junit.After;
    +22  import org.junit.AfterClass;
    +23  import org.junit.Before;
    +24  import org.junit.BeforeClass;
    +25  import org.junit.Test;
    +26  import static org.junit.Assert.*;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class PropertyTypeTest {
    +33  
    +34      public PropertyTypeTest() {
    +35      }
    +36  
    +37      @BeforeClass
    +38      public static void setUpClass() {
    +39      }
    +40  
    +41      @AfterClass
    +42      public static void tearDownClass() {
    +43      }
    +44  
    +45      @Before
    +46      public void setUp() {
    +47      }
    +48  
    +49      @After
    +50      public void tearDown() {
    +51      }
    +52  
    +53      /**
    +54       * Test of set and getValue method, of class PropertyType.
    +55       */
    +56      @Test
    +57      public void testSetGetValue() {
    +58  
    +59          PropertyType instance = new PropertyType();
    +60          String expResult = "test";
    +61          instance.setValue(expResult);
    +62          String result = instance.getValue();
    +63          assertEquals(expResult, result);
    +64      }
    +65  
    +66      /**
    +67       * Test of isRegex method, of class PropertyType.
    +68       */
    +69      @Test
    +70      public void testIsRegex() {
    +71          PropertyType instance = new PropertyType();
    +72          boolean result = instance.isRegex();
    +73          assertFalse(instance.isRegex());
    +74          instance.setRegex(true);
    +75          assertTrue(instance.isRegex());
    +76      }
    +77  
    +78      /**
    +79       * Test of isCaseSensitive method, of class PropertyType.
    +80       */
    +81      @Test
    +82      public void testIsCaseSensitive() {
    +83          PropertyType instance = new PropertyType();
    +84          assertFalse(instance.isCaseSensitive());
    +85          instance.setCaseSensitive(true);
    +86          assertTrue(instance.isCaseSensitive());
    +87      }
    +88  
    +89      /**
    +90       * Test of matches method, of class PropertyType.
    +91       */
    +92      @Test
    +93      public void testMatches() {
    +94          String text = "Simple";
    +95  
    +96          PropertyType instance = new PropertyType();
    +97          instance.setValue("simple");
    +98          assertTrue(instance.matches(text));
    +99          instance.setCaseSensitive(true);
    +100         assertFalse(instance.matches(text));
    +101 
    +102         instance.setValue("s.*le");
    +103         instance.setRegex(true);
    +104         assertFalse(instance.matches(text));
    +105         instance.setCaseSensitive(false);
    +106         assertTrue(instance.matches(text));
    +107     }
    +108 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html new file mode 100644 index 000000000..e56b67cfc --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionHandlerTest.html @@ -0,0 +1,109 @@ + + + + +SuppressionHandlerTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileInputStream;
    +23  import java.io.InputStream;
    +24  import java.io.InputStreamReader;
    +25  import java.io.Reader;
    +26  import java.util.List;
    +27  import javax.xml.parsers.SAXParser;
    +28  import javax.xml.parsers.SAXParserFactory;
    +29  import org.junit.After;
    +30  import org.junit.AfterClass;
    +31  import org.junit.Before;
    +32  import org.junit.BeforeClass;
    +33  import org.junit.Test;
    +34  import static org.junit.Assert.*;
    +35  import org.xml.sax.InputSource;
    +36  import org.xml.sax.XMLReader;
    +37  
    +38  /**
    +39   *
    +40   * @author Jeremy Long (jeremy.long@owasp.org)
    +41   */
    +42  public class SuppressionHandlerTest {
    +43  
    +44      public SuppressionHandlerTest() {
    +45      }
    +46  
    +47      @BeforeClass
    +48      public static void setUpClass() {
    +49      }
    +50  
    +51      @AfterClass
    +52      public static void tearDownClass() {
    +53      }
    +54  
    +55      @Before
    +56      public void setUp() {
    +57      }
    +58  
    +59      @After
    +60      public void tearDown() {
    +61      }
    +62  
    +63      /**
    +64       * Test of getSupressionRules method, of class SuppressionHandler.
    +65       *
    +66       * @throws Exception thrown if there is an exception....
    +67       */
    +68      @Test
    +69      public void testHandler() throws Exception {
    +70          File file = new File(this.getClass().getClassLoader().getResource("suppressions.xml").getPath());
    +71  
    +72          File schema = new File(this.getClass().getClassLoader().getResource("schema/suppression.xsd").getPath());
    +73          SuppressionHandler handler = new SuppressionHandler();
    +74  
    +75          SAXParserFactory factory = SAXParserFactory.newInstance();
    +76          factory.setNamespaceAware(true);
    +77          factory.setValidating(true);
    +78          SAXParser saxParser = factory.newSAXParser();
    +79          saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_LANGUAGE, SuppressionParser.W3C_XML_SCHEMA);
    +80          saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_SOURCE, schema);
    +81          XMLReader xmlReader = saxParser.getXMLReader();
    +82          xmlReader.setErrorHandler(new SuppressionErrorHandler());
    +83          xmlReader.setContentHandler(handler);
    +84  
    +85          InputStream inputStream = new FileInputStream(file);
    +86          Reader reader = new InputStreamReader(inputStream, "UTF-8");
    +87          InputSource in = new InputSource(reader);
    +88          //in.setEncoding("UTF-8");
    +89  
    +90          xmlReader.parse(in);
    +91  
    +92          List result = handler.getSupressionRules();
    +93          assertTrue(result.size() > 3);
    +94      }
    +95  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html new file mode 100644 index 000000000..4e187818a --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionParserTest.html @@ -0,0 +1,80 @@ + + + + +SuppressionParserTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.util.List;
    +23  import org.junit.After;
    +24  import org.junit.AfterClass;
    +25  import org.junit.Before;
    +26  import org.junit.BeforeClass;
    +27  import org.junit.Test;
    +28  import static org.junit.Assert.*;
    +29  
    +30  /**
    +31   * Test of the suppression parser.
    +32   *
    +33   * @author Jeremy Long (jeremy.long@owasp.org)
    +34   */
    +35  public class SuppressionParserTest {
    +36  
    +37      public SuppressionParserTest() {
    +38      }
    +39  
    +40      @BeforeClass
    +41      public static void setUpClass() {
    +42      }
    +43  
    +44      @AfterClass
    +45      public static void tearDownClass() {
    +46      }
    +47  
    +48      @Before
    +49      public void setUp() {
    +50      }
    +51  
    +52      @After
    +53      public void tearDown() {
    +54      }
    +55  
    +56      /**
    +57       * Test of parseSuppressionRules method, of class SuppressionParser.
    +58       */
    +59      @Test
    +60      public void testParseSuppressionRules() throws Exception {
    +61          File file = new File(this.getClass().getClassLoader().getResource("suppressions.xml").getPath());
    +62          SuppressionParser instance = new SuppressionParser();
    +63          List result = instance.parseSuppressionRules(file);
    +64          assertTrue(result.size() > 3);
    +65      }
    +66  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html new file mode 100644 index 000000000..304053f19 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/SuppressionRuleTest.html @@ -0,0 +1,485 @@ + + + + +SuppressionRuleTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.util.ArrayList;
    +23  import java.util.List;
    +24  import org.junit.After;
    +25  import org.junit.AfterClass;
    +26  import org.junit.Before;
    +27  import org.junit.BeforeClass;
    +28  import org.junit.Test;
    +29  import static org.junit.Assert.*;
    +30  import org.owasp.dependencycheck.dependency.Dependency;
    +31  import org.owasp.dependencycheck.dependency.Identifier;
    +32  import org.owasp.dependencycheck.dependency.Vulnerability;
    +33  
    +34  /**
    +35   * Test of the suppression rule.
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class SuppressionRuleTest {
    +40  
    +41      public SuppressionRuleTest() {
    +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() {
    +54      }
    +55  
    +56      @After
    +57      public void tearDown() {
    +58      }
    +59  
    +60      //<editor-fold defaultstate="collapsed" desc="Stupid tests of properties">
    +61      /**
    +62       * Test of FilePath property, of class SuppressionRule.
    +63       */
    +64      @Test
    +65      public void testFilePath() {
    +66          SuppressionRule instance = new SuppressionRule();
    +67          PropertyType expResult = new PropertyType();
    +68          expResult.setValue("test");
    +69          instance.setFilePath(expResult);
    +70          PropertyType result = instance.getFilePath();
    +71          assertEquals(expResult, result);
    +72      }
    +73  
    +74      /**
    +75       * Test of Sha1 property, of class SuppressionRule.
    +76       */
    +77      @Test
    +78      public void testSha1() {
    +79          SuppressionRule instance = new SuppressionRule();
    +80          String expResult = "384FAA82E193D4E4B0546059CA09572654BC3970";
    +81          instance.setSha1(expResult);
    +82          String result = instance.getSha1();
    +83          assertEquals(expResult, result);
    +84      }
    +85  
    +86      /**
    +87       * Test of Cpe property, of class SuppressionRule.
    +88       */
    +89      @Test
    +90      public void testCpe() {
    +91          SuppressionRule instance = new SuppressionRule();
    +92          ArrayList<PropertyType> cpe = new ArrayList<PropertyType>();
    +93          instance.setCpe(cpe);
    +94          assertFalse(instance.hasCpe());
    +95          PropertyType pt = new PropertyType();
    +96          pt.setValue("one");
    +97          instance.addCpe(pt);
    +98          assertTrue(instance.hasCpe());
    +99          List<PropertyType> result = instance.getCpe();
    +100         assertEquals(cpe, result);
    +101 
    +102     }
    +103 
    +104     /**
    +105      * Test of CvssBelow property, of class SuppressionRule.
    +106      */
    +107     @Test
    +108     public void testGetCvssBelow() {
    +109         SuppressionRule instance = new SuppressionRule();
    +110         ArrayList<Float> cvss = new ArrayList<Float>();
    +111         instance.setCvssBelow(cvss);
    +112         assertFalse(instance.hasCvssBelow());
    +113         instance.addCvssBelow(0.7f);
    +114         assertTrue(instance.hasCvssBelow());
    +115         List<Float> result = instance.getCvssBelow();
    +116         assertEquals(cvss, result);
    +117     }
    +118 
    +119     /**
    +120      * Test of Cwe property, of class SuppressionRule.
    +121      */
    +122     @Test
    +123     public void testCwe() {
    +124         SuppressionRule instance = new SuppressionRule();
    +125         ArrayList<String> cwe = new ArrayList<String>();
    +126         instance.setCwe(cwe);
    +127         assertFalse(instance.hasCwe());
    +128         instance.addCwe("2");
    +129         assertTrue(instance.hasCwe());
    +130         List<String> result = instance.getCwe();
    +131         assertEquals(cwe, result);
    +132     }
    +133 
    +134     /**
    +135      * Test of Cve property, of class SuppressionRule.
    +136      */
    +137     @Test
    +138     public void testCve() {
    +139         SuppressionRule instance = new SuppressionRule();
    +140         ArrayList<String> cve = new ArrayList<String>();
    +141         instance.setCve(cve);
    +142         assertFalse(instance.hasCve());
    +143         instance.addCve("CVE-2013-1337");
    +144         assertTrue(instance.hasCve());
    +145         List<String> result = instance.getCve();
    +146         assertEquals(cve, result);
    +147     }
    +148     //</editor-fold>
    +149 
    +150     //<editor-fold defaultstate="collapsed" desc="Ignored duplicate tests, left in, as empty tests, so IDE doesn't re-generate them">
    +151     /**
    +152      * Test of getFilePath method, of class SuppressionRule.
    +153      */
    +154     @Test
    +155     public void testGetFilePath() {
    +156         //already tested, this is just left so the IDE doesn't recreate it.
    +157     }
    +158 
    +159     /**
    +160      * Test of setFilePath method, of class SuppressionRule.
    +161      */
    +162     @Test
    +163     public void testSetFilePath() {
    +164         //already tested, this is just left so the IDE doesn't recreate it.
    +165     }
    +166 
    +167     /**
    +168      * Test of getSha1 method, of class SuppressionRule.
    +169      */
    +170     @Test
    +171     public void testGetSha1() {
    +172         //already tested, this is just left so the IDE doesn't recreate it.
    +173     }
    +174 
    +175     /**
    +176      * Test of setSha1 method, of class SuppressionRule.
    +177      */
    +178     @Test
    +179     public void testSetSha1() {
    +180         //already tested, this is just left so the IDE doesn't recreate it.
    +181     }
    +182 
    +183     /**
    +184      * Test of getCpe method, of class SuppressionRule.
    +185      */
    +186     @Test
    +187     public void testGetCpe() {
    +188         //already tested, this is just left so the IDE doesn't recreate it.
    +189     }
    +190 
    +191     /**
    +192      * Test of setCpe method, of class SuppressionRule.
    +193      */
    +194     @Test
    +195     public void testSetCpe() {
    +196         //already tested, this is just left so the IDE doesn't recreate it.
    +197     }
    +198 
    +199     /**
    +200      * Test of addCpe method, of class SuppressionRule.
    +201      */
    +202     @Test
    +203     public void testAddCpe() {
    +204         //already tested, this is just left so the IDE doesn't recreate it.
    +205     }
    +206 
    +207     /**
    +208      * Test of hasCpe method, of class SuppressionRule.
    +209      */
    +210     @Test
    +211     public void testHasCpe() {
    +212         //already tested, this is just left so the IDE doesn't recreate it.
    +213     }
    +214 
    +215     /**
    +216      * Test of setCvssBelow method, of class SuppressionRule.
    +217      */
    +218     @Test
    +219     public void testSetCvssBelow() {
    +220         //already tested, this is just left so the IDE doesn't recreate it.
    +221     }
    +222 
    +223     /**
    +224      * Test of addCvssBelow method, of class SuppressionRule.
    +225      */
    +226     @Test
    +227     public void testAddCvssBelow() {
    +228         //already tested, this is just left so the IDE doesn't recreate it.
    +229     }
    +230 
    +231     /**
    +232      * Test of hasCvssBelow method, of class SuppressionRule.
    +233      */
    +234     @Test
    +235     public void testHasCvssBelow() {
    +236         //already tested, this is just left so the IDE doesn't recreate it.
    +237     }
    +238 
    +239     /**
    +240      * Test of getCwe method, of class SuppressionRule.
    +241      */
    +242     @Test
    +243     public void testGetCwe() {
    +244         //already tested, this is just left so the IDE doesn't recreate it.
    +245     }
    +246 
    +247     /**
    +248      * Test of setCwe method, of class SuppressionRule.
    +249      */
    +250     @Test
    +251     public void testSetCwe() {
    +252         //already tested, this is just left so the IDE doesn't recreate it.
    +253     }
    +254 
    +255     /**
    +256      * Test of addCwe method, of class SuppressionRule.
    +257      */
    +258     @Test
    +259     public void testAddCwe() {
    +260         //already tested, this is just left so the IDE doesn't recreate it.
    +261     }
    +262 
    +263     /**
    +264      * Test of hasCwe method, of class SuppressionRule.
    +265      */
    +266     @Test
    +267     public void testHasCwe() {
    +268         //already tested, this is just left so the IDE doesn't recreate it.
    +269     }
    +270 
    +271     /**
    +272      * Test of getCve method, of class SuppressionRule.
    +273      */
    +274     @Test
    +275     public void testGetCve() {
    +276         //already tested, this is just left so the IDE doesn't recreate it.
    +277     }
    +278 
    +279     /**
    +280      * Test of setCve method, of class SuppressionRule.
    +281      */
    +282     @Test
    +283     public void testSetCve() {
    +284         //already tested, this is just left so the IDE doesn't recreate it.
    +285     }
    +286 
    +287     /**
    +288      * Test of addCve method, of class SuppressionRule.
    +289      */
    +290     @Test
    +291     public void testAddCve() {
    +292         //already tested, this is just left so the IDE doesn't recreate it.
    +293     }
    +294 
    +295     /**
    +296      * Test of hasCve method, of class SuppressionRule.
    +297      */
    +298     @Test
    +299     public void testHasCve() {
    +300         //already tested, this is just left so the IDE doesn't recreate it.
    +301     }
    +302     //</editor-fold>
    +303 
    +304     /**
    +305      * Test of cpeHasNoVersion method, of class SuppressionRule.
    +306      */
    +307     @Test
    +308     public void testCpeHasNoVersion() {
    +309         PropertyType c = new PropertyType();
    +310         c.setValue("cpe:/a:microsoft:.net_framework:4.5");
    +311         SuppressionRule instance = new SuppressionRule();
    +312         assertFalse(instance.cpeHasNoVersion(c));
    +313         c.setValue("cpe:/a:microsoft:.net_framework:");
    +314         assertFalse(instance.cpeHasNoVersion(c));
    +315         c.setValue("cpe:/a:microsoft:.net_framework");
    +316         assertTrue(instance.cpeHasNoVersion(c));
    +317     }
    +318 
    +319     /**
    +320      * Test of countCharacter method, of class SuppressionRule.
    +321      */
    +322     @Test
    +323     public void testCountCharacter() {
    +324         String str = "cpe:/a:microsoft:.net_framework:4.5";
    +325         char c = ':';
    +326         SuppressionRule instance = new SuppressionRule();
    +327         int expResult = 4;
    +328         int result = instance.countCharacter(str, c);
    +329         assertEquals(expResult, result);
    +330         str = "::";
    +331         expResult = 2;
    +332         result = instance.countCharacter(str, c);
    +333         assertEquals(expResult, result);
    +334         str = "these are not the characters you are looking for";
    +335         expResult = 0;
    +336         result = instance.countCharacter(str, c);
    +337         assertEquals(expResult, result);
    +338     }
    +339 
    +340     /**
    +341      * Test of cpeMatches method, of class SuppressionRule.
    +342      */
    +343     @Test
    +344     public void testCpeMatches() {
    +345         Identifier identifier = new Identifier("cwe", "cpe:/a:microsoft:.net_framework:4.5", "some url not needed for this test");
    +346 
    +347         PropertyType cpe = new PropertyType();
    +348         cpe.setValue("cpe:/a:microsoft:.net_framework:4.5");
    +349 
    +350         SuppressionRule instance = new SuppressionRule();
    +351         boolean expResult = true;
    +352         boolean result = instance.cpeMatches(cpe, identifier);
    +353         assertEquals(expResult, result);
    +354 
    +355         cpe.setValue("cpe:/a:microsoft:.net_framework:4.0");
    +356         expResult = false;
    +357         result = instance.cpeMatches(cpe, identifier);
    +358         assertEquals(expResult, result);
    +359 
    +360         cpe.setValue("CPE:/a:microsoft:.net_framework:4.5");
    +361         cpe.setCaseSensitive(true);
    +362         expResult = false;
    +363         result = instance.cpeMatches(cpe, identifier);
    +364         assertEquals(expResult, result);
    +365 
    +366         cpe.setValue("cpe:/a:microsoft:.net_framework");
    +367         cpe.setCaseSensitive(false);
    +368         expResult = true;
    +369         result = instance.cpeMatches(cpe, identifier);
    +370         assertEquals(expResult, result);
    +371 
    +372         cpe.setValue("cpe:/a:microsoft:.*");
    +373         cpe.setRegex(true);
    +374         expResult = true;
    +375         result = instance.cpeMatches(cpe, identifier);
    +376         assertEquals(expResult, result);
    +377 
    +378         cpe.setValue("CPE:/a:microsoft:.*");
    +379         cpe.setRegex(true);
    +380         cpe.setCaseSensitive(true);
    +381         expResult = false;
    +382         result = instance.cpeMatches(cpe, identifier);
    +383         assertEquals(expResult, result);
    +384 
    +385         cpe.setValue("cpe:/a:apache:.*");
    +386         cpe.setRegex(true);
    +387         cpe.setCaseSensitive(false);
    +388         expResult = false;
    +389         result = instance.cpeMatches(cpe, identifier);
    +390         assertEquals(expResult, result);
    +391     }
    +392 
    +393     /**
    +394      * Test of process method, of class SuppressionRule.
    +395      */
    +396     @Test
    +397     public void testProcess() {
    +398         File struts = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +399         Dependency dependency = new Dependency(struts);
    +400         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:4.5", "some url not needed for this test");
    +401         String sha1 = dependency.getSha1sum();
    +402         dependency.setSha1sum("384FAA82E193D4E4B0546059CA09572654BC3970");
    +403         Vulnerability v = createVulnerability();
    +404         dependency.addVulnerability(v);
    +405 
    +406         //cwe
    +407         SuppressionRule instance = new SuppressionRule();
    +408         instance.setSha1(sha1);
    +409         instance.addCwe("287");
    +410         instance.process(dependency);
    +411         assertTrue(dependency.getVulnerabilities().size() == 1);
    +412         dependency.setSha1sum(sha1);
    +413         instance.process(dependency);
    +414         assertTrue(dependency.getVulnerabilities().isEmpty());
    +415 
    +416         //cvss
    +417         dependency.addVulnerability(v);
    +418         instance = new SuppressionRule();
    +419         instance.addCvssBelow(5f);
    +420         instance.process(dependency);
    +421         assertTrue(dependency.getVulnerabilities().size() == 1);
    +422         instance.addCvssBelow(8f);
    +423         instance.process(dependency);
    +424         assertTrue(dependency.getVulnerabilities().isEmpty());
    +425 
    +426         //cve
    +427         dependency.addVulnerability(v);
    +428         instance = new SuppressionRule();
    +429         instance.addCve("CVE-2012-1337");
    +430         instance.process(dependency);
    +431         assertTrue(dependency.getVulnerabilities().size() == 1);
    +432         instance.addCve("CVE-2013-1337");
    +433         instance.process(dependency);
    +434         assertTrue(dependency.getVulnerabilities().isEmpty());
    +435 
    +436         //cpe
    +437         instance = new SuppressionRule();
    +438         PropertyType pt = new PropertyType();
    +439         pt.setValue("cpe:/a:microsoft:.net_framework:4.0");
    +440         instance.addCpe(pt);
    +441         instance.process(dependency);
    +442         assertTrue(dependency.getIdentifiers().size() == 1);
    +443         pt = new PropertyType();
    +444         pt.setValue("cpe:/a:microsoft:.net_framework:4.5");
    +445         instance.addCpe(pt);
    +446         pt = new PropertyType();
    +447         pt.setValue(".*");
    +448         pt.setRegex(true);
    +449         instance.setFilePath(pt);
    +450         instance.process(dependency);
    +451         assertTrue(dependency.getIdentifiers().isEmpty());
    +452 
    +453         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:4.0", "some url not needed for this test");
    +454         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:4.5", "some url not needed for this test");
    +455         dependency.addIdentifier("cwe", "cpe:/a:microsoft:.net_framework:5.0", "some url not needed for this test");
    +456         pt = new PropertyType();
    +457         pt.setValue("cpe:/a:microsoft:.net_framework");
    +458         instance.addCpe(pt);
    +459         assertTrue(dependency.getIdentifiers().size() == 3);
    +460         instance.process(dependency);
    +461         assertTrue(dependency.getIdentifiers().isEmpty());
    +462     }
    +463 
    +464     private Vulnerability createVulnerability() {
    +465         Vulnerability v = new Vulnerability();
    +466         v.setCwe("CWE-287 Improper Authentication");
    +467         v.setName("CVE-2013-1337");
    +468         v.setCvssScore(7.5f);
    +469         return v;
    +470     }
    +471 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html new file mode 100644 index 000000000..6e529a78a --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-frame.html @@ -0,0 +1,33 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + + +

    + org.owasp.dependencycheck.suppression +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html new file mode 100644 index 000000000..e4faf9443 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/suppression/package-summary.html @@ -0,0 +1,82 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.suppression

    + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + PropertyTypeTest +
    + SuppressionHandlerTest +
    + SuppressionParserTest +
    + SuppressionRuleTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html new file mode 100644 index 000000000..87b1e4414 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractSuppressionAnalyzer.html @@ -0,0 +1,129 @@ + + + + +AbstractSuppressionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import java.io.File;
    +22  import java.util.List;
    +23  import java.util.Set;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.owasp.dependencycheck.suppression.SuppressionParseException;
    +27  import org.owasp.dependencycheck.suppression.SuppressionParser;
    +28  import org.owasp.dependencycheck.suppression.SuppressionRule;
    +29  import org.owasp.dependencycheck.utils.Settings;
    +30  
    +31  /**
    +32   * Abstract base suppression analyzer that contains methods for parsing the
    +33   * suppression xml file.
    +34   *
    +35   * @author Jeremy Long (jeremy.long@owasp.org)
    +36   */
    +37  public abstract class AbstractSuppressionAnalyzer extends AbstractAnalyzer {
    +38  
    +39      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +40      /**
    +41       * Returns a list of file EXTENSIONS supported by this analyzer.
    +42       *
    +43       * @return a list of file EXTENSIONS supported by this analyzer.
    +44       */
    +45      public Set<String> getSupportedExtensions() {
    +46          return null;
    +47      }
    +48  
    +49      /**
    +50       * Returns whether or not this analyzer can process the given extension.
    +51       *
    +52       * @param extension the file extension to test for support.
    +53       * @return whether or not the specified file extension is supported by this
    +54       * analyzer.
    +55       */
    +56      @Override
    +57      public boolean supportsExtension(String extension) {
    +58          return true;
    +59      }
    +60  
    +61      //</editor-fold>
    +62      /**
    +63       * The initialize method loads the suppression XML file.
    +64       *
    +65       * @throws Exception thrown if there is an exception
    +66       */
    +67      @Override
    +68      public void initialize() throws Exception {
    +69          super.initialize();
    +70          loadSuppressionData();
    +71      }
    +72      /**
    +73       * The list of suppression rules
    +74       */
    +75      private List<SuppressionRule> rules;
    +76  
    +77      /**
    +78       * Get the value of rules.
    +79       *
    +80       * @return the value of rules
    +81       */
    +82      public List<SuppressionRule> getRules() {
    +83          return rules;
    +84      }
    +85  
    +86      /**
    +87       * Set the value of rules.
    +88       *
    +89       * @param rules new value of rules
    +90       */
    +91      public void setRules(List<SuppressionRule> rules) {
    +92          this.rules = rules;
    +93      }
    +94  
    +95      /**
    +96       * Loads the suppression rules file.
    +97       *
    +98       * @throws SuppressionParseException thrown if the XML cannot be parsed.
    +99       */
    +100     private void loadSuppressionData() throws SuppressionParseException {
    +101         final File file = Settings.getFile(Settings.KEYS.SUPPRESSION_FILE);
    +102         if (file != null) {
    +103             final SuppressionParser parser = new SuppressionParser();
    +104             try {
    +105                 rules = parser.parseSuppressionRules(file);
    +106             } catch (SuppressionParseException ex) {
    +107                 final String msg = String.format("Unable to parse suppression xml file '%s'", file.getPath());
    +108                 Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, msg);
    +109                 Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.WARNING, ex.getMessage());
    +110                 Logger.getLogger(AbstractSuppressionAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +111                 throw ex;
    +112             }
    +113         }
    +114     }
    +115 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html new file mode 100644 index 000000000..d8a8bc11f --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/CpeSuppressionAnalyzer.html @@ -0,0 +1,90 @@ + + + + +CpeSuppressionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.dependency.Dependency;
    +23  import org.owasp.dependencycheck.suppression.SuppressionRule;
    +24  
    +25  /**
    +26   * The suppression analyzer processes an externally defined XML document that
    +27   * complies with the suppressions.xsd schema. Any identified CPE entries within
    +28   * the dependencies that match will be removed.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class CpeSuppressionAnalyzer extends AbstractSuppressionAnalyzer {
    +33  
    +34      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +35      /**
    +36       * The name of the analyzer.
    +37       */
    +38      private static final String ANALYZER_NAME = "Cpe Suppression Analyzer";
    +39      /**
    +40       * The phase that this analyzer is intended to run in.
    +41       */
    +42      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_IDENTIFIER_ANALYSIS;
    +43  
    +44      /**
    +45       * Returns the name of the analyzer.
    +46       *
    +47       * @return the name of the analyzer.
    +48       */
    +49      @Override
    +50      public String getName() {
    +51          return ANALYZER_NAME;
    +52      }
    +53  
    +54      /**
    +55       * Returns the phase that the analyzer is intended to run in.
    +56       *
    +57       * @return the phase that the analyzer is intended to run in.
    +58       */
    +59      @Override
    +60      public AnalysisPhase getAnalysisPhase() {
    +61          return ANALYSIS_PHASE;
    +62      }
    +63      //</editor-fold>
    +64  
    +65      @Override
    +66      public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
    +67  
    +68          if (getRules() == null || getRules().size() <= 0) {
    +69              return;
    +70          }
    +71  
    +72          for (final SuppressionRule rule : getRules()) {
    +73              rule.process(dependency);
    +74          }
    +75      }
    +76  }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html new file mode 100644 index 000000000..49c889c37 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/VulnerabilitySuppressionAnalyzer.html @@ -0,0 +1,90 @@ + + + + +VulnerabilitySuppressionAnalyzer xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.analyzer;
    +20  
    +21  import org.owasp.dependencycheck.Engine;
    +22  import org.owasp.dependencycheck.dependency.Dependency;
    +23  import org.owasp.dependencycheck.suppression.SuppressionRule;
    +24  
    +25  /**
    +26   * The suppression analyzer processes an externally defined XML document that
    +27   * complies with the suppressions.xsd schema. Any identified Vulnerability
    +28   * entries within the dependencies that match will be removed.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class VulnerabilitySuppressionAnalyzer extends AbstractSuppressionAnalyzer {
    +33  
    +34      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +35      /**
    +36       * The name of the analyzer.
    +37       */
    +38      private static final String ANALYZER_NAME = "Vulnerability Suppression Analyzer";
    +39      /**
    +40       * The phase that this analyzer is intended to run in.
    +41       */
    +42      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.POST_FINDING_ANALYSIS;
    +43  
    +44      /**
    +45       * Returns the name of the analyzer.
    +46       *
    +47       * @return the name of the analyzer.
    +48       */
    +49      @Override
    +50      public String getName() {
    +51          return ANALYZER_NAME;
    +52      }
    +53  
    +54      /**
    +55       * Returns the phase that the analyzer is intended to run in.
    +56       *
    +57       * @return the phase that the analyzer is intended to run in.
    +58       */
    +59      @Override
    +60      public AnalysisPhase getAnalysisPhase() {
    +61          return ANALYSIS_PHASE;
    +62      }
    +63      //</editor-fold>
    +64  
    +65      @Override
    +66      public void analyze(final Dependency dependency, final Engine engine) throws AnalysisException {
    +67  
    +68          if (getRules() == null || getRules().size() <= 0) {
    +69              return;
    +70          }
    +71  
    +72          for (final SuppressionRule rule : getRules()) {
    +73              rule.process(dependency);
    +74          }
    +75      }
    +76  }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html new file mode 100644 index 000000000..cea0fa299 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/BaseDB.html @@ -0,0 +1,259 @@ + + + + +BaseDB xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data;
    +20  
    +21  import java.io.BufferedReader;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.io.InputStream;
    +25  import java.io.InputStreamReader;
    +26  import java.sql.Connection;
    +27  import java.sql.DriverManager;
    +28  import java.sql.PreparedStatement;
    +29  import java.sql.ResultSet;
    +30  import java.sql.SQLException;
    +31  import java.sql.Statement;
    +32  import java.util.logging.Level;
    +33  import java.util.logging.Logger;
    +34  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +35  import static org.owasp.dependencycheck.data.nvdcve.CveDB.DB_SCHEMA_VERSION;
    +36  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +37  import org.owasp.dependencycheck.utils.Settings;
    +38  
    +39  /**
    +40   *
    +41   * @author Jeremy Long (jeremy.long@owasp.org)
    +42   */
    +43  public class BaseDB {
    +44  
    +45      /**
    +46       * Resource location for SQL file used to create the database schema.
    +47       */
    +48      public static final String DB_STRUCTURE_RESOURCE = "data/initialize.sql";
    +49      /**
    +50       * The version of the current DB Schema.
    +51       */
    +52      public static final String DB_SCHEMA_VERSION = "2.7";
    +53      /**
    +54       * Database connection
    +55       */
    +56      private Connection conn;
    +57  
    +58      /**
    +59       * Returns the database connection.
    +60       *
    +61       * @return the database connection
    +62       */
    +63      protected Connection getConnection() {
    +64          return conn;
    +65      }
    +66  
    +67      /**
    +68       * Opens the database connection. If the database does not exist, it will
    +69       * create a new one.
    +70       *
    +71       * @throws IOException thrown if there is an IO Exception
    +72       * @throws SQLException thrown if there is a SQL Exception
    +73       * @throws DatabaseException thrown if there is an error initializing a new
    +74       * database
    +75       * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +76       * loaded
    +77       */
    +78      @edu.umd.cs.findbugs.annotations.SuppressWarnings(
    +79              value = "DMI_EMPTY_DB_PASSWORD",
    +80              justification = "Yes, I know... Blank password.")
    +81      public void open() throws IOException, SQLException, DatabaseException, ClassNotFoundException {
    +82          final String fileName = CveDB.getDataDirectory().getCanonicalPath();
    +83          final File f = new File(fileName, "cve." + DB_SCHEMA_VERSION);
    +84          final File check = new File(f.getAbsolutePath() + ".h2.db");
    +85          final boolean createTables = !check.exists();
    +86          final String connStr = String.format("jdbc:h2:file:%s;AUTO_SERVER=TRUE", f.getAbsolutePath());
    +87          Class.forName("org.h2.Driver");
    +88          conn = DriverManager.getConnection(connStr, "sa", "");
    +89          if (createTables) {
    +90              createTables();
    +91          }
    +92      }
    +93  
    +94      /**
    +95       * Closes the DB4O database. Close should be called on this object when it
    +96       * is done being used.
    +97       */
    +98      public void close() {
    +99          if (conn != null) {
    +100             try {
    +101                 conn.close();
    +102             } catch (SQLException ex) {
    +103                 final String msg = "There was an error attempting to close the CveDB, see the log for more details.";
    +104                 Logger.getLogger(BaseDB.class.getName()).log(Level.SEVERE, msg, ex);
    +105                 Logger.getLogger(BaseDB.class.getName()).log(Level.FINE, null, ex);
    +106             }
    +107             conn = null;
    +108         }
    +109     }
    +110 
    +111     /**
    +112      * Commits all completed transactions.
    +113      *
    +114      * @throws SQLException thrown if a SQL Exception occurs
    +115      */
    +116     public void commit() throws SQLException {
    +117         if (conn != null) {
    +118             conn.commit();
    +119         }
    +120     }
    +121 
    +122     /**
    +123      * Cleans up the object and ensures that "close" has been called.
    +124      *
    +125      * @throws Throwable thrown if there is a problem
    +126      */
    +127     @Override
    +128     protected void finalize() throws Throwable {
    +129         close();
    +130         super.finalize(); //not necessary if extending Object.
    +131     }
    +132 
    +133     /**
    +134      * Creates the database structure (tables and indexes) to store the CVE data
    +135      *
    +136      * @throws SQLException thrown if there is a sql exception
    +137      * @throws DatabaseException thrown if there is a database exception
    +138      */
    +139     private void createTables() throws SQLException, DatabaseException {
    +140         InputStream is;
    +141         InputStreamReader reader;
    +142         BufferedReader in = null;
    +143         try {
    +144             is = this.getClass().getClassLoader().getResourceAsStream(DB_STRUCTURE_RESOURCE);
    +145             reader = new InputStreamReader(is, "UTF-8");
    +146             in = new BufferedReader(reader);
    +147             final StringBuilder sb = new StringBuilder(2110);
    +148             String tmp;
    +149             while ((tmp = in.readLine()) != null) {
    +150                 sb.append(tmp);
    +151             }
    +152             Statement statement = null;
    +153             try {
    +154                 statement = conn.createStatement();
    +155                 statement.execute(sb.toString());
    +156             } finally {
    +157                 closeStatement(statement);
    +158             }
    +159         } catch (IOException ex) {
    +160             throw new DatabaseException("Unable to create database schema", ex);
    +161         } finally {
    +162             if (in != null) {
    +163                 try {
    +164                     in.close();
    +165                 } catch (IOException ex) {
    +166                     Logger.getLogger(CveDB.class
    +167                             .getName()).log(Level.FINEST, null, ex);
    +168                 }
    +169             }
    +170         }
    +171     }
    +172 
    +173     /**
    +174      * Retrieves the directory that the JAR file exists in so that we can ensure
    +175      * we always use a common data directory.
    +176      *
    +177      * @return the data directory for this index.
    +178      * @throws IOException is thrown if an IOException occurs of course...
    +179      */
    +180     public static File getDataDirectory() throws IOException {
    +181         final File path = Settings.getDataFile(Settings.KEYS.CVE_DATA_DIRECTORY);
    +182         if (!path.exists()) {
    +183             if (!path.mkdirs()) {
    +184                 throw new IOException("Unable to create NVD CVE Data directory");
    +185             }
    +186         }
    +187         return path;
    +188     }
    +189 
    +190     /**
    +191      * Returns the generated integer primary key for a newly inserted row.
    +192      *
    +193      * @param statement a prepared statement that just executed an insert
    +194      * @return a primary key
    +195      * @throws DatabaseException thrown if there is an exception obtaining the
    +196      * key
    +197      */
    +198     protected int getGeneratedKey(PreparedStatement statement) throws DatabaseException {
    +199         ResultSet rs = null;
    +200         int id = 0;
    +201         try {
    +202             rs = statement.getGeneratedKeys();
    +203             rs.next();
    +204             id = rs.getInt(1);
    +205         } catch (SQLException ex) {
    +206             throw new DatabaseException("Unable to get primary key for inserted row");
    +207         } finally {
    +208             closeResultSet(rs);
    +209         }
    +210         return id;
    +211     }
    +212 
    +213     /**
    +214      * Closes the given statement object ignoring any exceptions that occur.
    +215      *
    +216      * @param statement a Statement object
    +217      */
    +218     public void closeStatement(Statement statement) {
    +219         if (statement != null) {
    +220             try {
    +221                 statement.close();
    +222             } catch (SQLException ex) {
    +223                 Logger.getLogger(CveDB.class
    +224                         .getName()).log(Level.FINEST, statement.toString(), ex);
    +225             }
    +226         }
    +227     }
    +228 
    +229     /**
    +230      * Closes the result set capturing and ignoring any SQLExceptions that
    +231      * occur.
    +232      *
    +233      * @param rs a ResultSet to close
    +234      */
    +235     public void closeResultSet(ResultSet rs) {
    +236         if (rs != null) {
    +237             try {
    +238                 rs.close();
    +239             } catch (SQLException ex) {
    +240                 Logger.getLogger(CveDB.class
    +241                         .getName()).log(Level.FINEST, rs.toString(), ex);
    +242             }
    +243         }
    +244     }
    +245 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html new file mode 100644 index 000000000..e862e1305 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeMemoryIndex.html @@ -0,0 +1,342 @@ + + + + +CpeMemoryIndex xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  import java.io.IOException;
    +22  import java.sql.ResultSet;
    +23  import java.sql.SQLException;
    +24  import java.util.HashMap;
    +25  import java.util.Map;
    +26  import java.util.logging.Level;
    +27  import java.util.logging.Logger;
    +28  import org.apache.lucene.analysis.Analyzer;
    +29  import org.apache.lucene.analysis.core.KeywordAnalyzer;
    +30  import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
    +31  import org.apache.lucene.document.Document;
    +32  import org.apache.lucene.document.Field;
    +33  import org.apache.lucene.document.TextField;
    +34  import org.apache.lucene.index.CorruptIndexException;
    +35  import org.apache.lucene.index.DirectoryReader;
    +36  import org.apache.lucene.index.IndexReader;
    +37  import org.apache.lucene.index.IndexWriter;
    +38  import org.apache.lucene.index.IndexWriterConfig;
    +39  import org.apache.lucene.queryparser.classic.ParseException;
    +40  import org.apache.lucene.queryparser.classic.QueryParser;
    +41  import org.apache.lucene.search.IndexSearcher;
    +42  import org.apache.lucene.search.Query;
    +43  import org.apache.lucene.search.TopDocs;
    +44  import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
    +45  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +46  import org.apache.lucene.store.RAMDirectory;
    +47  import org.owasp.dependencycheck.data.lucene.LuceneUtils;
    +48  import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
    +49  
    +50  /**
    +51   * An in memory lucene index that contains the vendor/product combinations from
    +52   * the CPE (application) identifiers within the NVD CVE data.
    +53   *
    +54   * @author Jeremy Long (jeremy.long@owasp.org)
    +55   */
    +56  public final class CpeMemoryIndex {
    +57  
    +58      /**
    +59       * singleton instance.
    +60       */
    +61      private static CpeMemoryIndex instance = new CpeMemoryIndex();
    +62  
    +63      /**
    +64       * private constructor for singleton.
    +65       */
    +66      private CpeMemoryIndex() {
    +67      }
    +68  
    +69      /**
    +70       * Gets the singleton instance of the CpeMemoryIndex.
    +71       *
    +72       * @return the instance of the CpeMemoryIndex
    +73       */
    +74      public static CpeMemoryIndex getInstance() {
    +75          return instance;
    +76      }
    +77      /**
    +78       * The in memory Lucene index.
    +79       */
    +80      private RAMDirectory index;
    +81      /**
    +82       * The Lucene IndexReader.
    +83       */
    +84      private IndexReader indexReader;
    +85      /**
    +86       * The Lucene IndexSearcher.
    +87       */
    +88      private IndexSearcher indexSearcher;
    +89      /**
    +90       * The Lucene Analyzer used for Searching.
    +91       */
    +92      private Analyzer searchingAnalyzer;
    +93      /**
    +94       * The Lucene QueryParser used for Searching.
    +95       */
    +96      private QueryParser queryParser;
    +97      /**
    +98       * The search field analyzer for the product field.
    +99       */
    +100     private SearchFieldAnalyzer productSearchFieldAnalyzer;
    +101     /**
    +102      * The search field analyzer for the vendor field.
    +103      */
    +104     private SearchFieldAnalyzer vendorSearchFieldAnalyzer;
    +105 
    +106     /**
    +107      * Creates and loads data into an in memory index.
    +108      *
    +109      * @param cve the data source to retrieve the cpe data
    +110      * @throws IndexException thrown if there is an error creating the index
    +111      */
    +112     public void open(CveDB cve) throws IndexException {
    +113         if (!openState) {
    +114             index = new RAMDirectory();
    +115             buildIndex(cve);
    +116             try {
    +117                 indexReader = DirectoryReader.open(index);
    +118             } catch (IOException ex) {
    +119                 throw new IndexException(ex);
    +120             }
    +121             indexSearcher = new IndexSearcher(indexReader);
    +122             searchingAnalyzer = createSearchingAnalyzer();
    +123             queryParser = new QueryParser(LuceneUtils.CURRENT_VERSION, Fields.DOCUMENT_KEY, searchingAnalyzer);
    +124             openState = true;
    +125         }
    +126     }
    +127     /**
    +128      * A flag indicating whether or not the index is open.
    +129      */
    +130     private boolean openState = false;
    +131 
    +132     /**
    +133      * returns whether or not the index is open.
    +134      *
    +135      * @return whether or not the index is open
    +136      */
    +137     public boolean isOpen() {
    +138         return openState;
    +139     }
    +140 
    +141     /**
    +142      * Creates the indexing analyzer for the CPE Index.
    +143      *
    +144      * @return the CPE Analyzer.
    +145      */
    +146     @SuppressWarnings("unchecked")
    +147     private Analyzer createIndexingAnalyzer() {
    +148         final Map fieldAnalyzers = new HashMap();
    +149         fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
    +150         return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
    +151     }
    +152 
    +153     /**
    +154      * Creates an Analyzer for searching the CPE Index.
    +155      *
    +156      * @return the CPE Analyzer.
    +157      */
    +158     @SuppressWarnings("unchecked")
    +159     private Analyzer createSearchingAnalyzer() {
    +160         final Map fieldAnalyzers = new HashMap();
    +161         fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
    +162         productSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +163         vendorSearchFieldAnalyzer = new SearchFieldAnalyzer(LuceneUtils.CURRENT_VERSION);
    +164         fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);
    +165         fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);
    +166 
    +167         return new PerFieldAnalyzerWrapper(new FieldAnalyzer(LuceneUtils.CURRENT_VERSION), fieldAnalyzers);
    +168     }
    +169 
    +170     /**
    +171      * Saves a CPE IndexEntry into the Lucene index.
    +172      *
    +173      * @param vendor the vendor to index
    +174      * @param product the product to index
    +175      * @param indexWriter the index writer to write the entry into
    +176      * @throws CorruptIndexException is thrown if the index is corrupt
    +177      * @throws IOException is thrown if an IOException occurs
    +178      */
    +179     public void saveEntry(String vendor, String product, IndexWriter indexWriter) throws CorruptIndexException, IOException {
    +180         final Document doc = new Document();
    +181         final Field v = new TextField(Fields.VENDOR, vendor, Field.Store.YES);
    +182         final Field p = new TextField(Fields.PRODUCT, product, Field.Store.YES);
    +183         doc.add(v);
    +184         doc.add(p);
    +185         indexWriter.addDocument(doc);
    +186     }
    +187 
    +188     /**
    +189      * Closes the CPE Index.
    +190      */
    +191     public void close() {
    +192         if (searchingAnalyzer != null) {
    +193             searchingAnalyzer.close();
    +194             searchingAnalyzer = null;
    +195         }
    +196         if (indexReader != null) {
    +197             try {
    +198                 indexReader.close();
    +199             } catch (IOException ex) {
    +200                 Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINEST, null, ex);
    +201             }
    +202             indexReader = null;
    +203         }
    +204         queryParser = null;
    +205         indexSearcher = null;
    +206         if (index != null) {
    +207             index.close();
    +208             index = null;
    +209         }
    +210         openState = false;
    +211     }
    +212 
    +213     /**
    +214      * Builds the lucene index based off of the data within the CveDB.
    +215      *
    +216      * @param cve the data base containing the CPE data
    +217      * @throws IndexException thrown if there is an issue creating the index
    +218      */
    +219     private void buildIndex(CveDB cve) throws IndexException {
    +220         Analyzer analyzer = null;
    +221         IndexWriter indexWriter = null;
    +222         try {
    +223             analyzer = createIndexingAnalyzer();
    +224             final IndexWriterConfig conf = new IndexWriterConfig(LuceneUtils.CURRENT_VERSION, analyzer);
    +225             indexWriter = new IndexWriter(index, conf);
    +226             final ResultSet rs = cve.getVendorProductList();
    +227             if (rs == null) {
    +228                 throw new IndexException("No data exists");
    +229             }
    +230             try {
    +231                 while (rs.next()) {
    +232                     saveEntry(rs.getString(1), rs.getString(2), indexWriter);
    +233                 }
    +234             } catch (SQLException ex) {
    +235                 Logger.getLogger(CpeMemoryIndex.class.getName()).log(Level.FINE, null, ex);
    +236                 throw new IndexException("Error reading CPE data", ex);
    +237             }
    +238         } catch (CorruptIndexException ex) {
    +239             throw new IndexException("Unable to close an in-memory index", ex);
    +240         } catch (IOException ex) {
    +241             throw new IndexException("Unable to close an in-memory index", ex);
    +242         } finally {
    +243             if (indexWriter != null) {
    +244                 try {
    +245                     try {
    +246                         indexWriter.commit();
    +247                     } finally {
    +248                         indexWriter.close(true);
    +249                     }
    +250                 } catch (CorruptIndexException ex) {
    +251                     throw new IndexException("Unable to close an in-memory index", ex);
    +252                 } catch (IOException ex) {
    +253                     throw new IndexException("Unable to close an in-memory index", ex);
    +254                 }
    +255                 if (analyzer != null) {
    +256                     analyzer.close();
    +257                 }
    +258             }
    +259         }
    +260     }
    +261 
    +262     /**
    +263      * Resets the searching analyzers
    +264      */
    +265     private void resetSearchingAnalyzer() {
    +266         if (productSearchFieldAnalyzer != null) {
    +267             productSearchFieldAnalyzer.clear();
    +268         }
    +269         if (vendorSearchFieldAnalyzer != null) {
    +270             vendorSearchFieldAnalyzer.clear();
    +271         }
    +272     }
    +273 
    +274     /**
    +275      * Searches the index using the given search string.
    +276      *
    +277      * @param searchString the query text
    +278      * @param maxQueryResults the maximum number of documents to return
    +279      * @return the TopDocs found by the search
    +280      * @throws ParseException thrown when the searchString is invalid
    +281      * @throws IOException is thrown if there is an issue with the underlying
    +282      * Index
    +283      */
    +284     public TopDocs search(String searchString, int maxQueryResults) throws ParseException, IOException {
    +285         if (searchString == null || searchString.trim().isEmpty()) {
    +286             throw new ParseException("Query is null or empty");
    +287         }
    +288         final Query query = queryParser.parse(searchString);
    +289         return indexSearcher.search(query, maxQueryResults);
    +290     }
    +291 
    +292     /**
    +293      * Searches the index using the given query.
    +294      *
    +295      * @param query the query used to search the index
    +296      * @param maxQueryResults the max number of results to return
    +297      * @return the TopDocs found be the query
    +298      * @throws CorruptIndexException thrown if the Index is corrupt
    +299      * @throws IOException thrown if there is an IOException
    +300      */
    +301     public TopDocs search(Query query, int maxQueryResults) throws CorruptIndexException, IOException {
    +302         resetSearchingAnalyzer();
    +303         return indexSearcher.search(query, maxQueryResults);
    +304     }
    +305 
    +306     /**
    +307      * Retrieves a document from the Index.
    +308      *
    +309      * @param documentId the id of the document to retrieve
    +310      * @return the Document
    +311      * @throws IOException thrown if there is an IOException
    +312      */
    +313     public Document getDocument(int documentId) throws IOException {
    +314         return indexSearcher.doc(documentId);
    +315     }
    +316 
    +317     /**
    +318      * Returns the number of CPE entries stored in the index.
    +319      *
    +320      * @return the number of CPE entries stored in the index
    +321      */
    +322     public int numDocs() {
    +323         if (indexReader == null) {
    +324             return -1;
    +325         }
    +326         return indexReader.numDocs();
    +327     }
    +328 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html new file mode 100644 index 000000000..1fb492ecc --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexException.html @@ -0,0 +1,81 @@ + + + + +IndexException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.cpe;
    +20  
    +21  /**
    +22   * An exception thrown when the there is an issue using the in-memory CPE Index.
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class IndexException extends Exception {
    +27  
    +28      /**
    +29       * The serial version UID for serialization.
    +30       */
    +31      private static final long serialVersionUID = 1L;
    +32  
    +33      /**
    +34       * Creates a new IndexException.
    +35       */
    +36      public IndexException() {
    +37          super();
    +38      }
    +39  
    +40      /**
    +41       * Creates a new IndexException.
    +42       *
    +43       * @param msg a message for the exception.
    +44       */
    +45      public IndexException(String msg) {
    +46          super(msg);
    +47      }
    +48  
    +49      /**
    +50       * Creates a new IndexException.
    +51       *
    +52       * @param ex the cause of the failure.
    +53       */
    +54      public IndexException(Throwable ex) {
    +55          super(ex);
    +56      }
    +57  
    +58      /**
    +59       * Creates a new IndexException.
    +60       *
    +61       * @param msg a message for the exception.
    +62       * @param ex the cause of the failure.
    +63       */
    +64      public IndexException(String msg, Throwable ex) {
    +65          super(msg, ex);
    +66      }
    +67  }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html new file mode 100644 index 000000000..d87965b8b --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/update/CallableDownloadTask.html @@ -0,0 +1,193 @@ + + + + +CallableDownloadTask xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.update;
    +20  
    +21  import java.io.File;
    +22  import java.net.URL;
    +23  import java.util.concurrent.Callable;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +27  import org.owasp.dependencycheck.utils.Downloader;
    +28  
    +29  /**
    +30   * A callable object to download two files.
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class CallableDownloadTask implements Callable<CallableDownloadTask> {
    +35  
    +36      /**
    +37       * Simple constructor for the callable download task.
    +38       *
    +39       * @param nvdCveInfo the nvd cve info
    +40       * @param first the first file
    +41       * @param second the second file
    +42       */
    +43      public CallableDownloadTask(NvdCveInfo nvdCveInfo, File first, File second) {
    +44          this.nvdCveInfo = nvdCveInfo;
    +45          this.first = first;
    +46          this.second = second;
    +47      }
    +48      /**
    +49       * The NVD CVE Meta Data.
    +50       */
    +51      private NvdCveInfo nvdCveInfo;
    +52  
    +53      /**
    +54       * Get the value of nvdCveInfo.
    +55       *
    +56       * @return the value of nvdCveInfo
    +57       */
    +58      public NvdCveInfo getNvdCveInfo() {
    +59          return nvdCveInfo;
    +60      }
    +61  
    +62      /**
    +63       * Set the value of nvdCveInfo.
    +64       *
    +65       * @param nvdCveInfo new value of nvdCveInfo
    +66       */
    +67      public void setNvdCveInfo(NvdCveInfo nvdCveInfo) {
    +68          this.nvdCveInfo = nvdCveInfo;
    +69      }
    +70      /**
    +71       * a file.
    +72       */
    +73      private File first;
    +74  
    +75      /**
    +76       * Get the value of first.
    +77       *
    +78       * @return the value of first
    +79       */
    +80      public File getFirst() {
    +81          return first;
    +82      }
    +83  
    +84      /**
    +85       * Set the value of first.
    +86       *
    +87       * @param first new value of first
    +88       */
    +89      public void setFirst(File first) {
    +90          this.first = first;
    +91      }
    +92      /**
    +93       * a file.
    +94       */
    +95      private File second;
    +96  
    +97      /**
    +98       * Get the value of second.
    +99       *
    +100      * @return the value of second
    +101      */
    +102     public File getSecond() {
    +103         return second;
    +104     }
    +105 
    +106     /**
    +107      * Set the value of second.
    +108      *
    +109      * @param second new value of second
    +110      */
    +111     public void setSecond(File second) {
    +112         this.second = second;
    +113     }
    +114     /**
    +115      * A placeholder for an exception.
    +116      */
    +117     private Exception exception = null;
    +118 
    +119     /**
    +120      * Get the value of exception.
    +121      *
    +122      * @return the value of exception
    +123      */
    +124     public Exception getException() {
    +125         return exception;
    +126     }
    +127 
    +128     /**
    +129      * returns whether or not an exception occurred during download.
    +130      *
    +131      * @return whether or not an exception occurred during download
    +132      */
    +133     public boolean hasException() {
    +134         return exception != null;
    +135     }
    +136 
    +137     @Override
    +138     public CallableDownloadTask call() throws Exception {
    +139         try {
    +140             final URL url1 = new URL(nvdCveInfo.getUrl());
    +141             final URL url2 = new URL(nvdCveInfo.getOldSchemaVersionUrl());
    +142             String msg = String.format("Download Started for NVD CVE - %s", nvdCveInfo.getId());
    +143             Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
    +144             Downloader.fetchFile(url1, first);
    +145             Downloader.fetchFile(url2, second);
    +146             msg = String.format("Download Complete for NVD CVE - %s", nvdCveInfo.getId());
    +147             Logger.getLogger(CallableDownloadTask.class.getName()).log(Level.INFO, msg);
    +148         } catch (DownloadFailedException ex) {
    +149             this.exception = ex;
    +150         }
    +151         return this;
    +152     }
    +153 
    +154     /**
    +155      * Attempts to delete the files that were downloaded.
    +156      */
    +157     public void cleanup() {
    +158         boolean deleted = false;
    +159         try {
    +160             if (first != null && first.exists()) {
    +161                 deleted = first.delete();
    +162             }
    +163         } finally {
    +164             if (first != null && (first.exists() || !deleted)) {
    +165                 first.deleteOnExit();
    +166             }
    +167         }
    +168         try {
    +169             deleted = false;
    +170             if (second != null && second.exists()) {
    +171                 deleted = second.delete();
    +172             }
    +173         } finally {
    +174             if (second != null && (second.exists() || !deleted)) {
    +175                 second.deleteOnExit();
    +176             }
    +177         }
    +178     }
    +179 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html new file mode 100644 index 000000000..84b9294ab --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/PropertyType.html @@ -0,0 +1,200 @@ + + + + +PropertyType xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.regex.Pattern;
    +22  
    +23  /**
    +24   * A simple PropertyType used to represent a string value that could be used as
    +25   * a regular expression or could be case insensitive. The equals method has been
    +26   * over-ridden so that the object will correctly compare to strings.
    +27   *
    +28   * @author Jeremy Long (jeremy.long@owasp.org)
    +29   */
    +30  public class PropertyType {
    +31  
    +32      //<editor-fold defaultstate="collapsed" desc="properties">
    +33      /**
    +34       * The value.
    +35       */
    +36      private String value;
    +37  
    +38      /**
    +39       * Gets the value of the value property.
    +40       *
    +41       * @return the value of the value property
    +42       *
    +43       */
    +44      public String getValue() {
    +45          return value;
    +46      }
    +47  
    +48      /**
    +49       * Sets the value of the value property.
    +50       *
    +51       * @param value the value of the value property
    +52       */
    +53      public void setValue(String value) {
    +54          this.value = value;
    +55      }
    +56      /**
    +57       * Whether or not the expression is a regex.
    +58       */
    +59      private boolean regex = false;
    +60  
    +61      /**
    +62       * Returns whether or not the value is a regex.
    +63       *
    +64       * @return true if the value is a regex, otherwise false
    +65       *
    +66       */
    +67      public boolean isRegex() {
    +68          return regex;
    +69      }
    +70  
    +71      /**
    +72       * Sets whether the value property is a regex.
    +73       *
    +74       * @param value true if the value is a regex, otherwise false
    +75       *
    +76       */
    +77      public void setRegex(boolean value) {
    +78          this.regex = value;
    +79      }
    +80      /**
    +81       * Indicates case sensitivity.
    +82       */
    +83      private boolean caseSensitive = false;
    +84  
    +85      /**
    +86       * Gets the value of the caseSensitive property.
    +87       *
    +88       * @return true if the value is case sensitive
    +89       *
    +90       */
    +91      public boolean isCaseSensitive() {
    +92          return caseSensitive;
    +93      }
    +94  
    +95      /**
    +96       * Sets the value of the caseSensitive property.
    +97       *
    +98       * @param value whether the value is case sensitive
    +99       *
    +100      */
    +101     public void setCaseSensitive(boolean value) {
    +102         this.caseSensitive = value;
    +103     }
    +104     //</editor-fold>
    +105 
    +106     /**
    +107      * Uses the object's properties to determine if the supplied string matches
    +108      * the value of this property.
    +109      *
    +110      * @param text the String to validate
    +111      * @return whether the text supplied is matched by the value of the property
    +112      */
    +113     public boolean matches(String text) {
    +114         if (text == null) {
    +115             return false;
    +116         }
    +117         if (this.regex) {
    +118             Pattern rx;
    +119             if (this.caseSensitive) {
    +120                 rx = Pattern.compile(this.value);
    +121             } else {
    +122                 rx = Pattern.compile(this.value, Pattern.CASE_INSENSITIVE);
    +123             }
    +124             return rx.matcher(text).matches();
    +125         } else {
    +126             if (this.caseSensitive) {
    +127                 return value.equals(text);
    +128             } else {
    +129                 return value.equalsIgnoreCase(text);
    +130             }
    +131         }
    +132     }
    +133 
    +134     //<editor-fold defaultstate="collapsed" desc="standard implmentations of hashCode, equals, and toString">
    +135     /**
    +136      * Default implementation of hashCode.
    +137      *
    +138      * @return the hash code
    +139      */
    +140     @Override
    +141     public int hashCode() {
    +142         int hash = 3;
    +143         hash = 59 * hash + (this.value != null ? this.value.hashCode() : 0);
    +144         hash = 59 * hash + (this.regex ? 1 : 0);
    +145         hash = 59 * hash + (this.caseSensitive ? 1 : 0);
    +146         return hash;
    +147     }
    +148 
    +149     /**
    +150      * Default implementation of equals.
    +151      *
    +152      * @param obj the object to compare
    +153      * @return whether the objects are equivalent
    +154      */
    +155     @Override
    +156     public boolean equals(Object obj) {
    +157         if (obj == null) {
    +158             return false;
    +159         }
    +160         if (getClass() != obj.getClass()) {
    +161             return false;
    +162         }
    +163         final PropertyType other = (PropertyType) obj;
    +164         if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
    +165             return false;
    +166         }
    +167         if (this.regex != other.regex) {
    +168             return false;
    +169         }
    +170         if (this.caseSensitive != other.caseSensitive) {
    +171             return false;
    +172         }
    +173         return true;
    +174     }
    +175 
    +176     /**
    +177      * Default implementation of toString().
    +178      *
    +179      * @return the string representation of the object
    +180      */
    +181     @Override
    +182     public String toString() {
    +183         return "PropertyType{" + "value=" + value + ", regex=" + regex + ", caseSensitive=" + caseSensitive + '}';
    +184     }
    +185     //</editor-fold>
    +186 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html new file mode 100644 index 000000000..dec575632 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionErrorHandler.html @@ -0,0 +1,107 @@ + + + + +SuppressionErrorHandler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.logging.Level;
    +22  import java.util.logging.Logger;
    +23  import org.xml.sax.ErrorHandler;
    +24  import org.xml.sax.SAXException;
    +25  import org.xml.sax.SAXParseException;
    +26  
    +27  /**
    +28   * An XML parsing error handler.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SuppressionErrorHandler implements ErrorHandler {
    +33  
    +34      /**
    +35       * Builds a prettier exception message.
    +36       *
    +37       * @param ex the SAXParseException
    +38       * @return an easier to read exception message
    +39       */
    +40      private String getPrettyParseExceptionInfo(SAXParseException ex) {
    +41  
    +42          final StringBuffer sb = new StringBuffer();
    +43  
    +44          if (ex.getSystemId() != null) {
    +45              sb.append("systemId=").append(ex.getSystemId()).append(", ");
    +46          }
    +47          if (ex.getPublicId() != null) {
    +48              sb.append("publicId=").append(ex.getPublicId()).append(", ");
    +49          }
    +50          if (ex.getLineNumber() > 0) {
    +51              sb.append("Line=").append(ex.getLineNumber());
    +52          }
    +53          if (ex.getColumnNumber() > 0) {
    +54              sb.append(", Column=").append(ex.getColumnNumber());
    +55          }
    +56          sb.append(": ").append(ex.getMessage());
    +57  
    +58          return sb.toString();
    +59      }
    +60  
    +61      /**
    +62       * Logs warnings.
    +63       *
    +64       * @param ex the warning to log
    +65       * @throws SAXException is never thrown
    +66       */
    +67      @Override
    +68      public void warning(SAXParseException ex) throws SAXException {
    +69          Logger.getLogger(SuppressionErrorHandler.class.getName()).log(Level.FINE, null, ex);
    +70      }
    +71  
    +72      /**
    +73       * Handles errors.
    +74       *
    +75       * @param ex the error to handle
    +76       * @throws SAXException is always thrown
    +77       */
    +78      @Override
    +79      public void error(SAXParseException ex) throws SAXException {
    +80          throw new SAXException(getPrettyParseExceptionInfo(ex));
    +81      }
    +82  
    +83      /**
    +84       * Handles fatal exceptions.
    +85       *
    +86       * @param ex a fatal exception
    +87       * @throws SAXException is always
    +88       */
    +89      @Override
    +90      public void fatalError(SAXParseException ex) throws SAXException {
    +91          throw new SAXException(getPrettyParseExceptionInfo(ex));
    +92      }
    +93  }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html new file mode 100644 index 000000000..3809b17c0 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionHandler.html @@ -0,0 +1,188 @@ + + + + +SuppressionHandler xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.List;
    +23  import org.xml.sax.Attributes;
    +24  import org.xml.sax.SAXException;
    +25  import org.xml.sax.helpers.DefaultHandler;
    +26  
    +27  /**
    +28   * A handler to load suppression rules.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SuppressionHandler extends DefaultHandler {
    +33  
    +34      /**
    +35       * The suppress node, indicates the start of a new rule.
    +36       */
    +37      public static final String SUPPRESS = "suppress";
    +38      /**
    +39       * The file path element name.
    +40       */
    +41      public static final String FILE_PATH = "filePath";
    +42      /**
    +43       * The sha1 hash element name.
    +44       */
    +45      public static final String SHA1 = "sha1";
    +46      /**
    +47       * The CVE element name.
    +48       */
    +49      public static final String CVE = "cve";
    +50      /**
    +51       * The CPE element name.
    +52       */
    +53      public static final String CPE = "cpe";
    +54      /**
    +55       * The CWE element name.
    +56       */
    +57      public static final String CWE = "cwe";
    +58      /**
    +59       * The cvssBelow element name.
    +60       */
    +61      public static final String CVSS_BELOW = "cvssBelow";
    +62      /**
    +63       * A list of suppression rules.
    +64       */
    +65      private List<SuppressionRule> supressionRules = new ArrayList<SuppressionRule>();
    +66  
    +67      /**
    +68       * Get the value of supressionRules.
    +69       *
    +70       * @return the value of supressionRules
    +71       */
    +72      public List<SuppressionRule> getSupressionRules() {
    +73          return supressionRules;
    +74      }
    +75      /**
    +76       * The current rule being read.
    +77       */
    +78      private SuppressionRule rule;
    +79      /**
    +80       * The attributes of the node being read.
    +81       */
    +82      private Attributes currentAttributes;
    +83      /**
    +84       * The current node text being extracted from the element.
    +85       */
    +86      private StringBuffer currentText;
    +87  
    +88      /**
    +89       * Handles the start element event.
    +90       *
    +91       * @param uri the uri of the element being processed
    +92       * @param localName the local name of the element being processed
    +93       * @param qName the qName of the element being processed
    +94       * @param attributes the attributes of the element being processed
    +95       * @throws SAXException thrown if there is an exception processing
    +96       */
    +97      @Override
    +98      public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    +99          currentAttributes = null;
    +100         currentText = new StringBuffer();
    +101 
    +102         if (SUPPRESS.equals(qName)) {
    +103             rule = new SuppressionRule();
    +104         } else if (FILE_PATH.equals(qName)) {
    +105             currentAttributes = attributes;
    +106         }
    +107     }
    +108 
    +109     /**
    +110      * Handles the end element event.
    +111      *
    +112      * @param uri the uri of the element
    +113      * @param localName the local name of the element
    +114      * @param qName the qName of the element
    +115      * @throws SAXException thrown if there is an exception processing
    +116      */
    +117     @Override
    +118     public void endElement(String uri, String localName, String qName) throws SAXException {
    +119         if (SUPPRESS.equals(qName)) {
    +120             supressionRules.add(rule);
    +121             rule = null;
    +122         } else if (FILE_PATH.equals(qName)) {
    +123             final PropertyType pt = processPropertyType();
    +124             rule.setFilePath(pt);
    +125         } else if (SHA1.equals(qName)) {
    +126             rule.setSha1(currentText.toString());
    +127         } else if (CPE.equals(qName)) {
    +128             final PropertyType pt = processPropertyType();
    +129             rule.addCpe(pt);
    +130         } else if (CWE.equals(qName)) {
    +131             rule.addCwe(currentText.toString());
    +132         } else if (CVE.equals(qName)) {
    +133             rule.addCve(currentText.toString());
    +134         } else if (CVSS_BELOW.equals(qName)) {
    +135             final float cvss = Float.parseFloat(currentText.toString());
    +136             rule.addCvssBelow(cvss);
    +137         }
    +138     }
    +139 
    +140     /**
    +141      * Collects the body text of the node being processed.
    +142      *
    +143      * @param ch the char array of text
    +144      * @param start the start position to copy text from in the char array
    +145      * @param length the number of characters to copy from the char array
    +146      * @throws SAXException thrown if there is a parsing exception
    +147      */
    +148     @Override
    +149     public void characters(char[] ch, int start, int length) throws SAXException {
    +150         currentText.append(ch, start, length);
    +151     }
    +152 
    +153     /**
    +154      * Processes field members that have been collected during the characters
    +155      * and startElement method to construct a PropertyType object.
    +156      *
    +157      * @return a PropertyType object
    +158      */
    +159     private PropertyType processPropertyType() {
    +160         final PropertyType pt = new PropertyType();
    +161         pt.setValue(currentText.toString());
    +162         if (currentAttributes != null && currentAttributes.getLength() > 0) {
    +163             final String regex = currentAttributes.getValue("regex");
    +164             if (regex != null) {
    +165                 pt.setRegex(Boolean.parseBoolean(regex));
    +166             }
    +167             final String caseSensitive = currentAttributes.getValue("caseSensitive");
    +168             if (regex != null) {
    +169                 pt.setCaseSensitive(Boolean.parseBoolean(caseSensitive));
    +170             }
    +171         }
    +172         return pt;
    +173     }
    +174 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html new file mode 100644 index 000000000..15f1b8601 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParseException.html @@ -0,0 +1,83 @@ + + + + +SuppressionParseException xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.IOException;
    +22  
    +23  /**
    +24   * An exception used when parsing a suppression rule file fails.
    +25   *
    +26   * @author Jeremy Long (jeremy.long@owasp.org)
    +27   */
    +28  public class SuppressionParseException extends IOException {
    +29  
    +30      /**
    +31       * The serial version UID.
    +32       */
    +33      private static final long serialVersionUID = 1L;
    +34  
    +35      /**
    +36       * Creates a new SuppressionParseException.
    +37       */
    +38      public SuppressionParseException() {
    +39          super();
    +40      }
    +41  
    +42      /**
    +43       * Creates a new SuppressionParseException.
    +44       *
    +45       * @param msg a message for the exception.
    +46       */
    +47      public SuppressionParseException(String msg) {
    +48          super(msg);
    +49      }
    +50  
    +51      /**
    +52       * Creates a new SuppressionParseException.
    +53       *
    +54       * @param ex the cause of the download failure.
    +55       */
    +56      public SuppressionParseException(Throwable ex) {
    +57          super(ex);
    +58      }
    +59  
    +60      /**
    +61       * Creates a new SuppressionParseException.
    +62       *
    +63       * @param msg a message for the exception.
    +64       * @param ex the cause of the download failure.
    +65       */
    +66      public SuppressionParseException(String msg, Throwable ex) {
    +67          super(msg, ex);
    +68      }
    +69  }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html new file mode 100644 index 000000000..b2688825a --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionParser.html @@ -0,0 +1,121 @@ + + + + +SuppressionParser xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.io.File;
    +22  import java.io.FileInputStream;
    +23  import java.io.FileNotFoundException;
    +24  import java.io.IOException;
    +25  import java.io.InputStream;
    +26  import java.io.InputStreamReader;
    +27  import java.io.Reader;
    +28  import java.util.List;
    +29  import java.util.logging.Level;
    +30  import java.util.logging.Logger;
    +31  import javax.xml.parsers.ParserConfigurationException;
    +32  import javax.xml.parsers.SAXParser;
    +33  import javax.xml.parsers.SAXParserFactory;
    +34  import org.xml.sax.InputSource;
    +35  import org.xml.sax.SAXException;
    +36  import org.xml.sax.XMLReader;
    +37  
    +38  /**
    +39   * A simple validating parser for XML Suppression Rules.
    +40   *
    +41   * @author Jeremy Long (jeremy.long@owasp.org)
    +42   */
    +43  public class SuppressionParser {
    +44  
    +45      /**
    +46       * JAXP Schema Language. Source:
    +47       * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
    +48       */
    +49      public static final String JAXP_SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage";
    +50      /**
    +51       * W3C XML Schema. Source:
    +52       * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
    +53       */
    +54      public static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema";
    +55      /**
    +56       * JAXP Schema Source. Source:
    +57       * http://docs.oracle.com/javase/tutorial/jaxp/sax/validation.html
    +58       */
    +59      public static final String JAXP_SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource";
    +60  
    +61      /**
    +62       * Parses the given xml file and returns a list of the suppression rules
    +63       * contained.
    +64       *
    +65       * @param file an xml file containing suppression rules
    +66       * @return a list of suppression rules
    +67       * @throws SuppressionParseException thrown if the xml file cannot be parsed
    +68       */
    +69      public List<SuppressionRule> parseSuppressionRules(File file) throws SuppressionParseException {
    +70          try {
    +71              final InputStream schemaStream = this.getClass().getClassLoader().getResourceAsStream("schema/suppression.xsd");
    +72              final SuppressionHandler handler = new SuppressionHandler();
    +73  
    +74              final SAXParserFactory factory = SAXParserFactory.newInstance();
    +75              factory.setNamespaceAware(true);
    +76              factory.setValidating(true);
    +77              final SAXParser saxParser = factory.newSAXParser();
    +78              saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_LANGUAGE, SuppressionParser.W3C_XML_SCHEMA);
    +79              saxParser.setProperty(SuppressionParser.JAXP_SCHEMA_SOURCE, new InputSource(schemaStream));
    +80              final XMLReader xmlReader = saxParser.getXMLReader();
    +81              xmlReader.setErrorHandler(new SuppressionErrorHandler());
    +82              xmlReader.setContentHandler(handler);
    +83  
    +84              final InputStream inputStream = new FileInputStream(file);
    +85              final Reader reader = new InputStreamReader(inputStream, "UTF-8");
    +86              final InputSource in = new InputSource(reader);
    +87              //in.setEncoding("UTF-8");
    +88  
    +89              xmlReader.parse(in);
    +90  
    +91  
    +92              return handler.getSupressionRules();
    +93          } catch (ParserConfigurationException ex) {
    +94              Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +95              throw new SuppressionParseException(ex);
    +96          } catch (SAXException ex) {
    +97              Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +98              throw new SuppressionParseException(ex);
    +99          } catch (FileNotFoundException ex) {
    +100             Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +101             throw new SuppressionParseException(ex);
    +102         } catch (IOException ex) {
    +103             Logger.getLogger(SuppressionParser.class.getName()).log(Level.FINE, null, ex);
    +104             throw new SuppressionParseException(ex);
    +105         }
    +106     }
    +107 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html new file mode 100644 index 000000000..b62924ea3 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/SuppressionRule.html @@ -0,0 +1,379 @@ + + + + +SuppressionRule xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-core.
    +3    *
    +4    * Dependency-check-core is free software: you can redistribute it and/or modify it
    +5    * under the terms of the GNU General Public License as published by the Free
    +6    * Software Foundation, either version 3 of the License, or (at your option) any
    +7    * later version.
    +8    *
    +9    * Dependency-check-core is distributed in the hope that it will be useful, but
    +10   * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    +11   * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
    +12   * details.
    +13   *
    +14   * You should have received a copy of the GNU General Public License along with
    +15   * dependency-check-core. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.suppression;
    +20  
    +21  import java.util.ArrayList;
    +22  import java.util.Iterator;
    +23  import java.util.List;
    +24  import org.owasp.dependencycheck.dependency.Dependency;
    +25  import org.owasp.dependencycheck.dependency.Identifier;
    +26  import org.owasp.dependencycheck.dependency.Vulnerability;
    +27  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class SuppressionRule {
    +33  
    +34      /**
    +35       * The file path for the suppression.
    +36       */
    +37      private PropertyType filePath;
    +38  
    +39      /**
    +40       * Get the value of filePath.
    +41       *
    +42       * @return the value of filePath
    +43       */
    +44      public PropertyType getFilePath() {
    +45          return filePath;
    +46      }
    +47  
    +48      /**
    +49       * Set the value of filePath.
    +50       *
    +51       * @param filePath new value of filePath
    +52       */
    +53      public void setFilePath(PropertyType filePath) {
    +54          this.filePath = filePath;
    +55      }
    +56      /**
    +57       * The sha1 hash.
    +58       */
    +59      private String sha1;
    +60  
    +61      /**
    +62       * Get the value of sha1.
    +63       *
    +64       * @return the value of sha1
    +65       */
    +66      public String getSha1() {
    +67          return sha1;
    +68      }
    +69  
    +70      /**
    +71       * Set the value of sha1.
    +72       *
    +73       * @param sha1 new value of sha1
    +74       */
    +75      public void setSha1(String sha1) {
    +76          this.sha1 = sha1;
    +77      }
    +78      /**
    +79       * A list of CPEs to suppression
    +80       */
    +81      private List<PropertyType> cpe = new ArrayList<PropertyType>();
    +82  
    +83      /**
    +84       * Get the value of cpe.
    +85       *
    +86       * @return the value of cpe
    +87       */
    +88      public List<PropertyType> getCpe() {
    +89          return cpe;
    +90      }
    +91  
    +92      /**
    +93       * Set the value of cpe.
    +94       *
    +95       * @param cpe new value of cpe
    +96       */
    +97      public void setCpe(List<PropertyType> cpe) {
    +98          this.cpe = cpe;
    +99      }
    +100 
    +101     /**
    +102      * Adds the cpe to the cpe list.
    +103      *
    +104      * @param cpe the cpe to add
    +105      */
    +106     public void addCpe(PropertyType cpe) {
    +107         this.cpe.add(cpe);
    +108     }
    +109 
    +110     /**
    +111      * Returns whether or not this suppression rule as CPE entries.
    +112      *
    +113      * @return whether or not this suppression rule as CPE entries
    +114      */
    +115     public boolean hasCpe() {
    +116         return cpe.size() > 0;
    +117     }
    +118     /**
    +119      * The list of cvssBelow scores.
    +120      */
    +121     private List<Float> cvssBelow = new ArrayList<Float>();
    +122 
    +123     /**
    +124      * Get the value of cvssBelow.
    +125      *
    +126      * @return the value of cvssBelow
    +127      */
    +128     public List<Float> getCvssBelow() {
    +129         return cvssBelow;
    +130     }
    +131 
    +132     /**
    +133      * Set the value of cvssBelow.
    +134      *
    +135      * @param cvssBelow new value of cvssBelow
    +136      */
    +137     public void setCvssBelow(List<Float> cvssBelow) {
    +138         this.cvssBelow = cvssBelow;
    +139     }
    +140 
    +141     /**
    +142      * Adds the cvss to the cvssBelow list.
    +143      *
    +144      * @param cvss the cvss to add
    +145      */
    +146     public void addCvssBelow(Float cvss) {
    +147         this.cvssBelow.add(cvss);
    +148     }
    +149 
    +150     /**
    +151      * Returns whether or not this suppression rule has cvss suppressions.
    +152      *
    +153      * @return whether or not this suppression rule has cvss suppressions
    +154      */
    +155     public boolean hasCvssBelow() {
    +156         return cvssBelow.size() > 0;
    +157     }
    +158     /**
    +159      * The list of cwe entries to suppress.
    +160      */
    +161     private List<String> cwe = new ArrayList<String>();
    +162 
    +163     /**
    +164      * Get the value of cwe.
    +165      *
    +166      * @return the value of cwe
    +167      */
    +168     public List<String> getCwe() {
    +169         return cwe;
    +170     }
    +171 
    +172     /**
    +173      * Set the value of cwe.
    +174      *
    +175      * @param cwe new value of cwe
    +176      */
    +177     public void setCwe(List<String> cwe) {
    +178         this.cwe = cwe;
    +179     }
    +180 
    +181     /**
    +182      * Adds the cwe to the cwe list.
    +183      *
    +184      * @param cwe the cwe to add
    +185      */
    +186     public void addCwe(String cwe) {
    +187         this.cwe.add(cwe);
    +188     }
    +189 
    +190     /**
    +191      * Returns whether this suppression rule has CWE entries.
    +192      *
    +193      * @return whether this suppression rule has CWE entries
    +194      */
    +195     public boolean hasCwe() {
    +196         return cwe.size() > 0;
    +197     }
    +198     /**
    +199      * The list of cve entries to suppress.
    +200      */
    +201     private List<String> cve = new ArrayList<String>();
    +202 
    +203     /**
    +204      * Get the value of cve.
    +205      *
    +206      * @return the value of cve
    +207      */
    +208     public List<String> getCve() {
    +209         return cve;
    +210     }
    +211 
    +212     /**
    +213      * Set the value of cve.
    +214      *
    +215      * @param cve new value of cve
    +216      */
    +217     public void setCve(List<String> cve) {
    +218         this.cve = cve;
    +219     }
    +220 
    +221     /**
    +222      * Adds the cve to the cve list.
    +223      *
    +224      * @param cve the cve to add
    +225      */
    +226     public void addCve(String cve) {
    +227         this.cve.add(cve);
    +228     }
    +229 
    +230     /**
    +231      * Returns whether this suppression rule has CVE entries.
    +232      *
    +233      * @return whether this suppression rule has CVE entries
    +234      */
    +235     public boolean hasCve() {
    +236         return cve.size() > 0;
    +237     }
    +238 
    +239     /**
    +240      * Processes a given dependency to determine if any CPE, CVE, CWE, or CVSS
    +241      * scores should be suppressed. If any should be, they are removed from the
    +242      * dependency.
    +243      *
    +244      * @param dependency a project dependency to analyze
    +245      */
    +246     public void process(Dependency dependency) {
    +247         if (filePath != null && !filePath.matches(dependency.getFilePath())) {
    +248             return;
    +249         }
    +250         if (sha1 != null && !sha1.equalsIgnoreCase(dependency.getSha1sum())) {
    +251             return;
    +252         }
    +253         if (this.hasCpe()) {
    +254             final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
    +255             while (itr.hasNext()) {
    +256                 final Identifier i = itr.next();
    +257                 for (PropertyType c : this.cpe) {
    +258                     if (cpeMatches(c, i)) {
    +259                         itr.remove();
    +260                         break;
    +261                     }
    +262                 }
    +263             }
    +264         }
    +265         if (hasCve() || hasCwe() || hasCvssBelow()) {
    +266             final Iterator<Vulnerability> itr = dependency.getVulnerabilities().iterator();
    +267             boolean remove = false;
    +268             while (!remove && itr.hasNext()) {
    +269                 final Vulnerability v = itr.next();
    +270                 for (String entry : this.cve) {
    +271                     if (entry.equalsIgnoreCase(v.getName())) {
    +272                         remove = true;
    +273                         break;
    +274                     }
    +275                 }
    +276                 if (!remove) {
    +277                     for (String entry : this.cwe) {
    +278                         if (v.getCwe() != null) {
    +279                             final String toMatch = String.format("CWE-%s ", entry);
    +280                             final String toTest = v.getCwe().substring(0, toMatch.length()).toUpperCase();
    +281                             if (toTest.equals(toMatch)) {
    +282                                 remove = true;
    +283                                 break;
    +284                             }
    +285                         }
    +286                     }
    +287                 }
    +288                 if (!remove) {
    +289                     for (float cvss : this.cvssBelow) {
    +290                         if (v.getCvssScore() < cvss) {
    +291                             remove = true;
    +292                             break;
    +293                         }
    +294                     }
    +295                 }
    +296                 if (remove) {
    +297                     itr.remove();
    +298                 }
    +299             }
    +300         }
    +301     }
    +302 
    +303     /**
    +304      * Identifies if the cpe specified by the cpe suppression rule does not
    +305      * specify a version.
    +306      *
    +307      * @param c a suppression rule identifier
    +308      * @return true if the property type does not specify a version; otherwise
    +309      * false
    +310      */
    +311     boolean cpeHasNoVersion(PropertyType c) {
    +312         if (c.isRegex()) {
    +313             return false;
    +314         } // cpe:/a:jboss:jboss:1.0.0:
    +315         if (countCharacter(c.getValue(), ':') == 3) {
    +316             return true;
    +317         }
    +318         return false;
    +319     }
    +320 
    +321     /**
    +322      * Counts the number of occurrences of the character found within the
    +323      * string.
    +324      *
    +325      * @param str the string to check
    +326      * @param c the character to count
    +327      * @return the number of times the character is found in the string
    +328      */
    +329     int countCharacter(String str, char c) {
    +330         int count = 0;
    +331         int pos = str.indexOf(c) + 1;
    +332         while (pos > 0) {
    +333             count += 1;
    +334             pos = str.indexOf(c, pos) + 1;
    +335         }
    +336         return count;
    +337     }
    +338 
    +339     /**
    +340      * Determines if the cpeEntry specified as a PropertyType matches the given
    +341      * Identifier.
    +342      *
    +343      * @param cpeEntry a suppression rule entry
    +344      * @param identifier a CPE identifier to check
    +345      * @return true if the entry matches; otherwise false
    +346      */
    +347     boolean cpeMatches(PropertyType cpeEntry, Identifier identifier) {
    +348         if (cpeEntry.matches(identifier.getValue())) {
    +349             return true;
    +350         } else if (cpeHasNoVersion(cpeEntry)) {
    +351             if (cpeEntry.isCaseSensitive()) {
    +352                 if (identifier.getValue().startsWith(cpeEntry.getValue())) {
    +353                     return true;
    +354                 }
    +355             } else {
    +356                 final String id = identifier.getValue().toLowerCase();
    +357                 final String check = cpeEntry.getValue().toLowerCase();
    +358                 if (id.startsWith(check)) {
    +359                     return true;
    +360                 }
    +361             }
    +362         }
    +363         return false;
    +364     }
    +365 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html new file mode 100644 index 000000000..82691d909 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-frame.html @@ -0,0 +1,39 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + + +

    + org.owasp.dependencycheck.suppression +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html new file mode 100644 index 000000000..9e55d509b --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/suppression/package-summary.html @@ -0,0 +1,92 @@ + + + + + + Dependency-Check Core 1.0.6 Reference Package org.owasp.dependencycheck.suppression + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.suppression

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + PropertyType +
    + SuppressionErrorHandler +
    + SuppressionHandler +
    + SuppressionParseException +
    + SuppressionParser +
    + SuppressionRule +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file